Separate stdout and stderr in tests

POSIX leaves undefined the order of output if stderr is injected into stdout,
and in practice it differs on Windows (Linux buffers both streams separately,
Windows interleaves them as they arrive without buffering).
This should help testing on other platforms
This commit is contained in:
ISSOtm
2020-01-08 16:46:57 +01:00
parent add07259f4
commit 5a06fad31e
77 changed files with 210 additions and 201 deletions

View File

View File

@@ -0,0 +1,4 @@
ERROR: bracketed-symbols.asm(16):
Print types are only allowed for numbers
ERROR: bracketed-symbols.asm(20):
Expression must have a constant value

View File

@@ -1,7 +1,3 @@
ERROR: bracketed-symbols.asm(16):
Print types are only allowed for numbers
ERROR: bracketed-symbols.asm(20):
Expression must have a constant value
$2A $2A
2a 2a
2A 2A

View File

@@ -0,0 +1,4 @@
warning: correct-line-number.asm(5): [-Wuser]
Am I geting ahead of myself?
warning: correct-line-number.asm(11): [-Wuser]
Hopefully not.

View File

@@ -1,4 +0,0 @@
warning: correct-line-number.asm(5): [-Wuser]
Am I geting ahead of myself?
warning: correct-line-number.asm(11): [-Wuser]
Hopefully not.

View File

@@ -0,0 +1,2 @@
ERROR: divzero-instr.asm(2):
Division by zero

View File

@@ -1,2 +0,0 @@
ERROR: divzero-instr.asm(2):
Division by zero

View File

@@ -0,0 +1,4 @@
ERROR: divzero-section-bank.asm(1):
Invalid integer constant
ERROR: divzero-section-bank.asm(1):
Division by zero

View File

@@ -1,4 +0,0 @@
ERROR: divzero-section-bank.asm(1):
Invalid integer constant
ERROR: divzero-section-bank.asm(1):
Division by zero

0
test/asm/equ-charmap.err Normal file
View File

View File

@@ -0,0 +1,66 @@
ERROR: equs-recursion.asm(2):
Recursion limit (64) exceeded
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"

View File

@@ -1,66 +0,0 @@
ERROR: equs-recursion.asm(2):
Recursion limit (64) exceeded
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"
while expanding symbol "recurse"

View File

@@ -0,0 +1,2 @@
ERROR: garbage_char.asm(1):
Found garbage character: 0xFF

View File

@@ -1,2 +0,0 @@
ERROR: garbage_char.asm(1):
Found garbage character: 0xFF

View File

@@ -0,0 +1,2 @@
ERROR: include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1):
Recursion limit (64) exceeded

View File

@@ -1,2 +0,0 @@
ERROR: include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1) -> include-recursion.asm(1):
Recursion limit (64) exceeded

View File

@@ -0,0 +1,5 @@
ERROR: label-macro-arg.asm(45) -> label-macro-arg.asm::test_char(31):
Label "sizeof_" created outside of a SECTION
while expanding symbol "VAR_DEF"
ERROR: label-macro-arg.asm(45) -> label-macro-arg.asm::test_char(31):
Macro 'something' not defined

View File

@@ -1,8 +1,3 @@
ERROR: label-macro-arg.asm(45) -> label-macro-arg.asm::test_char(31):
Label "sizeof_" created outside of a SECTION
while expanding symbol "VAR_DEF"
ERROR: label-macro-arg.asm(45) -> label-macro-arg.asm::test_char(31):
Macro 'something' not defined
$5 $5
$6 $6
$7 $7

View File

@@ -0,0 +1,3 @@
ERROR: label-outside-section.asm(1):
Label "bad" created outside of a SECTION
error: Assembly aborted (1 errors)!

View File

@@ -1,4 +1 @@
ERROR: label-outside-section.asm(1):
Label "bad" created outside of a SECTION
error: Assembly aborted (1 errors)!
OK! OK!

View File

@@ -0,0 +1,3 @@
ERROR: label-redefinition.asm(7):
'Sym' already defined in label-redefinition.asm::m(6)
error: Assembly aborted (1 errors)!

View File

@@ -1,3 +0,0 @@
ERROR: label-redefinition.asm(7):
'Sym' already defined in label-redefinition.asm::m(6)
error: Assembly aborted (1 errors)!

View File

View File

View File

@@ -0,0 +1,3 @@
ERROR: line-continuation-whitespace.asm(7):
Label "foo" created outside of a SECTION
error: Assembly aborted (1 errors)!

View File

