Commit Graph

39 Commits

Author SHA1 Message Date
7ba3204803 Implement typechecking and inference logic for binops 2025-07-25 18:10:22 +03:00
8d3dd4a49f Improve binop type narrowing 2025-07-25 16:55:32 +03:00
ea8a833bdf Fix warnings and issues 2025-07-25 00:32:49 +03:00
27db67dd99 Possibly fix typechecking for binops 2025-07-24 18:42:10 +03:00
b12e0a18a9 Add typechecking for custom binops 2025-07-24 15:38:08 +03:00
9f7022b4c0 Add operator to scopebinop, add some typechecking for binops 2025-07-24 15:09:27 +03:00
aec7d55e9b Add codegen to custom binops 2025-07-24 15:03:05 +03:00
7c6de93b31 Check for existance of pre-existing binops 2025-07-24 13:25:33 +03:00
5ff5651f5f Work on intrinsics, clean up code a bit 2025-07-24 11:29:58 +03:00
15ff9c5906 Fix warnings 2025-07-23 20:44:58 +03:00
75a7a435d1 Make for-loops syntax sugar instead 2025-07-23 20:44:30 +03:00
1a5e3ef1d9 Add loops ast -> mir 2025-07-23 20:29:13 +03:00
8b79959288 Fix typedefinition in scope 2025-07-23 15:34:01 +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
575abe8172 Make passes actually return errors well 2025-07-20 15:25:21 +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
c41aab33a9 Add optional data to PassState Scope 2025-07-16 22:46:52 +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
77439ee34a Implement typechecking for structs 2025-07-16 00:16:53 +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
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
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
b14a62bc34 Add typechecking for arrays 2025-07-13 19:39:43 +03:00
587ab8afd5 Make mir array implementation halfway, compiling but not working yet 2025-07-13 18:32:27 +03:00
04e0c136df Fix warnings 2025-07-12 14:42:43 +03:00
0f424c70d7 Implement mutability part 2 2025-07-12 14:37:10 +03:00
14e0dcbe15 (broken) add part 1 of mutability 2025-07-12 02:38:31 +03:00
a907fec967 Fix module docs 2025-07-09 20:07:30 +03:00
9710d17e00 Add a bunch of documentation 2025-07-09 20:01:24 +03:00
14283afe59 Separate pass-common code to pass.rs 2025-07-08 21:44:04 +03:00