mirror of
https://github.com/gbdev/rgbds.git
synced 2025-11-20 10:12:06 +00:00
Implement ++ operator for string concatenation (#1698)
This commit is contained in:
@@ -3,6 +3,5 @@ warning: equs-newline.asm(3): [-Wuser]
|
||||
while expanding symbol "ACT"
|
||||
warning: equs-newline.asm(3): [-Wuser]
|
||||
Second
|
||||
while expanding symbol "ACT"
|
||||
warning: equs-newline.asm(4): [-Wuser]
|
||||
Third
|
||||
|
||||
26
test/asm/string-concat.asm
Normal file
26
test/asm/string-concat.asm
Normal file
@@ -0,0 +1,26 @@
|
||||
SECTION "test", ROM0
|
||||
|
||||
MACRO test
|
||||
assert !strcmp(\1, \2)
|
||||
ENDM
|
||||
|
||||
test "a"++"b", "ab"
|
||||
test "a"++""++"b", "ab"
|
||||
test "a"++"b", strcat("a", "b")
|
||||
test "a"++"b"++"c", strcat("a","b","c")
|
||||
test "" ++ "", ""
|
||||
test strupr("a") ++ strlwr("B"), "Ab"
|
||||
|
||||
def str equs "hi"
|
||||
test #str ++ strupr(#str), "hiHI"
|
||||
test "a" ++ """b""" ++ strupr("c") ++ strslice(#str, 0, 0), "abC"
|
||||
|
||||
charmap "a", 1
|
||||
charmap "b", 2
|
||||
charmap "ab", 12
|
||||
assert "a" + "b" == 3
|
||||
assert "a" ++ "b" == 12
|
||||
|
||||
; errors
|
||||
assert 2 ++ 2 == 4
|
||||
ld a, [hl++]
|
||||
5
test/asm/string-concat.err
Normal file
5
test/asm/string-concat.err
Normal file
@@ -0,0 +1,5 @@
|
||||
error: string-concat.asm(25):
|
||||
syntax error, unexpected ++
|
||||
error: string-concat.asm(26):
|
||||
syntax error, unexpected ++, expecting ] or + or -
|
||||
error: Assembly aborted (2 errors)!
|
||||
@@ -3,41 +3,30 @@ error: unique-id.asm(11):
|
||||
while expanding symbol "warn_unique"
|
||||
warning: unique-id.asm(11): [-Wuser]
|
||||
!
|
||||
while expanding symbol "warn_unique"
|
||||
warning: unique-id.asm(12) -> unique-id.asm::m(4): [-Wuser]
|
||||
_u1!
|
||||
while expanding symbol "warn_unique"
|
||||
warning: unique-id.asm(12) -> unique-id.asm::m(5) -> unique-id.asm::m::REPT~1(6): [-Wuser]
|
||||
_u2!
|
||||
while expanding symbol "warn_unique"
|
||||
warning: unique-id.asm(12) -> unique-id.asm::m(5) -> unique-id.asm::m::REPT~2(6): [-Wuser]
|
||||
_u3!
|
||||
while expanding symbol "warn_unique"
|
||||
warning: unique-id.asm(12) -> unique-id.asm::m(8): [-Wuser]
|
||||
_u1!
|
||||
while expanding symbol "warn_unique"
|
||||
error: unique-id.asm(13):
|
||||
'\@' cannot be used outside of a macro or REPT/FOR block
|
||||
while expanding symbol "warn_unique"
|
||||
warning: unique-id.asm(13): [-Wuser]
|
||||
!
|
||||
while expanding symbol "warn_unique"
|
||||
warning: unique-id.asm(14) -> unique-id.asm::m(4): [-Wuser]
|
||||
_u4!
|
||||
while expanding symbol "warn_unique"
|
||||
warning: unique-id.asm(14) -> unique-id.asm::m(5) -> unique-id.asm::m::REPT~1(6): [-Wuser]
|
||||
_u5!
|
||||
while expanding symbol "warn_unique"
|
||||
warning: unique-id.asm(14) -> unique-id.asm::m(5) -> unique-id.asm::m::REPT~2(6): [-Wuser]
|
||||
_u6!
|
||||
while expanding symbol "warn_unique"
|
||||
warning: unique-id.asm(14) -> unique-id.asm::m(8): [-Wuser]
|
||||
_u4!
|
||||
while expanding symbol "warn_unique"
|
||||
error: unique-id.asm(15):
|
||||
'\@' cannot be used outside of a macro or REPT/FOR block
|
||||
while expanding symbol "warn_unique"
|
||||
warning: unique-id.asm(15): [-Wuser]
|
||||
!
|
||||
while expanding symbol "warn_unique"
|
||||
error: Assembly aborted (3 errors)!
|
||||
|
||||
Reference in New Issue
Block a user