Module: vkd3d Branch: master Commit: e44f2fbf432f3ddb0db981155a41345ffb78c8fc URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=e44f2fbf432f3ddb0db98115...
Author: Zebediah Figura zfigura@codeweavers.com Date: Tue Nov 24 00:29:58 2020 -0600
tests: Add some more miscellaneous preprocessor tests.
Signed-off-by: Zebediah Figura zfigura@codeweavers.com Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Matteo Bruni mbruni@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
Makefile.am | 2 ++ tests/preproc-misc.shader_test | 80 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 82 insertions(+)
diff --git a/Makefile.am b/Makefile.am index ec82707..fc0bad3 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 0000000..f14c599 --- /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