Commit Graph

57 Commits

Author SHA1 Message Date
bb9f69ee53 Add autocomplete for imports 2025-08-02 23:03:11 +03:00
8595da0c30 Make LSP use a more general analysis structure 2025-08-02 21:11:33 +03:00
b71c253942 Add types to hovers in LSP, fix around and add metas 2025-07-29 21:39:14 +03:00
67a5fcd002 Basically revert everything, create macro-pass 2025-07-28 22:11:46 +03:00
80bdf4eba8 Merge branch 'main' into macros 2025-07-28 22:03:06 +03:00
bd8994bb37 Fix linking associated functions, fix other examples 2025-07-28 22:02:49 +03:00
2e153922f1 Start adding macros 2025-07-28 21:54:51 +03:00
beaba4e7de Mangle function names, except for user defined externs 2025-07-28 20:25:36 +03:00
b643c13582 Use metadata instead of names for allocator identification 2025-07-28 19:22:03 +03:00
1c7a600b96 Fix pass for inner expressions 2025-07-28 02:02:30 +03:00
dc360ef196 Implement importing of associated functions with types 2025-07-27 23:28:24 +03:00
5104555890 Fix type updating for associated function calls 2025-07-27 23:12:40 +03:00
676554b6a0 Improve deref parsing 2025-07-27 22:24:38 +03:00
46668b7099 Fix a bunch of warnings 2025-07-27 18:11:18 +03:00
0ba1fa90e7 Update readme, clean up a little 2025-07-26 14:04:24 +03:00
0196fb53ed Import binops while importing types as well 2025-07-26 13:18:55 +03:00
58cc633f98 Update typerefs in statements and expressions as well for extern types 2025-07-26 12:56:42 +03:00
59e4c38770 Fix type references for function return types .. for now 2025-07-26 01:34:37 +03:00
269de327b8 Allow importing types 2025-07-26 00:57:39 +03:00
954f3438d3 Codegen intrinsics 2025-07-24 11:56:44 +03:00
ef4964ed86 Add parsing for for/while loops 2025-07-23 20:14:35 +03:00
fe4e41c435 Fix seeing same type multiple times when importing 2025-07-23 17:21:33 +03:00
8b79959288 Fix typedefinition in scope 2025-07-23 15:34:01 +03:00
97f5eebf22 Fix some warnings 2025-07-22 23:25:49 +03:00
3d73c52cb4 Fix casting within setters 2025-07-22 19:31:35 +03:00
78a1e9f06b Fix typedef issue with modules 2025-07-22 18:03:15 +03:00
f35f1ef701 Repurpose module map and rename old to ErrorModules 2025-07-22 17:34:01 +03:00
e9bca63f0d Add module id to CustomType, String to std 2025-07-22 16:16:46 +03:00
104205ee5d Type-infer and check typecasting 2025-07-22 13:24:53 +03:00
3d3a9a34f9 Fix binary operators for floats, make library functions extern 2025-07-21 17:32:20 +03:00
a1507e14ca Add flag to ignore no-main-error 2025-07-21 16:47:51 +03:00
e370e17ffd Only include STD if it is imported 2025-07-21 15:47:02 +03:00
b23577aa18 Check for trivial expressions that they are >0 when unsigned 2025-07-21 15:44:47 +03:00
d65b0153a1 Implement unary operators as syntax sugar 2025-07-21 15:12:49 +03:00
ed9c8638d5 Get pointers working 2025-07-21 14:43:24 +03:00
74ce296a05 Refactor a bit 2025-07-21 10:29:26 +03:00
2e829bc8a9 Fix linker, add e2e tests 2025-07-21 09:59:35 +03:00
550fec2827 Fix typeinference and checking for borrows/derefs 2025-07-20 22:33:00 +03:00
848f4118bf Fix params not being pointers 2025-07-20 20:13:47 +03:00
a62f9db422 Get static arrays actually working alone 2025-07-20 19:23:42 +03:00
b185e2ecc6 Import typedefs from other modules as well 2025-07-20 15:55:47 +03:00
575abe8172 Make passes actually return errors well 2025-07-20 15:25:21 +03:00
a511331be2 Fix type-inferrer on arrays 2025-07-19 19:23:24 +03:00
92f12e90eb Make debug information work 2025-07-18 19:38:01 +03:00
1967cadbc0 Get debug info working very preliminarily 2025-07-18 17:26:11 +03:00
0c6d9885ec Add debug information compilation for subprograms and their parameters 2025-07-18 15:44:12 +03:00
292688a840 Fix some warnings 2025-07-17 20:26:01 +03:00
9d1b18f083 Add FullToken array to error raporting 2025-07-17 17:44:18 +03:00
f0e47a5d57 Attempt to significantly improve error-raporting 2025-07-17 16:47:10 +03:00
64e34ecf13 Add module_id for modules and metadata 2025-07-17 14:56:41 +03:00