|
29d790e583
|
Start working on if-expression hands being expressions
|
2025-07-22 20:58:32 +03:00 |
|
|
28437aecb6
|
Fix indexing return type and casting to and from a char
|
2025-07-22 20:03:25 +03:00 |
|
|
bbdfae081d
|
Fix std Strings
|
2025-07-22 19:50:54 +03:00 |
|
|
3d73c52cb4
|
Fix casting within setters
|
2025-07-22 19:31:35 +03:00 |
|
|
78a1e9f06b
|
Fix typedef issue with modules
|
2025-07-22 18:03:15 +03:00 |
|
|
f35f1ef701
|
Repurpose module map and rename old to ErrorModules
|
2025-07-22 17:34:01 +03:00 |
|
|
e9bca63f0d
|
Add module id to CustomType, String to std
|
2025-07-22 16:16:46 +03:00 |
|
|
1224c612c7
|
Codegen & compile char, change *str to *char
|
2025-07-22 15:07:33 +03:00 |
|
|
e220900ac3
|
Start adding chars
|
2025-07-22 14:44:28 +03:00 |
|
|
104205ee5d
|
Type-infer and check typecasting
|
2025-07-22 13:24:53 +03:00 |
|
|
3378f556ec
|
Add AST -> MIR for typecasting
|
2025-07-21 21:28:39 +03:00 |
|
|
069c277516
|
Update String to be *str
|
2025-07-21 19:32:40 +03:00 |
|
|
3d3a9a34f9
|
Fix binary operators for floats, make library functions extern
|
2025-07-21 17:32:20 +03:00 |
|
|
ec0c7fa194
|
Fix float coersion rules
|
2025-07-21 16:53:29 +03:00 |
|
|
a1507e14ca
|
Add flag to ignore no-main-error
|
2025-07-21 16:47:51 +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 |
|
|
e370e17ffd
|
Only include STD if it is imported
|
2025-07-21 15:47:02 +03:00 |
|
|
b23577aa18
|
Check for trivial expressions that they are >0 when unsigned
|
2025-07-21 15:44:47 +03:00 |
|
|
d65b0153a1
|
Implement unary operators as syntax sugar
|
2025-07-21 15:12:49 +03:00 |
|
|
ed9c8638d5
|
Get pointers working
|
2025-07-21 14:43:24 +03:00 |
|
|
9db508bd9c
|
Change user-space pointer to different type
|
2025-07-21 13:52:37 +03:00 |
|
|
a49105b07a
|
Add typecheck/infer for pointers
|
2025-07-21 13:29:19 +03:00 |
|
|
f55040ad00
|
Update how types are formatted
|
2025-07-21 11:06:42 +03:00 |
|
|
37386db437
|
Check for mutability when doing a let
|
2025-07-21 10:43:24 +03:00 |
|
|
5763df948f
|
Check borrow mutability against variable mutability
|
2025-07-21 10:39:19 +03:00 |
|
|
1fadaa60f2
|
Add mutability compatibility check to borrows
|
2025-07-21 10:33:37 +03:00 |
|
|
74ce296a05
|
Refactor a bit
|
2025-07-21 10:29:26 +03:00 |
|
|
b9f6f2ba0f
|
Make param mutable based on type
|
2025-07-21 10:23:30 +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 |
|
|
2e829bc8a9
|
Fix linker, add e2e tests
|
2025-07-21 09:59:35 +03:00 |
|
|
893eaaa865
|
Clean up and fix some warnings
|
2025-07-20 22:36:38 +03:00 |
|
|
550fec2827
|
Fix typeinference and checking for borrows/derefs
|
2025-07-20 22:33:00 +03:00 |
|
|
47fa5f342f
|
Nearly get typechecking working for deref/borrow
|
2025-07-20 22:15:16 +03:00 |
|
|
62d73b19a2
|
Improve error messages for typerefs a bit
|
2025-07-20 21:51:18 +03:00 |
|
|
c0e375d84c
|
Add typechecking for borrow/deref
|
2025-07-20 21:48:00 +03:00 |
|
|
cf30f79951
|
Add type inference for borrow/deref
|
2025-07-20 21:43:27 +03:00 |
|
|
26818cec96
|
Add AST->MIR for borrow/deref
|
2025-07-20 21:34:47 +03:00 |
|
|
d7661cb968
|
Add metadata location to function calls
|
2025-07-20 21:08:15 +03:00 |
|
|
848f4118bf
|
Fix params not being pointers
|
2025-07-20 20:13:47 +03:00 |
|
|
a62f9db422
|
Get static arrays actually working alone
|
2025-07-20 19:23:42 +03:00 |
|
|
b185e2ecc6
|
Import typedefs from other modules as well
|
2025-07-20 15:55:47 +03:00 |
|
|
575abe8172
|
Make passes actually return errors well
|
2025-07-20 15:25:21 +03:00 |
|
|
e4845c4084
|
Get structs in arrays working, but no luck with arrays in structs
|
2025-07-20 14:21:37 +03:00 |
|
|
c0b02f8a45
|
Clean up some prints
|
2025-07-20 05:04:12 +03:00 |
|
|
5f65d3438a
|
Get arrays to work in DI, huzzah
|
2025-07-19 22:08:23 +03:00 |
|
|
c1cc1d28de
|
Implement array and struct debug info
|
2025-07-19 20:51:06 +03:00 |
|
|
a511331be2
|
Fix type-inferrer on arrays
|
2025-07-19 19:23:24 +03:00 |
|
|
f9f9360efc
|
Update error text
|
2025-07-19 19:03:31 +03:00 |
|
|
1ad89de682
|
Add better coverage for debug types
|
2025-07-19 14:33:27 +03:00 |
|
|
92f12e90eb
|
Make debug information work
|
2025-07-18 19:38:01 +03:00 |
|
|
b169e67ca4
|
Add debug locations to returns
|
2025-07-18 18:36:04 +03:00 |
|
|
1967cadbc0
|
Get debug info working very preliminarily
|
2025-07-18 17:26:11 +03:00 |
|
|
990d8cb448
|
Fix around in debug information generation, fix subprogram not being set
|
2025-07-18 16:59:05 +03:00 |
|
|
0c6d9885ec
|
Add debug information compilation for subprograms and their parameters
|
2025-07-18 15:44:12 +03:00 |
|
|
9bb4f97e6b
|
Start adding debug information
|
2025-07-18 00:07:11 +03:00 |
|
|
292688a840
|
Fix some warnings
|
2025-07-17 20:26:01 +03:00 |
|
|
9d1b18f083
|
Add FullToken array to error raporting
|
2025-07-17 17:44:18 +03:00 |
|
|
ce7c4bfb52
|
Improve error raporting futher significantly
|
2025-07-17 17:15:57 +03:00 |
|
|
f0e47a5d57
|
Attempt to significantly improve error-raporting
|
2025-07-17 16:47:10 +03:00 |
|
|
64e34ecf13
|
Add module_id for modules and metadata
|
2025-07-17 14:56:41 +03:00 |
|
|
e2dc1a3f85
|
Fix some warnings
|
2025-07-17 14:31:40 +03:00 |
|
|
965ad5797f
|
Implement rudamentary borrow
|
2025-07-16 23:49:28 +03:00 |
|
|
e4ce897f94
|
Fix expression-indexing
|
2025-07-16 23:29:15 +03:00 |
|
|
c41aab33a9
|
Add optional data to PassState Scope
|
2025-07-16 22:46:52 +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 |
|
|
79c98a18f7
|
Fix some warnings, remove unused code
|
2025-07-16 21:14:07 +03:00 |
|
|
cd31d7e7cd
|
Nearly fix struct mutability
|
2025-07-16 20:27:01 +03:00 |
|
|
f2e4b3eff7
|
Do some cleanup
|
2025-07-16 18:57:42 +03:00 |
|
|
2a879b5ef4
|
Implement codegen for structs
|
2025-07-16 17:08:15 +03:00 |
|
|
d1a37058df
|
Fix warnings
|
2025-07-16 16:16:58 +03:00 |
|
|
97fc468d78
|
Update how struct access is displayed
|
2025-07-16 00:19:49 +03:00 |
|
|
77439ee34a
|
Implement typechecking for structs
|
2025-07-16 00:16:53 +03:00 |
|
|
aafab49f82
|
Fix struct access type inference
|
2025-07-15 23:30:32 +03:00 |
|
|
1d1e574136
|
Implement type inference for structs
|
2025-07-15 23:16:37 +03:00 |
|
|
e13b6349f0
|
Add ScopeTypes to Pass
|
2025-07-15 22:11:38 +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 |
|
|
1acaa29a12
|
Fix module scopes being linked
|
2025-07-15 20:09:33 +03:00 |
|
|
6788ef1690
|
Use AvailableExternally-linkage for externs for imports
|
2025-07-15 20:01:46 +03:00 |
|
|
28d632d51c
|
Add Makefile by @neon, fix array typechecking during typeinference
|
2025-07-15 01:17:00 +03:00 |
|
|
587aa1d7f2
|
Fix warnings
|
2025-07-14 22:56:31 +03:00 |
|
|
1e759d49c7
|
Fix issue in type-inference pass about function params not registering
|
2025-07-14 22:55:43 +03:00 |
|
|
5acd1624fd
|
Move test to inside-executable, and add tests that test it compiles
|
2025-07-14 22:52:30 +03:00 |
|
|
3f90b46dc8
|
Include stdlib in executable
|
2025-07-14 22:33:04 +03:00 |
|
|
fa4df50a04
|
Fix linking so that non-imported functions don't bother main-module
|
2025-07-14 22:22:55 +03:00 |
|
|
848347e4a8
|
Add importer pass, make importer import module properly
|
2025-07-14 20:35:58 +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 |
|
|
b82cbcb45c
|
Fix function call not faulting on undefined function
|
2025-07-14 19:02:21 +03:00 |
|
|
7a2a965cd7
|
Fix functions being in their own scopes
|
2025-07-14 18:49:51 +03:00 |
|
|
735c4370aa
|
Add pub keyword
|
2025-07-14 18:47:02 +03:00 |
|
|
4eaa365674
|
Add function flags and codegen extern functions
|
2025-07-14 18:26:57 +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 |
|
|
73a3b15fb6
|
Add AST -> MIR for strings
|
2025-07-14 17:45:36 +03:00 |
|
|
b64cdc4c71
|
Fix if-statement block return type evaluation
|
2025-07-14 17:17:48 +03:00 |
|
|
bad4713779
|
Fix index out of bounds off-by-one error
|
2025-07-14 02:31:01 +03:00 |
|