mirror of
https://github.com/gbdev/rgbds.git
synced 2025-11-25 20:42:07 +00:00
@@ -26,4 +26,5 @@ def constant equ 6*7 ; fails
|
||||
redef string equs "there"
|
||||
println "{string}"
|
||||
|
||||
redef constant equ 6*9 ; syntax error
|
||||
redef constant equ 6*9
|
||||
println constant
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
ERROR: def.asm(23):
|
||||
'constant' already defined at def.asm(10)
|
||||
ERROR: def.asm(29):
|
||||
syntax error, unexpected EQU, expecting SET or = or EQUS
|
||||
error: Assembly aborted (2 errors)!
|
||||
error: Assembly aborted (1 error)!
|
||||
|
||||
@@ -7,3 +7,4 @@ here
|
||||
$0 $1 $5 $9
|
||||
$2A
|
||||
there
|
||||
$36
|
||||
|
||||
23
test/asm/redef-equ.asm
Normal file
23
test/asm/redef-equ.asm
Normal file
@@ -0,0 +1,23 @@
|
||||
DEF n EQU 0
|
||||
REDEF n EQU 1
|
||||
; prints "$1"
|
||||
PRINTLN n
|
||||
|
||||
list: MACRO
|
||||
LIST_NAME EQUS "\1"
|
||||
DEF LENGTH_{LIST_NAME} EQU 0
|
||||
ENDM
|
||||
|
||||
item: MACRO
|
||||
REDEF LENGTH_{LIST_NAME} EQU LENGTH_{LIST_NAME} + 1
|
||||
DEF {LIST_NAME}_{d:LENGTH_{LIST_NAME}} EQU \1
|
||||
ENDM
|
||||
|
||||
list SQUARES
|
||||
item 1
|
||||
item 4
|
||||
item 9
|
||||
println LENGTH_SQUARES, SQUARES_1, SQUARES_2, SQUARES_3
|
||||
|
||||
N EQUS "X"
|
||||
REDEF N EQU 42
|
||||
3
test/asm/redef-equ.err
Normal file
3
test/asm/redef-equ.err
Normal file
@@ -0,0 +1,3 @@
|
||||
ERROR: redef-equ.asm(23):
|
||||
'N' already defined as non-EQU at redef-equ.asm(22)
|
||||
error: Assembly aborted (1 error)!
|
||||
2
test/asm/redef-equ.out
Normal file
2
test/asm/redef-equ.out
Normal file
@@ -0,0 +1,2 @@
|
||||
$1
|
||||
$3$1$4$9
|
||||
5
test/asm/reference-undefined-equs.asm
Normal file
5
test/asm/reference-undefined-equs.asm
Normal file
@@ -0,0 +1,5 @@
|
||||
SECTION "sec", ROM0[0]
|
||||
db s1, s2
|
||||
|
||||
def s1 equs "1"
|
||||
redef s2 equs "2"
|
||||
5
test/asm/reference-undefined-equs.err
Normal file
5
test/asm/reference-undefined-equs.err
Normal file
@@ -0,0 +1,5 @@
|
||||
ERROR: reference-undefined-equs.asm(4):
|
||||
's1' already referenced at reference-undefined-equs.asm(2)
|
||||
ERROR: reference-undefined-equs.asm(5):
|
||||
's2' already referenced at reference-undefined-equs.asm(2)
|
||||
error: Assembly aborted (2 errors)!
|
||||
0
test/asm/reference-undefined-equs.out
Normal file
0
test/asm/reference-undefined-equs.out
Normal file
@@ -1,4 +1,7 @@
|
||||
SECTION "sec", ROM0[0]
|
||||
db X
|
||||
db x1, x2, y1, y2
|
||||
|
||||
X = 2
|
||||
def x1 = 1
|
||||
redef x2 = 2
|
||||
def y1 equ 3
|
||||
redef y2 equ 4
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
Reference in New Issue
Block a user