Signed-off-by: Zebediah Figura zfigura@codeweavers.com --- Makefile.am | 2 + tests/preproc-misc.shader_test | 80 ++++++++++++++++++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 tests/preproc-misc.shader_test
diff --git a/Makefile.am b/Makefile.am index ec827076..fc0bad34 100644 --- a/Makefile.am +++ b/Makefile.am @@ -69,6 +69,7 @@ vkd3d_shader_tests = \ tests/preproc-if-expr.shader_test \ tests/preproc-invalid.shader_test \ tests/preproc-macro.shader_test \ + tests/preproc-misc.shader_test \ tests/swizzle-0.shader_test \ tests/swizzle-1.shader_test \ tests/swizzle-2.shader_test \ @@ -216,6 +217,7 @@ XFAIL_TESTS = \ tests/preproc-if-expr.shader_test \ tests/preproc-invalid.shader_test \ tests/preproc-macro.shader_test \ + tests/preproc-misc.shader_test \ tests/swizzle-0.shader_test \ tests/swizzle-1.shader_test \ tests/swizzle-2.shader_test \ diff --git a/tests/preproc-misc.shader_test b/tests/preproc-misc.shader_test new file mode 100644 index 00000000..f14c5993 --- /dev/null +++ b/tests/preproc-misc.shader_test @@ -0,0 +1,80 @@ +[preproc] + # define KEY pass +KEY + +[preproc] +#if 0 +#error +#endif +pass + +[preproc] +#define pass fail +"pass" + +[preproc] +#define pass fail +" escape " pass " + +[preproc] +#define fail pass +" escape \" fail + +[preproc] +"multiline +string" +pass + +[preproc] +"multiline +pass" + +[preproc] +"pass +string" + +[preproc] +/* +#error +fail + * / fail*/pass + +[preproc] +pass/* +#error +fail + */ + +[preproc] +pass//fail + +[preproc] +// multiline comment \ +fail +pass + +[preproc] +fa/* */il +pass + +[preproc] +#define KEY // +KEY pass + +[preproc] +#define KEY /* fail */ pass +KEY + +[preproc] +#define KEY(a, b) /* multiline + +comment */ a +KEY(pass, fail) + +[preproc] +pass /* fail + +[preproc] +/* The backslash must be the last character in the line. */ +#define KEY \ +pass