diff options
Diffstat (limited to 'tests/xfail')
-rw-r--r-- | tests/xfail/Makefile | 15 | ||||
-rw-r--r-- | tests/xfail/val.c | 18 |
2 files changed, 33 insertions, 0 deletions
diff --git a/tests/xfail/Makefile b/tests/xfail/Makefile new file mode 100644 index 0000000..b38feae --- /dev/null +++ b/tests/xfail/Makefile @@ -0,0 +1,15 @@ +FILES != echo *.c +TARGETS := $(FILES:%.c=build/%) + +all: $(TARGETS) + +build/%: %.c ../../ngc1 + @mkdir -p build + @gcc -E $< -o $@.i + @(../../ngc1 $@.i > $@.c 2>/dev/null && gcc $@.c -o $@ 2>/dev/null) \ + && echo "FAIL $@" \ + || echo "XFAIL $@" + +.PHONY: clean +clean: + $(RM) -rf build diff --git a/tests/xfail/val.c b/tests/xfail/val.c new file mode 100644 index 0000000..d231a4a --- /dev/null +++ b/tests/xfail/val.c @@ -0,0 +1,18 @@ +#include <stdio.h> + +typedef tmpl[](int v){ + int <>_ok() + { + return v; + } +}; + +/* float vs int, should fail */ +typedef inst = tmpl[](20.0); + +int main() +{ + int ok = inst_ok(); + if (ok == 20) + puts("OK"); +} |