-
8ffb3baa8d
Add Any-mutability for StackValues
sofia
2025-07-17 00:55:11 +0300
-
8abee593f0
Fix value transfer in structs and arrays
sofia
2025-07-17 00:32:41 +0300
-
9a4f0dc5d8
Allow for cloning inner values
sofia
2025-07-17 00:05:37 +0300
-
965ad5797f
Implement rudamentary borrow
sofia
2025-07-16 23:49:28 +0300
-
e4ce897f94
Fix expression-indexing
sofia
2025-07-16 23:29:15 +0300
-
d2cf97af66
Move should_load to separate State
sofia
2025-07-16 23:22:06 +0300
-
d034754202
Possibly fix array_structs
sofia
2025-07-16 23:09:36 +0300
-
c41aab33a9
Add optional data to PassState Scope
sofia
2025-07-16 22:46:52 +0300
-
c19384d77b
Refactor a bit
sofia
2025-07-16 22:38:19 +0300
-
3870b421a9
Refactor indexing/accessing a bit, no mutability
sofia
2025-07-16 22:04:11 +0300
-
4ad871ff3d
Remove dbg prints
sofia
2025-07-16 21:19:44 +0300
-
d4616ea025
Add array_structs.reid to test arrays and structs together
sofia
2025-07-16 21:17:28 +0300
-
79c98a18f7
Fix some warnings, remove unused code
sofia
2025-07-16 21:14:07 +0300
-
1eb3e8c095
Refactor IndexedVariableReference being a bit smarter
sofia
2025-07-16 21:13:00 +0300
-
dbd048c21c
Fix struct indexing when setting a field
sofia
2025-07-16 20:38:21 +0300
-
cd31d7e7cd
Nearly fix struct mutability
sofia
2025-07-16 20:27:01 +0300
-
017b474f0c
Fix StructValueIndex never constructed
sofia
2025-07-16 19:02:23 +0300
-
f2e4b3eff7
Do some cleanup
sofia
2025-07-16 18:57:42 +0300
-
233ddb60f7
Fix struct gep return type, refactor a bit
sofia
2025-07-16 17:53:41 +0300
-
2a879b5ef4
Implement codegen for structs
sofia
2025-07-16 17:08:15 +0300
-
d1a37058df
Fix warnings
sofia
2025-07-16 16:16:58 +0300
-
29996c4a30
Add builder methods to create custom types
sofia
2025-07-16 16:16:18 +0300
-
31185d921e
Properly implement structs in lib
sofia
2025-07-16 15:46:55 +0300
-
97fc468d78
Update how struct access is displayed
sofia
2025-07-16 00:19:49 +0300
-
77439ee34a
Implement typechecking for structs
sofia
2025-07-16 00:16:53 +0300
-
aafab49f82
Fix struct access type inference
sofia
2025-07-15 23:30:32 +0300
-
7075b6f73f
Update order of prints
sofia
2025-07-15 23:18:01 +0300
-
1d1e574136
Implement type inference for structs
sofia
2025-07-15 23:16:37 +0300
-
e13b6349f0
Add ScopeTypes to Pass
sofia
2025-07-15 22:11:38 +0300
-
b012a46e91
Process Struct ASTs into MIR
sofia
2025-07-15 22:03:48 +0300
-
f139a5ad6c
Add MIR support for struct types
sofia
2025-07-15 21:48:58 +0300
-
d9a1e8456d
Add struct indexing parsing
sofia
2025-07-15 21:28:02 +0300
-
c83d53ae53
Add struct type and expression parsing
sofia
2025-07-15 21:19:37 +0300
-
5fca72a3f9
Add lexing support for structs
sofia
2025-07-15 20:37:41 +0300
-
0ec427252f
Add some support for custom struct types in lib
sofia
2025-07-15 20:28:59 +0300
-
1acaa29a12
Fix module scopes being linked
sofia
2025-07-15 20:09:33 +0300
-
6788ef1690
Use AvailableExternally-linkage for externs for imports
sofia
2025-07-15 20:01:46 +0300
-
6f8c02ac04
Add compilation time to cli
sofia
2025-07-15 19:43:23 +0300
-
dc9450f64a
Fix libtest.sh
sofia
2025-07-15 19:35:46 +0300
-
19c883ea33
Add e2e tests
sofia
2025-07-15 02:55:26 +0300
-
824978de49
Remove array binary
sofia
2025-07-15 01:20:44 +0300
-
28d632d51c
Add Makefile by @neon, fix array typechecking during typeinference
sofia
2025-07-15 01:16:21 +0300
-
bcad9b57fe
Make the compiler produce .o/.asm/.ll according to input file name
sofia
2025-07-15 00:25:17 +0300
-
5b5ec48b8d
Put all debug prints behind debug-assertions
sofia
2025-07-14 23:43:03 +0300
-
0e5f12e0e2
Update README
sofia
2025-07-14 22:57:33 +0300
-
587aa1d7f2
Fix warnings
sofia
2025-07-14 22:56:31 +0300
-
1e759d49c7
Fix issue in type-inference pass about function params not registering
sofia
2025-07-14 22:55:43 +0300
-
5acd1624fd
Move test to inside-executable, and add tests that test it compiles
sofia
2025-07-14 22:52:30 +0300
-
3f90b46dc8
Include stdlib in executable
sofia
2025-07-14 22:33:04 +0300
-
fa4df50a04
Fix linking so that non-imported functions don't bother main-module
sofia
2025-07-14 22:22:55 +0300
-
2b47c4efc7
Make linking modules together work, fix printing modules
sofia
2025-07-14 21:10:13 +0300
-
848347e4a8
Add importer pass, make importer import module properly
sofia
2025-07-14 20:33:02 +0300
-
a71843dfe9
Implement import-pass
sofia
2025-07-14 20:13:30 +0300
-
464156b2dc
Fix imports in MIR
sofia
2025-07-14 19:20:38 +0300
-
3d5ddc60dc
Fix void function calls not discarding name
sofia
2025-07-14 19:16:52 +0300
-
b82cbcb45c
Fix function call not faulting on undefined function
sofia
2025-07-14 19:02:21 +0300
-
7a2a965cd7
Fix functions being in their own scopes
sofia
2025-07-14 18:49:51 +0300
-
735c4370aa
Add pub keyword
sofia
2025-07-14 18:47:02 +0300
-
067c84e93e
Implement external function linkage in lib
sofia
2025-07-14 18:29:45 +0300
-
4eaa365674
Add function flags and codegen extern functions
sofia
2025-07-14 18:26:57 +0300
-
376baa2c9a
Remove length param from string, use string pointers instead
sofia
2025-07-14 18:22:05 +0300
-
1173e17fe6
Update TODO-list
sofia
2025-07-14 17:57:34 +0300
-
83475b144c
Codegen strings
sofia
2025-07-14 17:52:47 +0300
-
73a3b15fb6
Add AST -> MIR for strings
sofia
2025-07-14 17:45:36 +0300
-
b9dfa9b1ce
Add parsing of string literals
sofia
2025-07-14 17:39:48 +0300
-
d5b0e3ebf7
Add lexing of strings
sofia
2025-07-14 17:38:05 +0300
-
e15f77d9de
Update libtest and make examples/cli.rs
sofia
2025-07-14 17:24:44 +0300
-
bc1cc99bcc
Update examples
sofia
2025-07-14 17:19:10 +0300
-
b64cdc4c71
Fix if-statement block return type evaluation
sofia
2025-07-14 17:17:48 +0300
-
bad4713779
Fix index out of bounds off-by-one error
sofia
2025-07-14 02:29:54 +0300
-
c2a087785e
Update README and lib docs
sofia
2025-07-14 02:28:01 +0300
-
1b9f3dbca0
Fix warnings
sofia
2025-07-14 02:26:55 +0300
-
86eab29173
Make nested arrays work
sofia
2025-07-14 01:20:50 +0300
-
5d06ecb874
Add broken support for nested arrays
sofia
2025-07-14 00:05:05 +0300
-
d2587df4c9
Add mutability to arrays
sofia
2025-07-13 23:58:56 +0300
-
d99c450e61
Fix some warnings
sofia
2025-07-13 23:14:51 +0300
-
cbb1be1161
Implement GEP instead of the weird thing before
sofia
2025-07-13 23:14:16 +0300
-
312a777203
Get arrays to compile while still not supporting mutability for a bit
sofia
2025-07-13 22:04:49 +0300
-
d62d6e2845
Actually finish array-support for lib
sofia
2025-07-13 20:56:24 +0300
-
a2e52e0bd2
Add Array support to llvm-lib
sofia
2025-07-13 20:31:33 +0300
-
515c031f19
Finish type checking and inferrence for arrays
sofia
2025-07-13 20:15:03 +0300
-
b14a62bc34
Add typechecking for arrays
sofia
2025-07-13 19:39:43 +0300
-
4f8153643b
Perform type inference for array and indexing expressions
sofia
2025-07-13 19:26:20 +0300
-
64f07002b4
Update how array is displayed when printed
sofia
2025-07-13 19:07:31 +0300
-
a18a5b4199
Continue progress, make set-statements as todos for later
sofia
2025-07-13 19:00:46 +0300
-
10cf9341c5
Add return type for index and array expressions
sofia
2025-07-13 18:41:14 +0300
-
ad20fefabc
Add Array Expression to MIR
sofia
2025-07-13 18:37:18 +0300
-
587ab8afd5
Make mir array implementation halfway, compiling but not working yet
sofia
2025-07-13 18:32:27 +0300
-
bf8baa7cd4
Add parsing for setting indexed values
sofia
2025-07-13 18:02:27 +0300
-
df6b5ef34b
Add array indexing
sofia
2025-07-13 17:46:34 +0300
-
8f95d445c0
Add array expression parsing
sofia
2025-07-13 17:41:57 +0300
-
887071eeb6
Add parsing of array type
sofia
2025-07-13 17:33:38 +0300
-
4e8228f903
Move binop type resolution to common implementation
sofia
2025-07-13 17:05:23 +0300
-
a8ed7577a8
Move type checking properly to the typecheck-stage
sofia
2025-07-13 16:31:35 +0300
-
92736e392e
Refactor Type Hints -> Type Refs
sofia
2025-07-13 15:58:19 +0300
-
f3f47831e9
Split type inference to it's very own pass
sofia
2025-07-13 15:55:14 +0300
-
7d77e1df32
rename ScopeHint to TypeHint
sofia
2025-07-13 15:27:28 +0300
-
0d631bfa89
Remove redundant TypeRef, add other optimizations
sofia
2025-07-13 15:26:36 +0300
-
29e78cf1aa
update errors
sofia
2025-07-13 13:58:12 +0300
-
e79a0fe458
Update where default value is calculated, fix load type
sofia
2025-07-12 23:59:16 +0300