Commit Graph

37 Commits

Author SHA1 Message Date
1d1e574136 Implement type inference for structs 2025-07-15 23:16:37 +03:00
b012a46e91 Process Struct ASTs into MIR 2025-07-15 22:03:48 +03:00
f139a5ad6c Add MIR support for struct types 2025-07-15 21:48:58 +03:00
d9a1e8456d Add struct indexing parsing 2025-07-15 21:28:02 +03:00
c83d53ae53 Add struct type and expression parsing 2025-07-15 21:19:37 +03:00
5fca72a3f9 Add lexing support for structs 2025-07-15 20:37:41 +03:00
6788ef1690 Use AvailableExternally-linkage for externs for imports 2025-07-15 20:01:46 +03:00
fa4df50a04 Fix linking so that non-imported functions don't bother main-module 2025-07-14 22:22:55 +03:00
a71843dfe9 Implement import-pass 2025-07-14 20:13:30 +03:00
464156b2dc Fix imports in MIR 2025-07-14 19:20:38 +03:00
735c4370aa Add pub keyword 2025-07-14 18:47:02 +03:00
376baa2c9a Remove length param from string, use string pointers instead 2025-07-14 18:22:05 +03:00
83475b144c Codegen strings 2025-07-14 17:54:56 +03:00
b9dfa9b1ce Add parsing of string literals 2025-07-14 17:39:48 +03:00
cbb1be1161 Implement GEP instead of the weird thing before 2025-07-13 23:14:16 +03:00
a18a5b4199 Continue progress, make set-statements as todos for later 2025-07-13 19:00:46 +03:00
587ab8afd5 Make mir array implementation halfway, compiling but not working yet 2025-07-13 18:32:27 +03:00
bf8baa7cd4 Add parsing for setting indexed values 2025-07-13 18:02:27 +03:00
df6b5ef34b Add array indexing 2025-07-13 17:46:34 +03:00
8f95d445c0 Add array expression parsing 2025-07-13 17:41:57 +03:00
887071eeb6 Add parsing of array type 2025-07-13 17:33:38 +03:00
4e8228f903 Move binop type resolution to common implementation 2025-07-13 17:05:23 +03:00
14e0dcbe15 (broken) add part 1 of mutability 2025-07-12 02:38:31 +03:00
85b2ebf04a Add mutability parsing 2025-07-11 21:32:20 +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
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
fb876e3ef5 Add type from let through parser to MIR 2025-07-08 18:41:10 +03:00
9b9fcd4ec4 Make AST contain only abstract Numbers 2025-07-08 00:48:28 +03:00
a366d22470 Add typechecking 2025-07-07 23:03:21 +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
0392c293ba Cleanup 2025-07-05 01:41:03 +03:00
61ba00ea58 Transform AST into MIR successfully, completing the chain 2025-07-05 01:34:57 +03:00