Commit Graph

45 Commits

Author SHA1 Message Date
f35f1ef701 Repurpose module map and rename old to ErrorModules 2025-07-22 17:34:01 +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
1ba1ae3213 Try add some display for LLIR 2025-07-21 12:07:42 +03:00
a62f9db422 Get static arrays actually working alone 2025-07-20 19:23:42 +03:00
575abe8172 Make passes actually return errors well 2025-07-20 15:25:21 +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
6dfd98eba3 Use true source for error formatting 2025-07-17 19:34:54 +03:00
9d1b18f083 Add FullToken array to error raporting 2025-07-17 17:44:18 +03:00
ce7c4bfb52 Improve error raporting futher significantly 2025-07-17 17:15:57 +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
7075b6f73f Update order of prints 2025-07-15 23:18:01 +03:00
1acaa29a12 Fix module scopes being linked 2025-07-15 20:09:33 +03:00
bcad9b57fe Make the compiler produce .o/.asm/.ll according to input file name 2025-07-15 00:25:17 +03:00
5b5ec48b8d Put all debug prints behind debug-assertions 2025-07-14 23:43:03 +03:00
0e5f12e0e2 Update README 2025-07-14 22:57:33 +03:00
587aa1d7f2 Fix warnings 2025-07-14 22:56:31 +03:00
1e759d49c7 Fix issue in type-inference pass about function params not registering 2025-07-14 22:55:43 +03:00
5acd1624fd Move test to inside-executable, and add tests that test it compiles 2025-07-14 22:52:30 +03:00
fa4df50a04 Fix linking so that non-imported functions don't bother main-module 2025-07-14 22:22:55 +03:00
2b47c4efc7 Make linking modules together work, fix printing modules 2025-07-14 21:10:13 +03:00
848347e4a8 Add importer pass, make importer import module properly 2025-07-14 20:35:58 +03:00
a71843dfe9 Implement import-pass 2025-07-14 20:13:30 +03:00
1173e17fe6 Update TODO-list 2025-07-14 17:57:34 +03:00
b64cdc4c71 Fix if-statement block return type evaluation 2025-07-14 17:17:48 +03:00
c2a087785e Update README and lib docs 2025-07-14 02:28:01 +03:00
515c031f19 Finish type checking and inferrence for arrays 2025-07-13 20:15:03 +03:00
92736e392e Refactor Type Hints -> Type Refs 2025-07-13 15:58:19 +03:00
f3f47831e9 Split type inference to it's very own pass 2025-07-13 15:55:14 +03:00
d757ac4eb3 Fiddle around with if-expression codegen 2025-07-09 21:12:39 +03:00
c50474cc8e Update README.md 2025-07-09 20:27:12 +03:00
50f5f3cc70 Update lib.rs docs 2025-07-09 20:16:52 +03:00
f7fa69fbe2 Add docs to lib.rs 2025-07-09 20:13:16 +03:00
9710d17e00 Add a bunch of documentation 2025-07-09 20:01:24 +03:00
d5daaa0e87 Improve Debug and Display implementations 2025-07-09 18:47:40 +03:00
14283afe59 Separate pass-common code to pass.rs 2025-07-08 21:44:04 +03:00
9b9fcd4ec4 Make AST contain only abstract Numbers 2025-07-08 00:48:28 +03:00
22737f022e Fix variable type let inference 2025-07-07 23:40:35 +03:00
a366d22470 Add typechecking 2025-07-07 23:03:21 +03:00
35efa78a56 Connect all the wires again 2025-07-06 20:49:13 +03:00
61ba00ea58 Transform AST into MIR successfully, completing the chain 2025-07-05 01:34:57 +03:00
8a32e66ba8 Refactor a bunch of stuff, produce compiling MIR 2025-07-04 21:30:40 +03:00
6d3d0fd03e Move reid to subproject 2025-06-24 17:17:15 +03:00