Commit Graph

54 Commits

Author SHA1 Message Date
069c277516 Update String to be *str 2025-07-21 19:32:40 +03:00
7c7dde03f9 Fix error reporting on No-Main-Function and add fp compilation 2025-07-21 16:44:16 +03:00
bcc93dd60c Add parsing to floats 2025-07-21 16:18:14 +03:00
d65b0153a1 Implement unary operators as syntax sugar 2025-07-21 15:12:49 +03:00
9db508bd9c Change user-space pointer to different type 2025-07-21 13:52:37 +03:00
3b43689650 Add parsing pointer-type 2025-07-21 13:25:01 +03:00
ce645519ce Fix NamedVarRefrence tokenrange 2025-07-21 10:52:33 +03:00
60818842a5 Add borrow mutability 2025-07-21 10:21:25 +03:00
8da32c25c5 Make borrows work as function parameters as well 2025-07-21 10:07:56 +03:00
26818cec96 Add AST->MIR for borrow/deref 2025-07-20 21:34:47 +03:00
ba8ee770fb Parse deref and borrow 2025-07-20 21:25:08 +03:00
d7661cb968 Add metadata location to function calls 2025-07-20 21:08:15 +03:00
ce2278ce45 Fix using custom type-labels for e.g. return type 2025-07-17 20:20:07 +03:00
64e34ecf13 Add module_id for modules and metadata 2025-07-17 14:56:41 +03:00
c19384d77b Refactor a bit 2025-07-16 22:38:19 +03:00
3870b421a9 Refactor indexing/accessing a bit, no mutability 2025-07-16 22:04:11 +03:00
f2e4b3eff7 Do some cleanup 2025-07-16 18:57:42 +03:00
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