@@ -1,3 +0,0 @@
ERROR: line-continuation-whitespace.asm(7):
Label "foo" created outside of a SECTION
error: Assembly aborted (1 errors)!

View File

@@ -0,0 +1,3 @@
ERROR: line-continuation.asm(7):
Label "foo" created outside of a SECTION
error: Assembly aborted (1 errors)!

View File

@@ -1,3 +0,0 @@
ERROR: line-continuation.asm(7):
Label "foo" created outside of a SECTION
error: Assembly aborted (1 errors)!

View File

@@ -0,0 +1,2 @@
ERROR: local-ref-without-parent.asm(3):
Local label reference '.test' in main scope

View File

@@ -1,2 +0,0 @@
ERROR: local-ref-without-parent.asm(3):
Local label reference '.test' in main scope

View File

@@ -0,0 +1,2 @@
ERROR: local-without-parent.asm(2):
Local label in main scope

View File

@@ -1,2 +0,0 @@
ERROR: local-without-parent.asm(2):
Local label in main scope

View File

@@ -0,0 +1,3 @@
ERROR: local-wrong-parent.asm(5):
Not currently in the scope of 'WrongParent'
error: Assembly aborted (1 errors)!

View File

@@ -1,3 +0,0 @@
ERROR: local-wrong-parent.asm(5):
Not currently in the scope of 'WrongParent'
error: Assembly aborted (1 errors)!

View File

4
test/asm/macro-@.err Normal file
View File

@@ -0,0 +1,4 @@
ERROR: macro-@.asm(1):
Label "foo" created outside of a SECTION
ERROR: macro-@.asm(1):
Macro '@' not defined

View File

@@ -1,4 +0,0 @@
ERROR: macro-@.asm(1):
Label "foo" created outside of a SECTION
ERROR: macro-@.asm(1):
Macro '@' not defined

View File

@@ -0,0 +1,2 @@
ERROR: macro-recursion.asm(4) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2):
Recursion limit (64) exceeded

View File

@@ -1,2 +0,0 @@
ERROR: macro-recursion.asm(4) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2) -> macro-recursion.asm::recurse(2):
Recursion limit (64) exceeded

View File

@@ -0,0 +1,6 @@
ERROR: multiple-charmaps.asm(100) -> multiple-charmaps.asm::new_(7):
Charmap 'map1' already exists
ERROR: multiple-charmaps.asm(102) -> multiple-charmaps.asm::set_(13):
Charmap 'map5' doesn't exist
ERROR: multiple-charmaps.asm(104) -> multiple-charmaps.asm::pop_(23):
No entries in the charmap stack

View File

@@ -1,9 +1,3 @@
ERROR: multiple-charmaps.asm(100) -> multiple-charmaps.asm::new_(7):
Charmap 'map1' already exists
ERROR: multiple-charmaps.asm(102) -> multiple-charmaps.asm::set_(13):
Charmap 'map5' doesn't exist
ERROR: multiple-charmaps.asm(104) -> multiple-charmaps.asm::pop_(23):
No entries in the charmap stack
main charmap main charmap
$0 $0
newcharmap map1 newcharmap map1

View File

View File

@@ -0,0 +1,2 @@
ERROR: nested-brackets.asm(5):
Missing }

View File

@@ -1,3 +1 @@
ERROR: nested-brackets.asm(5):
Missing }
OK OK

0
test/asm/nested-if.err Normal file
View File

View File

@@ -0,0 +1,2 @@
ERROR: null-in-macro.asm(2):
Found null character

View File

@@ -1,2 +0,0 @@
ERROR: null-in-macro.asm(2):
Found null character

View File

12
test/asm/overflow.err Normal file
View File

@@ -0,0 +1,12 @@
warning: overflow.asm(24): [-Wdiv]
Division of min value by -1
warning: overflow.asm(25): [-Wdiv]
Division of min value by -1
warning: overflow.asm(34): [-Wshift]
Left shift of negative value: -1
warning: overflow.asm(35): [-Wshift]
Left shift of negative value: -1
warning: overflow.asm(39): [-Wlarge-constant]
Integer constant '4294967296' is too large
warning: overflow.asm(42): [-Wlarge-constant]
Graphics constant '`333333333' is too long

View File

@@ -1,15 +1,3 @@
warning: overflow.asm(24): [-Wdiv]
Division of min value by -1
warning: overflow.asm(25): [-Wdiv]
Division of min value by -1
warning: overflow.asm(34): [-Wshift]
Left shift of negative value: -1
warning: overflow.asm(35): [-Wshift]
Left shift of negative value: -1
warning: overflow.asm(39): [-Wlarge-constant]
Integer constant '4294967296' is too large
warning: overflow.asm(42): [-Wlarge-constant]
Graphics constant '`333333333' is too long
$80000000 $80000000
$7FFFFFFF $7FFFFFFF
$80000000 $80000000

