Irmen de Jong
|
4dc82f2c83
|
preparing for statically allocating struct instances
|
2025-05-03 19:00:27 +02:00 |
|
Irmen de Jong
|
1ba5587404
|
allow syntax for declaring variables with struct instance type
|
2025-05-03 16:14:22 +02:00 |
|
Irmen de Jong
|
835c4b6da3
|
allow multi-field declarations in structs, get rid of . -> ^^ rewrite
|
2025-05-03 12:32:29 +02:00 |
|
Irmen de Jong
|
dbd955b61e
|
tweak typecheck and better code for constant indexes in pointer derefs
|
2025-05-02 23:44:26 +02:00 |
|
Irmen de Jong
|
d20e2fd88c
|
structs will be a new major version of the compiler
|
2025-05-02 22:25:26 +02:00 |
|
Irmen de Jong
|
e0dea89477
|
added support for ptr[x].field
|
2025-05-02 22:16:20 +02:00 |
|
Irmen de Jong
|
6fc2902895
|
fixing ptr traversal typecheck issues
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
c96e4b40d4
|
building syntax support for ptr[x].field
attempting to do this by making '.' an expression operator
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
37da3e2170
|
parser
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
2661d3c489
|
allow array syntax on pointers
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
b89bbb9281
|
allow pointers in subroutines params and return values
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
696bf636ed
|
better parsing of directive names results in better error messages when an invalid one is found
|
2025-05-02 00:41:42 +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
|
0162e7a0c1
|
fix the scoping problems on subtypes
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
6ce099f176
|
IR: fix ptr type checks and struct field assignment errors
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
476a4bac8e
|
IR: LOADI allows r1 and r2 to be the same for pointer chain dereference optimalization
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
63a410a6df
|
implicit cast to bool for numeric or pointers as condition arguments (to if, while, until)
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
cca27faa3b
|
fix pointer value assignment (not dereferencing the actual pointer)
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
803e6bd81a
|
fix uword vs pointer type errors and casts
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
88269628a2
|
had to turn ^type syntax into ^^type to avoid confusion with the eor operator once again
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
b920d553a0
|
make address-of dereference work
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
5e2d0d0dfc
|
fix param order of AssignTarget
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
2ae3bd68eb
|
more pointer dereferencing for chains
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
9c183f27eb
|
pointer dereferencing for chains
|
2025-05-02 00:41:42 +02:00 |
|
Irmen de Jong
|
8046023e82
|
pointer dereferencing for simple types (read and write)
|
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
|
7eb079050c
|
fix strings.hash() on 6502 CPU's. NOTE: now takes string pointer in AY instead of R0 on all platforms
v11.3.1
|
2025-05-01 22:47:43 +02:00 |
|
Irmen de Jong
|
2fdd5543b2
|
release 11.3.1
|
2025-04-30 22:40:54 +02:00 |
|
Irmen de Jong
|
d04164c0a6
|
fix const evaluation of bitwise logical expressions (&, |, ^, <<, >>) of signed operands
|
2025-04-30 22:27:31 +02:00 |
|
Irmen de Jong
|
b047731f82
|
removed some redundant arguments
|
2025-04-25 23:27:06 +02:00 |
|
Irmen de Jong
|
4d91f92a2e
|
clearer error message
|
2025-04-25 19:38:45 +02:00 |
|
Irmen de Jong
|
98505d27b1
|
IR: fix invalid removal of label chunks and include asmsubs when looking for labels
|
2025-04-24 23:30:51 +02:00 |
|
Irmen de Jong
|
cd63a58ad9
|
IR: get rid of problematic PREPARECALL pseudo instruction
|
2025-04-24 22:32:40 +02:00 |
|
Irmen de Jong
|
170f8dd092
|
IR: new CALLFAR instructions to support callfar into another bank
|
2025-04-24 21:17:48 +02:00 |
|
Irmen de Jong
|
619dcb6a84
|
fix error in IR register typing
|
2025-04-24 20:50:19 +02:00 |
|
Irmen de Jong
|
99ae8ea52e
|
code cleanup
|
2025-04-24 18:51:03 +02:00 |
|
Irmen de Jong
|
dc031c30eb
|
add -version option to just print the compiler version and then exit
|
2025-04-24 18:13:35 +02:00 |
|
Irmen de Jong
|
1e702439b7
|
avoid JDK 21+/Kotlin method conflict of removeLast()/removeFirst()
background: see https://www.reddit.com/r/androiddev/comments/1gspjrs/dont_use_kotlins_removefirst_and_removelast_when/
https://youtrack.jetbrains.com/issue/KT-71375/Prevent-Kotlins-removeFirst-and-removeLast-from-causing-crashes-on-Android-14-and-below-after-upgrading-to-Android-API-Level-35
it's about Android but the problem also occurs on desktop JDKs for example when running a Java21 compiled prog8 with Java17
|
2025-04-24 18:11:42 +02:00 |
|
Irmen de Jong
|
8debc42381
|
slightly stricter assignment type compatibility checking
|
2025-04-24 15:05:35 +02:00 |
|
Irmen de Jong
|
532d719089
|
more optimal math.randrange() routines
|
2025-04-24 04:04:14 +02:00 |
|
Irmen de Jong
|
b40860aca4
|
get rid of RTS after JMP
|
2025-04-23 17:08:16 +02:00 |
|
Irmen de Jong
|
2cbe6b5f7f
|
info message when more optimal goto array[idx] is possible
|
2025-04-23 16:59:18 +02:00 |
|
Irmen de Jong
|
d2cc7ccdfa
|
remove redundant variable=0 initializations (BSS clear takes care of them)
|
2025-04-23 14:45:38 +02:00 |
|
Irmen de Jong
|
2cb183c6d8
|
fix regression for goto array[idx] on 6502 cpu which doesn't have jmp (ptr,x)
|
2025-04-23 02:56:10 +02:00 |
|
Irmen de Jong
|
84026b105f
|
smaller code for goto nosplitptrarray[index]
v11.3
|
2025-04-22 20:01:16 +02:00 |
|
Irmen de Jong
|
a4d0589f10
|
fix errors like parse error still printed in color when -plaintext is set
|
2025-04-22 19:26:11 +02:00 |
|
Irmen de Jong
|
e375f6afce
|
fix diskio.f_read() returning 1 less than the actual size read.
fix diskio.f_read_all() more robust error status end of loop checking.
|
2025-04-21 05:02:16 +02:00 |
|
Irmen de Jong
|
5a7bc04816
|
update docs about library jump table
|
2025-04-19 13:49:03 +02:00 |
|
Irmen de Jong
|
bd1894580e
|
allow floating point value as part of a multi-value return
|
2025-04-18 22:45:05 +02:00 |
|
Irmen de Jong
|
9e694c0337
|
doc
|
2025-04-18 21:11:27 +02:00 |
|