Irmen de Jong
|
bd72eaad4c
|
Merge branch 'refs/heads/master' into structs
# Conflicts:
# examples/test.p8
|
2025-06-18 17:53:20 +02:00 |
|
Irmen de Jong
|
b5d1575823
|
added boolean typed versions of the cx16.r0-r15 virtual registers
|
2025-06-18 00:05:10 +02:00 |
|
Irmen de Jong
|
49a4d9ba37
|
allow str as struct field type (^^ubyte) and strings in struct initializers
|
2025-06-15 00:29:59 +02:00 |
|
Irmen de Jong
|
4c0e6e2640
|
fix split/nosplit pointer arrays, replace ubyteptr^^ with @(ubyteptr), fix double dereference
|
2025-05-29 00:36:55 +02:00 |
|
Irmen de Jong
|
db6c887795
|
Merge branch 'master' into structs
# Conflicts:
# compiler/test/ast/TestVariousCompilerAst.kt
|
2025-05-21 00:27:45 +02:00 |
|
Irmen de Jong
|
cf7bea0985
|
cleanup RTS insertion and ast postprocessing before assembly generation
|
2025-05-21 00:19:50 +02:00 |
|
Irmen de Jong
|
924e28e9b3
|
Merge branch 'master' into structs
# Conflicts:
# codeGenCpu6502/src/prog8/codegen/cpu6502/AsmGen.kt
# compiler/src/prog8/compiler/astprocessing/CodeDesugarer.kt
# compiler/src/prog8/compiler/astprocessing/SimplifiedAstMaker.kt
# compilerAst/src/prog8/ast/AstToSourceTextConverter.kt
# compilerAst/src/prog8/ast/antlr/Antlr2Kotlin.kt
# compilerAst/src/prog8/ast/walk/AstWalker.kt
# compilerAst/src/prog8/ast/walk/IAstVisitor.kt
# docs/source/todo.rst
# examples/test.p8
# parser/src/main/antlr/Prog8ANTLR.g4
|
2025-05-11 23:23:06 +02:00 |
|
Irmen de Jong
|
31c1bf8bc5
|
added on..goto/call statement
|
2025-05-11 21:37:44 +02:00 |
|
Irmen de Jong
|
246e4f35a6
|
Merge branch 'master' into structs
# Conflicts:
# codeGenCpu6502/src/prog8/codegen/cpu6502/assignment/AssignmentAsmGen.kt
# codeGenIntermediate/src/prog8/codegen/intermediate/ExpressionGen.kt
# compiler/test/ast/TestConst.kt
# docs/source/todo.rst
# examples/test.p8
|
2025-05-10 16:36:16 +02:00 |
|
Irmen de Jong
|
99b9370178
|
fix various bugs around word-indexing combined with address-of: &buffer[2000]
|
2025-05-10 16:22:05 +02:00 |
|
Irmen de Jong
|
40952a788a
|
PtSub: params and returns now as children (in PtSignature node) for easier Ast walking
PtPointerDeref: same but for its start identifier
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
e328520588
|
initial struct and typed pointer support
|
2025-05-02 00:41:40 +02:00 |
|
Irmen de Jong
|
b047731f82
|
removed some redundant arguments
|
2025-04-25 23:27:06 +02:00 |
|
Irmen de Jong
|
1dc412eb90
|
simplify
|
2025-03-18 23:50:51 +01:00 |
|
Irmen de Jong
|
3770a4fe0c
|
easier datatype notation by just using the type objects directly
|
2025-03-18 23:33:04 +01:00 |
|
Irmen de Jong
|
79cda544c8
|
allow integer range as when choice value
|
2025-03-17 22:26:27 +01:00 |
|
Irmen de Jong
|
7668a3c660
|
use kotest tempdir instead of hardcoded output directory
|
2025-03-14 01:18:33 +01:00 |
|
Irmen de Jong
|
d0c184c7de
|
remove needless 0 initializations of multi decl's
fix outdated text
|
2025-01-23 22:42:58 +01:00 |
|
Irmen de Jong
|
0c882836d9
|
support multi-value variable initialization: ubyte a,b,c = multi()
|
2025-01-18 22:08:31 +01:00 |
|
Irmen de Jong
|
ca9422bbe9
|
be able to parse multiple return values (sub + return)
|
2025-01-07 01:51:54 +01:00 |
|
Irmen de Jong
|
2727a4dcb3
|
tweak DataType class and memsizer related to subtypes/elementtypes
|
2024-12-23 17:28:25 +01:00 |
|
Irmen de Jong
|
5482ac0302
|
simplify grammar of @tags, also improving their error message
|
2024-12-21 01:44:58 +01:00 |
|
Irmen de Jong
|
02f3f5d0f5
|
@split is back to force splitting of word arrays
|
2024-12-16 14:51:32 +01:00 |
|
Irmen de Jong
|
8f799567cf
|
make word arrays split by default (w.i.p.)
|
2024-12-15 08:12:34 +01:00 |
|
Irmen de Jong
|
2e303041c1
|
fix crash when using undefined variable in for loop
|
2024-12-06 21:50:22 +01:00 |
|
Irmen de Jong
|
1a1ab0dac6
|
changed the data type system to composite types
|
2024-12-05 21:48:51 +01:00 |
|
Irmen de Jong
|
5c6bd9c091
|
register params support for normal subroutines
|
2024-11-24 15:56:54 +01:00 |
|
Irmen de Jong
|
a874aec6a1
|
implementing const long
|
2024-11-20 23:22:56 +01:00 |
|
Irmen de Jong
|
e0e01f794e
|
fix dt compiler crash
|
2024-11-17 17:39:36 +01:00 |
|
Irmen de Jong
|
54fccec7d7
|
now also support using defer inside if statements
|
2024-11-12 00:11:19 +01:00 |
|
Irmen de Jong
|
3ba1d00a7c
|
add unit test for @dirty variables
|
2024-11-09 13:31:54 +01:00 |
|
Irmen de Jong
|
9864abd393
|
romsub keyword is now extsub
|
2024-11-06 22:14:53 +01:00 |
|
Irmen de Jong
|
89425088ce
|
taking address of a split word array is no longer a fatal error but a warning and the array is turned back into a normal word array.
|
2024-11-01 20:18:31 +01:00 |
|
Irmen de Jong
|
76b05cb5fd
|
fix chained aliasing
|
2024-10-28 18:35:23 +01:00 |
|
Irmen de Jong
|
a82f211f9a
|
added alias statement
|
2024-10-28 00:36:10 +01:00 |
|
Irmen de Jong
|
326eab3dd1
|
unit test for defer, describe defer and if expression in docs
|
2024-10-22 22:19:49 +02:00 |
|
Irmen de Jong
|
4c843571ea
|
fix syntax error check for missing return statement
|
2024-09-26 01:52:33 +02:00 |
|
Irmen de Jong
|
966b017670
|
tweaks
|
2024-07-22 18:20:01 +02:00 |
|
Irmen de Jong
|
2aae1f5e30
|
stricter checks for negative array indexing
|
2024-07-20 22:37:03 +02:00 |
|
Irmen de Jong
|
62afd3342e
|
void syntax check, fixes #135
|
2024-05-18 17:15:31 +02:00 |
|
Irmen de Jong
|
5d7ddebcad
|
fix bool to uword cast in 6502 codegen
|
2024-04-11 00:34:53 +02:00 |
|
Irmen de Jong
|
6ed9899dc7
|
smarter desugaring of ubyte x,y
|
2024-04-07 23:36:46 +02:00 |
|
Irmen de Jong
|
f40b7b62bb
|
updated unit tests and some basic changes for them
|
2024-03-02 23:19:20 +01:00 |
|
Irmen de Jong
|
87c46ba730
|
check boolean array size mismatch.
check for weird string assignment.
check for X16 problematic cpu instructions rmb, smb, bbr, bbs.
tweak number node equality wrt bool type
|
2024-01-21 19:15:22 +01:00 |
|
Irmen de Jong
|
45a9751217
|
fix type of optimized lsb() / mkword() arguments when signed.
printast1 command line option now also works in case of compilation errors.
|
2024-01-10 23:57:44 +01:00 |
|
Irmen de Jong
|
f8084e7955
|
fix const replacement optimization error on memory mapped variable
|
2024-01-07 18:48:18 +01:00 |
|
Irmen de Jong
|
f2daa17b92
|
tweak some not optimizations
cleanup IR typestring
|
2024-01-05 17:49:56 +01:00 |
|
Irmen de Jong
|
6d9fccacb1
|
boolean not expression tweaks and optimizations
|
2024-01-05 13:32:16 +01:00 |
|
Irmen de Jong
|
56ba24962c
|
fixed 'not not x' optimization to just 'x'
|
2024-01-04 15:02:21 +01:00 |
|
Irmen de Jong
|
d446b57d05
|
fix unittest
|
2024-01-01 16:11:50 +01:00 |
|