shithub: scc

Download patch

ref: e17b68513a16dc9ed6ef4140be3af2205919b81e
parent: 836892f765058a8564522719ebac4c083ee92a47
author: Roberto E. Vargas Caballero <k0ga@shike2.com>
date: Mon Mar 6 09:54:29 EST 2017

[tests] Execute all the tests always

It is a good idea to execute all the tests always because it allows us
to discover TODOs that are not longer TODOs. This patch also introduces
the use of CFLAGS in tests, which allows to execute the test for different
architectures.

--- a/tests/execute/Makefile
+++ b/tests/execute/Makefile
@@ -2,6 +2,6 @@
 all: tests
 
 tests:
-	SCCEXECPATH=../../bin PATH=../../bin:$$PATH ./chktest.sh < scc-tests.lst
+	CFLAGS='' SCCEXECPATH=../../bin PATH=../../bin:$$PATH ./chktest.sh < scc-tests.lst
 clean:
 	rm -f *.as *.o *.ir *.qbe *core
--- a/tests/execute/chktest.sh
+++ b/tests/execute/chktest.sh
@@ -7,12 +7,8 @@
 while read i state
 do
 	printf "%s\t" $i
-	if test "$state" = TODO
-	then
-		echo '[TODO]'
-	else
-		rm -f a.out
-		(scc -Isysinclude -m qbe "$i" && ./a.out) 2>/dev/null &&
-			echo [OK] || echo [FAILED]
-	fi
+	printf "%s" $state
+	rm -f a.out
+	(scc -Isysinclude $CFLAGS "$i" && ./a.out) 2>/dev/null &&
+		echo [OK] || echo [FAILED]
 done
--- a/tests/execute/scc-tests.lst
+++ b/tests/execute/scc-tests.lst
@@ -52,7 +52,7 @@
 0054-struct.c
 0055-enum.c
 0056-enum.c
-0057-duff.c TODO
+0057-duff.c [TODO]
 0058-bug.c
 0059-multistring.c
 0060-charlit.c
@@ -86,12 +86,12 @@
 0091-fptr.c
 0092-fptr.c
 0093-arrayinit.c
-0094-arrayinit.c TODO
+0094-arrayinit.c [TODO]
 0095-arrayselector.c
 0096-inferredarraysize.c
 0097-extern.c
-0098-tentative.c TODO
-0099-tentative.c TODO
+0098-tentative.c [TODO]
+0099-tentative.c [TODO]
 0102-bug.c
 0103-voidparm.c
 0104-qbebug.c
@@ -104,15 +104,15 @@
 0111-doubledef.c
 0112-cond.c
 0113-externredecl.c
-0114-shortassig.c TODO
+0114-shortassig.c [TODO]
 0115-null-comparision.c
-0116-floatcmp.c TODO
+0116-floatcmp.c [TODO]
 0117-pointarith.c
-0118-voidmain.c TODO
+0118-voidmain.c [TODO]
 0119-macrostr.c
 0120-funpar.c
-0121-localinit.c TODO
-0122-localinit.c TODO
-0123-doubleconst.c TODO
-0124-enumstruct.c TODO
+0121-localinit.c [TODO]
+0122-localinit.c [TODO]
+0123-doubleconst.c [TODO]
+0124-enumstruct.c [TODO]
 0125-fundcl.c