Irmen de Jong
|
30e1c3307c
|
simplify SourceCode: just read the full text immediately. Also optimized imports.
|
2022-02-05 03:50:54 +01:00 |
|
Irmen de Jong
|
7dd7e562bc
|
pipes also as expressions, cleanup codegen, fix various typecasting issues
|
2022-01-08 13:45:19 +01:00 |
|
Irmen de Jong
|
0feeb88024
|
codegen package rename 2
|
2021-12-28 14:23:36 +01:00 |
|
Irmen de Jong
|
6e11b8ada1
|
GoSub no longer inherits from Jump node, fixes subtle ast/codegen bugs related to jsrs
|
2021-12-28 01:55:13 +01:00 |
|
Irmen de Jong
|
67b0890a6e
|
remove unneeded var inits when an assignment is already present
|
2021-12-25 23:31:25 +01:00 |
|
Irmen de Jong
|
629117e594
|
code size optimization: subroutine calls with 1 int arg will pass it via register instead of separate param assignment at every call site
|
2021-12-16 00:56:59 +01:00 |
|
Irmen de Jong
|
98315de723
|
allow using ubyte[] as subroutine parameter type (because it is equivalent to uword pointer var)
|
2021-12-07 23:28:45 +01:00 |
|
Irmen de Jong
|
dcf487bdc1
|
fix: correctly insert return statement if needed to prevent 'fall through' into following subroutine
this wasn't working correctly anymore when the last statement before the subroutine was a jump/goto
|
2021-12-07 21:34:50 +01:00 |
|
Irmen de Jong
|
ce3c34e458
|
tweak in error output for file links, corrected column number off-by-one
|
2021-12-04 16:52:03 +01:00 |
|
Irmen de Jong
|
b7fffbb6df
|
release 7.4.1 - oops, funcion call arg count validation was broken
|
2021-12-01 21:44:03 +01:00 |
|
Irmen de Jong
|
110e047681
|
replace subroutine calls (statement) by GoSub
|
2021-11-26 19:47:01 +01:00 |
|
Irmen de Jong
|
b00db4f8a2
|
no longer report unknown type errors as well for unknown symbols,
added a bunch more unit tests for symbol scoping rules
|
2021-11-23 22:45:57 +01:00 |
|
Irmen de Jong
|
74db5c6be7
|
fix referencesIdentifier() and better removal of unnecessary assignments
|
2021-11-20 17:41:41 +01:00 |
|
Irmen de Jong
|
4c82af36e6
|
fix improperly changed behavior about =0 initializer
|
2021-11-18 00:17:22 +01:00 |
|
Irmen de Jong
|
7961a09d16
|
converting compiler module's testcases to kotest assertions
|
2021-11-08 16:14:22 +01:00 |
|
Irmen de Jong
|
613efcacc7
|
converting compiler module's testcases to kotest (ongoing)
|
2021-11-08 15:08:48 +01:00 |
|
Irmen de Jong
|
b4fa72c058
|
fix parent node linkage for reading array parameter
|
2021-11-03 21:57:31 +01:00 |
|
Irmen de Jong
|
1110bd0851
|
fix vardecl initialization value to not use stack eval anymore but separate assignment
(this causes the optimized assignment code gen to be used instead)
but some programs now end up larger in output size
|
2021-11-01 00:24:15 +01:00 |
|
Irmen de Jong
|
3767b4bbe7
|
'Program' is not an ast Node
|
2021-10-30 00:25:34 +02:00 |
|
Irmen de Jong
|
ac5f45d2d4
|
fix nested label lookups in anon scopes (partly)
|
2021-10-27 02:41:24 +02:00 |
|
Irmen de Jong
|
9684f4e42a
|
add unit tests for AnonScope refactoring, cleaned up imports
|
2021-10-27 00:05:46 +02:00 |
|
Irmen de Jong
|
5e1459564a
|
no longer take AddressOf a str-variable that is a subroutine's parameter with str type (it's just an address/uword already)
|
2021-10-25 23:49:01 +02:00 |
|
Irmen de Jong
|
69a8813a3d
|
first steps to add support for str parameter type
|
2021-10-24 20:57:10 +02:00 |
|
Irmen de Jong
|
17175df835
|
more precise error messages checks
|
2021-10-24 19:14:46 +02:00 |
|
Irmen de Jong
|
6b32535cb6
|
don't complain about uninitialized str var if it's not a var
|
2021-10-24 15:13:38 +02:00 |
|
Irmen de Jong
|
2815a14bb5
|
(7.2) can now test for specific error messages, and specify to omit invoking assembler in tests
|
2021-10-22 01:25:26 +02:00 |
|
Irmen de Jong
|
f4dfa60790
|
(7.2) tests for pass by ref parameters
|
2021-10-22 00:41:34 +02:00 |
|