Irmen de Jong
|
b4fa72c058
|
fix parent node linkage for reading array parameter
|
2021-11-03 21:57:31 +01:00 |
|
Irmen de Jong
|
7e287a5359
|
proper parent node linkage in generated const values out of typecast expressions. Fixes crash mentioned in #72
|
2021-11-02 00:47:01 +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
|
dfbef8495d
|
got rid of ParsingFailedError
|
2021-10-30 17:05:23 +02:00 |
|
Irmen de Jong
|
7b17c49d8f
|
update petscii tables with improvements to box drawing chars. fixes #68
|
2021-10-30 16:45:23 +02:00 |
|
Irmen de Jong
|
4b3f31c2ee
|
added option to suppress assembler output (and enabled this in unit tests)
|
2021-10-30 15:26:40 +02:00 |
|
Irmen de Jong
|
9ccc65bf8f
|
more petscii tests
|
2021-10-30 15:15:11 +02:00 |
|
Irmen de Jong
|
3767b4bbe7
|
'Program' is not an ast Node
|
2021-10-30 00:25:34 +02:00 |
|
Irmen de Jong
|
d7d2eefa4f
|
implemented CharLiteral.constValue()
|
2021-10-30 00:05:55 +02:00 |
|
Irmen de Jong
|
6737f28d1e
|
moved unittests of compilerInterfaces into compiler module itself
|
2021-10-29 23:46:51 +02:00 |
|
Irmen de Jong
|
3da9404c2d
|
removed memsizer arg from all builtin functions
|
2021-10-29 23:38:31 +02:00 |
|
Irmen de Jong
|
1137da37c3
|
reshuffle ErrorReporter
|
2021-10-29 17:02:03 +02:00 |
|
Irmen de Jong
|
495a18805c
|
move asmgen test to codeGeneration module
|
2021-10-29 16:20:53 +02:00 |
|
Irmen de Jong
|
a226b82d0b
|
cleanup imports
|
2021-10-29 05:30:12 +02:00 |
|
Irmen de Jong
|
0b5ddcdc9b
|
split out the code generator into own project submodule
|
2021-10-29 05:00:30 +02:00 |
|
Irmen de Jong
|
f21dcaa6fb
|
split out the code optimizers into own project submodule
|
2021-10-29 02:42:10 +02:00 |
|
Irmen de Jong
|
7d22b9b9f9
|
simplified name conflict check for sub params
|
2021-10-29 00:20:33 +02:00 |
|
Irmen de Jong
|
2bf4017f2b
|
fix nested label lookups in anon scopes
fixed non-global qualified names lookup
|
2021-10-28 23:48:01 +02:00 |
|
Irmen de Jong
|
08d2f8568b
|
refactoring symbol lookups
|
2021-10-27 23:48:12 +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 |
|
Irmen de Jong
|
4d5094a517
|
(7.2) cleanup Petscii converter errorhandling, add unit tests for error scenarios
|
2021-10-20 23:48:20 +02:00 |
|
Irmen de Jong
|
dd5abae721
|
move testcase to proper location
|
2021-10-20 23:08:40 +02:00 |
|
Irmen de Jong
|
440abf4998
|
fix test to recognise inserted return statements
|
2021-10-20 22:50:18 +02:00 |
|
Irmen de Jong
|
df2d5c6585
|
tests for callgraph and unused subroutine removal in optimizer
|
2021-10-20 22:24:10 +02:00 |
|
Irmen de Jong
|
82d20dea39
|
a few comment and TODO cleanups.
remove remark about chars UBYTE type, kotlin's closest native type that can contain 0-255 is a short.
|
2021-10-19 23:20:34 +02:00 |
|
Irmen de Jong
|
804bb06859
|
clarified isInRegularRAM() by making it an extension method on AssignTarget
|
2021-10-19 22:36:05 +02:00 |
|
Irmen de Jong
|
5afa7e53f8
|
got rid of program arg for isInRegularRAM
|
2021-10-19 22:30:30 +02:00 |
|
Irmen de Jong
|
552e0c2248
|
rename mainModule to toplevelModule.
failed module no longer retains in the Ast.
improved some tests on that.
|
2021-10-19 21:49:05 +02:00 |
|
Irmen de Jong
|
502bf90007
|
comments
|
2021-10-19 01:12:28 +02:00 |
|
Irmen de Jong
|
aea364e43d
|
paths are now always relative to the current directory. Fixes #64
|
2021-10-16 14:26:33 +02:00 |
|
Irmen de Jong
|
06defd0cb0
|
paths are now always relative
|
2021-10-16 02:43:22 +02:00 |
|
Irmen de Jong
|
16ed68c1ec
|
Module.name is now derived back from the source's origin string
|
2021-10-14 23:58:14 +02:00 |
|
Irmen de Jong
|
e63cf660c6
|
petscii now use Result instead of Either
|
2021-10-13 23:22:46 +02:00 |
|
Irmen de Jong
|
aaff484306
|
refactor executeImportDirective
|
2021-10-13 23:14:27 +02:00 |
|
Irmen de Jong
|
0447b3e4cc
|
remove testcase that attempted to check invalid %import syntax.
we only allow unquoted names, without filename suffix, in %import.
|
2021-10-13 22:10:35 +02:00 |
|
Irmen de Jong
|
d790878af6
|
enabled test
|
2021-10-13 20:28:42 +02:00 |
|
Irmen de Jong
|
6070afa6b6
|
cleanup SourceCode class
|
2021-10-13 19:16:01 +02:00 |
|
Irmen de Jong
|
6b8c3ef614
|
renamed command line option -libdirs to -srcdirs
this more clearly separates this meaning from the internal library modules
|
2021-10-13 18:16:51 +02:00 |
|
Irmen de Jong
|
66574d058a
|
renamed InferredType.typeOrElse to getOr()
this is closer to the convention of most functional return types
|
2021-10-13 00:21:38 +02:00 |
|
Irmen de Jong
|
1c7c67060d
|
better result and error handling for importModule()
|
2021-10-12 23:54:48 +02:00 |
|
Irmen de Jong
|
9827ee97ad
|
better returnvalue/errorhandling for Petscii encoding
|
2021-10-12 23:26:45 +02:00 |
|
Irmen de Jong
|
e5a1b37981
|
simplify
|
2021-10-12 01:22:17 +02:00 |
|
Irmen de Jong
|
30aa72dc8e
|
fix unittest and use kotlin.test method to test for exceptions
|
2021-10-11 21:22:06 +02:00 |
|