diff options
Diffstat (limited to 'tests/diagnostics/syntax-error-op-line-2.slang')
| -rw-r--r-- | tests/diagnostics/syntax-error-op-line-2.slang | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/diagnostics/syntax-error-op-line-2.slang b/tests/diagnostics/syntax-error-op-line-2.slang new file mode 100644 index 000000000..994e875a1 --- /dev/null +++ b/tests/diagnostics/syntax-error-op-line-2.slang @@ -0,0 +1,33 @@ +// syntax-error-op-line-2.slang + +// NOTE! That although this is a 'diagnostic' like test, it tests using downstream compiler +// the downstream compiler being present is a requirement, so we mark as a 'TEST' so that +// those tests are made. + +//TEST:SIMPLE_LINE:-entry computeMain -target spirv +//TEST:SIMPLE_LINE:-entry computeMain -target dxil -profile cs_6_0 +//TEST:SIMPLE_LINE:-entry computeMain -target dxbc +//TEST:SIMPLE_LINE:-entry computeMain -target dll +//TEST:SIMPLE_LINE:-entry computeMain -target ptx + +// Here the thing being checked is error reporting around return, and += + +int doSomething(int a) +{ + a += a; + + return a + += + __SyntaxError(); +} + +[shader("compute")] +[numthreads(4, 1, 1)] +void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID) +{ + int id = int(dispatchThreadID.x); + + int v = int(dispatchThreadID.y); + + v += doSomething(id); +}
\ No newline at end of file |