6
test/asm/pc-bank.err Normal file
View File

@@ -0,0 +1,6 @@
ERROR: pc-bank.asm(2):
Source address $2a00 not in $FF00 to $FFFF
ERROR: pc-bank.asm(11):
@'s bank is not known yet
ERROR: pc-bank.asm(11):
Non-constant expression

View File

@@ -1,8 +1,2 @@
ERROR: pc-bank.asm(2):
Source address $2a00 not in $FF00 to $FFFF
ERROR: pc-bank.asm(11):
@'s bank is not known yet
ERROR: pc-bank.asm(11):
Non-constant expression
@: $2A @: $2A
Str: $2A Str: $2A

View File

@@ -0,0 +1,2 @@
ERROR: pops-no-pushed-sections.asm(1):
No entries in the section stack

View File

@@ -1,2 +0,0 @@
ERROR: pops-no-pushed-sections.asm(1):
No entries in the section stack

View File

@@ -0,0 +1,4 @@
ERROR: pops-restore-no-section.asm(9):
Label "DisallowedContent" created outside of a SECTION
ERROR: pops-restore-no-section.asm(10):
Code generation before SECTION directive

View File

@@ -1,4 +0,0 @@
ERROR: pops-restore-no-section.asm(9):
Label "DisallowedContent" created outside of a SECTION
ERROR: pops-restore-no-section.asm(10):
Code generation before SECTION directive

View File

View File

@@ -0,0 +1,3 @@
ERROR: reference-undefined-sym.asm(4):
'X' already referenced at reference-undefined-sym.asm(2)
error: Assembly aborted (1 errors)!

View File

@@ -1,3 +0,0 @@
ERROR: reference-undefined-sym.asm(4):
'X' already referenced at reference-undefined-sym.asm(2)
error: Assembly aborted (1 errors)!

View File

View File

@@ -0,0 +1,2 @@
ERROR: remote-local-noexist.asm(7):
'Parent.child.fail' is a nonsensical reference to a nested local symbol

View File

@@ -1,2 +0,0 @@
ERROR: remote-local-noexist.asm(7):
'Parent.child.fail' is a nonsensical reference to a nested local symbol

View File

10
test/asm/rept-line-no.err Normal file
View File

@@ -0,0 +1,10 @@
warning: rept-line-no.asm(2): [-Wuser]
Line 2
warning: rept-line-no.asm(3) -> rept-line-no.asm::REPT~1(5): [-Wuser]
Line 5
warning: rept-line-no.asm(3) -> rept-line-no.asm::REPT~2(5): [-Wuser]
Line 5
warning: rept-line-no.asm(3) -> rept-line-no.asm::REPT~3(5): [-Wuser]
Line 5
warning: rept-line-no.asm(8): [-Wuser]
Line 8

View File

@@ -1,10 +0,0 @@
warning: rept-line-no.asm(2): [-Wuser]
Line 2
warning: rept-line-no.asm(3) -> rept-line-no.asm::REPT~1(5): [-Wuser]
Line 5
warning: rept-line-no.asm(3) -> rept-line-no.asm::REPT~2(5): [-Wuser]
Line 5
warning: rept-line-no.asm(3) -> rept-line-no.asm::REPT~3(5): [-Wuser]
Line 5
warning: rept-line-no.asm(8): [-Wuser]
Line 8

0
test/asm/strlen.err Normal file
View File

16
test/asm/strsub.err Normal file
View File

@@ -0,0 +1,16 @@
warning: strsub.asm(13) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 32
warning: strsub.asm(14) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 300
warning: strsub.asm(15) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Position starts at 1
warning: strsub.asm(15) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 300
warning: strsub.asm(16) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Position 4 is past the end of the string
warning: strsub.asm(17) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Position 4 is past the end of the string
warning: strsub.asm(17) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 1
warning: strsub.asm(20) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 10

View File

@@ -1,19 +1,3 @@
warning: strsub.asm(13) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 32
warning: strsub.asm(14) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 300
warning: strsub.asm(15) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Position starts at 1
warning: strsub.asm(15) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 300
warning: strsub.asm(16) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Position 4 is past the end of the string
warning: strsub.asm(17) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Position 4 is past the end of the string
warning: strsub.asm(17) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 1
warning: strsub.asm(20) -> strsub.asm::xstrsub(4): [-Wbuiltin-args]
STRSUB: Length too big: 10
A A
B B
C C

