Commit Graph

76 Commits

Author SHA1 Message Date
52614a7f01 Codegen while-loops 2026-04-28 16:19:17 +03:00
4cf5c9791a Parse while-statements 2026-04-28 16:13:38 +03:00
941e19d4dd Codegen for-loops 2026-04-28 01:45:29 +03:00
52e43ea1e2 Move ; parsing upper down the line 2026-04-28 01:34:52 +03:00
8d826326fa Add for-loop AST 2026-04-28 01:15:57 +03:00
43df7efd6f Add decrement and negation unops 2026-04-28 00:38:04 +03:00
dd632b6bcc Codegen unary expressions 2026-04-28 00:16:16 +03:00
00689d3637 Parse unops 2026-04-28 00:12:57 +03:00
1103efe6fe Start adding unary operators 2026-04-28 00:09:50 +03:00
d3d487159a Use static allocator 2026-04-27 23:11:35 +03:00
8530e1162d Pass allocator in codegen 2026-04-27 23:07:54 +03:00
bf87aa8c08 Add static allocator 2026-04-27 23:04:12 +03:00
226118bcbb Fix some indexing problems 2026-04-16 23:47:42 +03:00
668e18e8ba Fix somelist_pointer 2026-04-16 21:55:43 +03:00
8e6980715e Add const-ability to types 2026-04-16 19:43:36 +03:00
f9208a525d Fix how pointer indexing works 2026-04-16 19:23:41 +03:00
238577e9ca Fix how arrays are managed 2026-04-16 18:32:31 +03:00
a12cf52c48 Add FieldAccessExpression 2026-04-15 20:01:20 +03:00
9ed753a238 Implement struct initialization 2026-04-15 19:40:00 +03:00
8e7facc593 Format ref-structs correctly 2026-04-15 19:07:49 +03:00
94d1c15897 Parse struct type 2026-04-15 19:02:01 +03:00
29fd757517 Add Struct types 2026-04-15 18:40:26 +03:00
bca18b4f1b Add Struct and StructRef-types 2026-04-15 18:21:22 +03:00
aa698c7ed6 Fix string type lvalue return type 2026-04-15 15:59:12 +03:00
eacbac9205 Implement ListInitializer 2026-04-15 15:57:54 +03:00
5175878407 Fix wonky casting rules 2026-04-14 20:02:06 +03:00
de881d73d2 Fix bug with string literals 2026-04-14 19:26:21 +03:00
e76540182f Possibly fix passing of arrays 2026-04-14 19:18:10 +03:00
6efcb23d6b Add get_codegen_type 2026-04-14 18:48:17 +03:00
45df4fdf5f Fix array to ptr cast 2026-04-14 18:26:33 +03:00
d3f0a730fd Make strings be char[n] 2026-04-14 17:01:08 +03:00
26779414a7 Implement arrays 2026-04-14 15:55:13 +03:00
0400aa1d99 Make empty arrays into just pointers 2026-04-14 15:20:14 +03:00
3370e76c48 Add ArrayType 2026-04-14 14:57:25 +03:00
d3a4964f10 Add ret void to every function, to make sure one exists 2026-04-14 00:26:37 +03:00
01d4999e14 Store params in stack properly as well 2026-04-14 00:25:54 +03:00
acd1e5d39b Fix bug in deref 2026-04-14 00:09:36 +03:00
78c5ab4c25 Add ref and deref 2026-04-14 00:01:33 +03:00
48a3eb0e85 Improve binop result calculation 2026-04-13 23:50:07 +03:00
1814ce2cc9 Fix bug with loading values, parse casts 2026-04-13 21:21:46 +03:00
fa01b22b81 Add compilation of casts 2026-04-13 21:08:57 +03:00
e6a16ab667 Fix bug in codegen 2026-04-13 20:44:29 +03:00
810dd3595e Allow implicitly converting IntLiteralExpr to other int types 2026-04-13 20:15:48 +03:00
8314fe2b61 Use binops for codegen as well 2026-04-13 18:24:07 +03:00
44c9e31556 Make types in the AST be shared_ptr 2026-04-13 00:40:05 +03:00
5706a81098 Separate errors to own header-file 2026-04-13 00:24:18 +03:00
866d78e6d1 Compile vararg 2026-04-11 23:18:13 +03:00
3f61e3749e Allow anonymous parameters 2026-04-11 22:11:52 +03:00
bd76e8676f Add literal strings 2026-04-11 22:03:38 +03:00
6855360a97 Add void and char types 2026-04-11 21:40:59 +03:00