This commit is contained in:
Irmen de Jong 2019-04-12 00:54:04 +02:00
parent 4462def8ea
commit cd0fa9405a
2 changed files with 2 additions and 3 deletions

View File

@ -333,8 +333,7 @@ private class AstChecker(private val namespace: INameScope,
if(subroutine.asmClobbers.intersect(regCounts.keys).isNotEmpty())
err("a return register is also in the clobber list")
} else {
// TODO: non-asm subroutines can only take numeric arguments for now. (not strings and arrays)
// TODO: AddressOf: can this be improved now that we have '&' ?
// TODO: non-asm subroutines can only take numeric arguments for now. (not strings and arrays) Maybe this can be improved now that we have '&' ?
// the way string params are treated is almost okay (their address is passed) but the receiving subroutine treats it as an integer rather than referring back to the original string.
// the way array params are treated is buggy; it thinks the subroutine needs a byte parameter in place of a byte[] ...
// This is not easy to fix because strings and arrays are treated a bit simplistic (a "virtual" pointer to the value on the heap)

View File

@ -416,7 +416,7 @@ waitkey:
0,0,0,0,
0,0,0,0]
; @todo would be nice to have a pointer type, like so:
; @todo use the '&' operator to create an array of pointers and use that, like so:
; uword[7] blocks = [&blockI, &blockJ, &blockL, &blockO, &blockS, &blockT, &blockZ]
sub newCurrentBlock(ubyte block) {