Commit Graph

165 Commits

Author SHA1 Message Date
2d004cc5d8 Make for-loop parts optional 2026-04-28 01:19:11 +03:00
8d826326fa Add for-loop AST 2026-04-28 01:15:57 +03:00
ba21718f71 Format unary plus correctly 2026-04-28 01:06:53 +03:00
4a0257c771 Add unary plus 2026-04-28 01:05:02 +03:00
5b776a1d66 Add negation unary 2026-04-28 01:03:25 +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
c3e12b087a Add escaped backslash 2026-04-16 20:45:38 +03:00
c4837ca9b0 Improve escaped character parsing 2026-04-16 20:45:11 +03:00
63584525f2 Add escaping of characters 2026-04-16 20:25:00 +03:00
28be145a70 Remove const array formatting 2026-04-16 20:01:30 +03:00
53872373bf Check for const in assignment binop 2026-04-16 19:47:56 +03:00
efb4ce85ac Format const in type 2026-04-16 19:46:47 +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
6dad36e34a Add l-value checking in typechecker 2026-04-16 19:08:34 +03:00
d79151380f Prevent initialization of arrays except with list-inits and strings 2026-04-16 18:51:45 +03:00
238577e9ca Fix how arrays are managed 2026-04-16 18:32:31 +03:00
f0607a2310 Allow forward-declaration of structs 2026-04-16 01:39:07 +03:00
21d17bb02d Parse field accesses 2026-04-15 20:04:07 +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
4b4d3ce14b Implement types_equal for Structs 2026-04-15 19:34:09 +03:00
b664ca8f9d Typecheck list initializer for structs 2026-04-15 19:28:09 +03:00
1265040f29 Fix parsing struct types 2026-04-15 19:09:38 +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
f283149090 Parse tl-typedef 2026-04-15 18:45:29 +03:00
29fd757517 Add Struct types 2026-04-15 18:40:26 +03:00
66653553a5 Update test.c 2026-04-15 18:22:23 +03:00
bca18b4f1b Add Struct and StructRef-types 2026-04-15 18:21:22 +03:00
5fc58ea1c5 Add parsing::Scope 2026-04-15 17:45:14 +03:00
55388bc6e3 Parse listinitializer 2026-04-15 16:07:07 +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
b97aa3f212 Fix parsing of array type parameters 2026-04-14 18:55:15 +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