View File

@@ -0,0 +1,2 @@
ERROR: symbol-invalid-macro-arg.asm(1):
Invalid macro argument '\0' in symbol

View File

@@ -1,2 +0,0 @@
ERROR: symbol-invalid-macro-arg.asm(1):
Invalid macro argument '\0' in symbol

View File

@@ -0,0 +1,7 @@
ERROR: symbol-override.asm(6):
'W' already defined as constant at symbol-override.asm(5)
ERROR: symbol-override.asm(10):
'X' already defined as constant at symbol-override.asm(9)
ERROR: symbol-override.asm(14):
'Y' already defined as non-constant at symbol-override.asm(13)
error: Assembly aborted (3 errors)!

View File

@@ -1,8 +1 @@
ERROR: symbol-override.asm(6):
'W' already defined as constant at symbol-override.asm(5)
ERROR: symbol-override.asm(10):
'X' already defined as constant at symbol-override.asm(9)
ERROR: symbol-override.asm(14):
'Y' already defined as non-constant at symbol-override.asm(13)
error: Assembly aborted (3 errors)!
V=$1 V=$1

View File

@@ -3,15 +3,17 @@ export LC_ALL=C
o=$(mktemp) o=$(mktemp)
gb=$(mktemp) gb=$(mktemp)
before=$(mktemp) input=$(mktemp)
after=$(mktemp) output=$(mktemp)
errput=$(mktemp)
rc=0 rc=0
for i in *.asm; do for i in *.asm; do
for variant in '' '.pipe'; do for variant in '' '.pipe'; do
if [ -z "$variant" ]; then if [ -z "$variant" ]; then
../../rgbasm -Weverything -o $o $i > $after 2>&1 ../../rgbasm -Weverything -o $o $i > $output 2> $errput
desired_output=${i%.asm}.out desired_output=${i%.asm}.out
desired_errput=${i%.asm}.err
else else
# `include-recursion.asm` refers to its own name inside the test code. # `include-recursion.asm` refers to its own name inside the test code.
# Skip testing with stdin input for that file. # Skip testing with stdin input for that file.
@@ -23,27 +25,34 @@ for i in *.asm; do
# stdin redirection makes the input an unseekable pipe - a scenario # stdin redirection makes the input an unseekable pipe - a scenario
# that's harder to deal with and was broken when the feature was # that's harder to deal with and was broken when the feature was
# first implemented. # first implemented.
cat $i | ../../rgbasm -Weverything -o $o - > $after 2>&1 cat $i | ../../rgbasm -Weverything -o $o - > $output 2> $errput
# Use two otherwise unused files for temp storage
desired_output=$input
desired_errput=$gb
# Escape regex metacharacters # Escape regex metacharacters
desired_output=$before
subst="$(printf '%s\n' "$i" | sed 's:[][\/.^$*]:\\&:g')" subst="$(printf '%s\n' "$i" | sed 's:[][\/.^$*]:\\&:g')"
# Replace the file name with a dash to match changed output
sed "s/$subst/-/g" ${i%.asm}.out > $desired_output sed "s/$subst/-/g" ${i%.asm}.out > $desired_output
sed "s/$subst/-/g" ${i%.asm}.err > $desired_errput
fi fi
diff -u $desired_output $after diff -u $desired_output $output
rc=$(($? || $rc)) rc=$(($? || $rc))
diff -u $desired_errput $errput
rc=$(($? || $rc))
bin=${i%.asm}.out.bin bin=${i%.asm}.out.bin
if [ -f $bin ]; then if [ -f $bin ]; then
../../rgblink -o $gb $o > $after 2>&1 ../../rgblink -o $gb $o > $output 2>&1
dd if=$gb count=1 bs=$(printf %s $(wc -c < $bin)) > $after 2>/dev/null dd if=$gb count=1 bs=$(printf %s $(wc -c < $bin)) > $output 2>/dev/null
hexdump -C $after > $before && mv $before $after hexdump -C $output > $input && mv $input $output
hexdump -C $bin > $before hexdump -C $bin > $input
diff -u $before $after diff -u $input $output
rc=$(($? || $rc)) rc=$(($? || $rc))
fi fi
done done
done done
rm -f $o $gb $before $after rm -f $o $gb $input $output
exit $rc exit $rc

View File

@@ -0,0 +1 @@
error: undefined-dot.asm(3) : '.' not defined

View File

@@ -1 +0,0 @@
error: undefined-dot.asm(3) : '.' not defined

0
test/asm/utf-8.err Normal file
View File

View File