Commit Graph

21 Commits

Author SHA1 Message Date
b19a32cd8a Make early returns work even without an explicit return 2025-07-09 22:20:08 +03:00
1aa9b3e76c Add RetVoid just in case 2025-07-09 22:01:32 +03:00
94c4ec0613 Add a block garbage-collector that will delete an unused block at end 2025-07-09 21:57:48 +03:00
d757ac4eb3 Fiddle around with if-expression codegen 2025-07-09 21:12:39 +03:00
9710d17e00 Add a bunch of documentation 2025-07-09 20:01:24 +03:00
257496aae2 Rename LogicOperator to CmpOperator 2025-07-09 19:24:07 +03:00
197f0b22f3 Add boolean literals 2025-07-09 19:17:03 +03:00
b84672ef8c Add Mult and And -operators to the whole chain 2025-07-09 19:08:21 +03:00
8afb2c2572 Fix bug in Logic Operator conversion 2025-07-09 19:00:03 +03:00
49df6c9ed9 Add a bunch of new integer comparison operators 2025-07-09 16:05:08 +03:00
46560d8541 Add all types u8 -> i128 and fix signedness in icmp 2025-07-08 23:47:44 +03:00
14283afe59 Separate pass-common code to pass.rs 2025-07-08 21:44:04 +03:00
2e99ec3a80 Fix warnings 2025-07-08 18:48:18 +03:00
9b9fcd4ec4 Make AST contain only abstract Numbers 2025-07-08 00:48:28 +03:00
9b68ecb614 Add some security checks, typecheck for condition to be a boolean 2025-07-07 23:25:07 +03:00
12dc457b99 Add mandatory return type for MIR Function 2025-07-07 18:32:37 +03:00
0932af2e3b Simplify transformation from AST to MIR 2025-07-06 23:01:28 +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
a66fc61c07 Fiddle with names a bit 2025-07-04 21:54:07 +03:00
8a32e66ba8 Refactor a bunch of stuff, produce compiling MIR 2025-07-04 21:30:40 +03:00