Commit Graph

69 Commits

Author SHA1 Message Date
Sasha Koshka 2ce910c54a Same thing as last commit 2024-01-26 04:05:58 +00:00
Sasha Koshka db31c9b80e Add more comments to explain casting rules in analyzer 2024-01-26 00:40:22 +00:00
Sasha Koshka cd688c91af Added nil (zero initializer) literals 2023-12-21 23:33:38 -05:00
Sasha Koshka a9ff511496 Generator can produce link names 2023-12-20 03:05:27 -05:00
Sasha Koshka 6bcbd6aff9 Made the type checker a tad more robust 2023-12-15 13:23:37 -05:00
Sasha Koshka f72bf533e0 Method calling now properly passes pointer instead of value 2023-12-14 01:23:34 -05:00
Sasha Koshka d16079cbe8 Fix IsUnsigned 2023-12-07 17:05:26 -05:00
Sasha Koshka b2f8b85969 If statements get a type 2023-12-07 04:16:58 -05:00
Sasha Koshka 30c346c6b7 Generator alloca's variables when they are defined 2023-12-07 02:48:27 -05:00
Sasha Koshka 7f866d102d Fixed several cases where the generator would output invalid IR 2023-12-03 22:23:04 -05:00
Sasha Koshka eece7479a0 Member access can now pierce through pointers in the analyzer 2023-12-02 23:23:44 -05:00
Sasha Koshka 342e9a3a89 Analyzer adds a "this" pointer to methods 2023-12-02 23:06:58 -05:00
Sasha Koshka ffe873a3e4 String literals can be assigned to strings now 2023-12-02 22:45:22 -05:00
Sasha Koshka 4c07b9f206 Add length to analyzer and parser 2023-11-30 02:05:32 -05:00
Sasha Koshka 6ddb32fd5c Multi-layer location expression type inference 2023-11-29 20:07:16 -05:00
Sasha Koshka 19a6b73f0e Analyzer does light upward type inference for location expressions 2023-11-29 18:52:27 -05:00
Sasha Koshka c709500d58 Facehoof 2023-11-29 00:13:54 -05:00
Sasha Koshka e92377bc95 Added string literals to generator 2023-11-29 00:01:35 -05:00
Sasha Koshka e5be4dba02 Added string literal to analyzer 2023-11-26 17:27:31 -05:00
Sasha Koshka 2db97a42b1 Analyzer no longer deletes dereferences 2023-11-26 04:00:44 -05:00
Sasha Koshka 72941e1ab4 Slight modifications to analyzer 2023-11-21 15:04:01 -05:00
Sasha Koshka 605fd24228 Pass all analyzer tests 2023-11-04 17:59:04 -04:00
Sasha Koshka 47beb9e41f Pass all but one test 2023-11-04 16:34:40 -04:00
Sasha Koshka a2e22d1154 Fix goofy bugs 2023-10-31 21:52:47 -04:00
Sasha Koshka af52bbb070 uhhhh 2023-10-31 15:43:19 -04:00
Sasha Koshka dd9f866165 Can now assign array directly to slice 2023-10-31 01:46:18 -04:00
Sasha Koshka fa60f8c814 Pass all literal assignment tests 2023-10-29 15:18:44 -04:00
Sasha Koshka 8cdeab6efa Array literal can be used in array and slice 2023-10-29 15:13:25 -04:00
Sasha Koshka 6f14b8a1b3 Pass a bunch of tests 2023-10-29 15:09:20 -04:00
Sasha Koshka d435a1b1be Removed Void as a concept 2023-10-29 14:47:28 -04:00
Sasha Koshka 24af8e0b49 Expression analysis actually runs now 2023-10-29 14:40:29 -04:00
Sasha Koshka 359441d5fa Analyze return statement 2023-10-29 14:28:51 -04:00
Sasha Koshka 8751cc7b89 Analyze break statements 2023-10-29 02:59:45 -04:00
Sasha Koshka b8d573f2cd Analyze more expressions 2023-10-29 02:18:41 -04:00
Sasha Koshka 2018ccead6 Add loop stack management to scopeManager and scopeContextManager 2023-10-29 02:18:03 -04:00
Sasha Koshka 68951a3af4 Analyze all the literals 2023-10-28 03:24:17 -04:00
Sasha Koshka a6fec780c7 Start analyzing literals 2023-10-27 16:10:31 -04:00
Sasha Koshka 4da8ecd25f More expressions (wip) 2023-10-26 10:43:50 -04:00
Sasha Koshka 964daf01ed Analysis of value/bit casts 2023-10-25 01:57:02 -04:00
Sasha Koshka 0bcc5e7d46 Location expressions 2023-10-24 21:54:59 -04:00
Sasha Koshka 9a7087ab14 Added analysis for numerous types of expressions 2023-10-24 18:29:33 -04:00
Sasha Koshka ee8eabcfc4 I forgor 2023-10-24 01:34:58 -04:00
Sasha Koshka 5ac046d5b1 Function call analysis 2023-10-20 13:48:05 -04:00
Sasha Koshka fc97c3ed49 WIP expression analysis type checking 2023-10-19 19:13:55 -04:00
Sasha Koshka 30636e18aa Expression analysis stub 2023-10-18 02:29:24 -04:00
Sasha Koshka 92e8205bb9 That, but for operation arg count testing 2023-10-18 01:39:43 -04:00
Sasha Koshka 1302731793 Updated analyzer tests to account for lexer changes 2023-10-18 01:33:22 -04:00
Sasha Koshka cdee4adf1c Star is now a separate token 2023-10-18 01:14:17 -04:00
Sasha Koshka a80492420e Implement custom lexer FINALLY 2023-10-18 00:48:35 -04:00
Sasha Koshka 1dab6e3805 Finished analyzing method signatures 2023-10-17 03:21:25 -04:00