mirror of
https://github.com/gbdev/rgbds.git
synced 2025-11-20 18:22:07 +00:00
Add test for {interpolation} after two double quotes
This is an edge case of how the lexer changes behavior when reading string literals versus reading unquoted source code. Three double quotes would begin a multi-line string literal, but just two are still ambiguous, so it has to `peek()` to see whether it's inside a multi-line string literal or outside an empty regular string.
This commit is contained in:
8
test/asm/interpolation-after-string.asm
Normal file
8
test/asm/interpolation-after-string.asm
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
def hello = $11
|
||||||
|
def goodbye = $22
|
||||||
|
|
||||||
|
def greeting equs "hello"
|
||||||
|
println ""{greeting}
|
||||||
|
|
||||||
|
def string equs "\"goodbye\""
|
||||||
|
println ""{goodbye}""
|
||||||
14
test/asm/interpolation-after-string.err
Normal file
14
test/asm/interpolation-after-string.err
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
error: interpolation-after-string.asm(5):
|
||||||
|
Unknown character '{'
|
||||||
|
error: interpolation-after-string.asm(5):
|
||||||
|
syntax error, unexpected symbol
|
||||||
|
while expanding symbol "greeting"
|
||||||
|
error: interpolation-after-string.asm(5):
|
||||||
|
Unknown character '}'
|
||||||
|
error: interpolation-after-string.asm(8):
|
||||||
|
Unknown character '{'
|
||||||
|
error: interpolation-after-string.asm(8):
|
||||||
|
syntax error, unexpected symbol
|
||||||
|
error: interpolation-after-string.asm(8):
|
||||||
|
Unknown character '}'
|
||||||
|
Assembly aborted with 6 errors!
|
||||||
Reference in New Issue
Block a user