Handle a missing -P/--preinclude file the same as an INCLUDE (#1873)

This commit is contained in:
Rangi
2025-12-08 14:39:34 -05:00
committed by GitHub
parent 33475e2c36
commit b0e0dfc56e
25 changed files with 83 additions and 31 deletions

View File

@@ -0,0 +1 @@
-MG -MC

View File

@@ -0,0 +1,13 @@
PUSHC
PUSHO
PUSHS
SECTION "test", WRAM0
UNION
INCLUDE "nonexistent1.inc"
WARN "still going!"
INCLUDE "nonexistent2.inc"
WARN "and going!"
ENDU
POPS
POPO
POPC

View File

@@ -0,0 +1,4 @@
warning: still going! [-Wuser]
at continues-after-missing-preinclude/a.asm(7)
warning: and going! [-Wuser]
at continues-after-missing-preinclude/a.asm(9)

View File

@@ -0,0 +1 @@
-MC -P nonexistent-pre.inc

View File

@@ -0,0 +1,4 @@
a.o: continues-after-missing-preinclude/a.asm
a.o: nonexistent-pre.inc
a.o: nonexistent1.inc
a.o: nonexistent2.inc

View File

@@ -1,2 +0,0 @@
a.o: errors-after-missing-include/a.asm
a.o: does not exist

View File

@@ -0,0 +1 @@
-MG

View File

@@ -0,0 +1,2 @@
a.o: exits-after-missing-include/a.asm
a.o: does not exist

View File

@@ -0,0 +1,12 @@
PUSHC
PUSHO
PUSHS
SECTION "test", WRAM0
UNION
INCLUDE "never reaches here"
/*
ENDU
POPS
POPO
POPC
*/

View File

@@ -0,0 +1 @@
-MG -P nonexistent-pre.inc

View File

@@ -0,0 +1,2 @@
a.o: exits-after-missing-preinclude/a.asm
a.o: nonexistent-pre.inc

View File

@@ -1,3 +1,3 @@
error: Error reading pre-included file "include-slash-nonexist.inc": No such file or directory
error: Error opening pre-included file "include-slash-nonexist.inc": No such file or directory
at include-slash.asm(0)
Assembly aborted with 1 error!

View File

@@ -0,0 +1 @@
INCLUDE "nonexist-include.inc"

View File

@@ -0,0 +1,5 @@
error: Error opening pre-included file "nonexistent-pre.inc": No such file or directory
at nonexist-preinclude.asm(0)
error: Error opening `INCLUDE` file "nonexist-include.inc": No such file or directory
at nonexist-preinclude.asm(1)
Assembly aborted with 2 errors!

View File

@@ -0,0 +1 @@
-P nonexistent-pre.inc

View File

@@ -163,11 +163,14 @@ done
evaluateDepTest () {
i="$1"
RGBASMFLAGS="-Weverything -Bcollapse -M - $2"
RGBASMFLAGS="-Weverything -Bcollapse -M -"
if [ -f "$i/a.flags" ]; then
RGBASMFLAGS="$RGBASMFLAGS @$i/a.flags"
fi
# Piping the .asm file to rgbasm would not make sense for dependency generation,
# so just test the normal variant
(( tests++ ))
echo "${bold}${green}${i%.asm}...${rescolors}${resbold}"
echo "${bold}${green}${i}...${rescolors}${resbold}"
"$RGBASM" $RGBASMFLAGS -o "$o" "$i"/a.asm >"$output" 2>"$errput"
fixed_output="$input"
@@ -192,8 +195,10 @@ evaluateDepTest () {
(( failed++ ))
fi
}
evaluateDepTest "continues-after-missing-include" "-MG -MC"
evaluateDepTest "errors-after-missing-include" "-MG"
evaluateDepTest "continues-after-missing-include"
evaluateDepTest "exits-after-missing-include"
evaluateDepTest "continues-after-missing-preinclude"
evaluateDepTest "exits-after-missing-preinclude"
i="state-file"
if which cygpath &>/dev/null; then