summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/diagnostics/missing-semicolon-after-semantic.slang9
-rw-r--r--tests/diagnostics/missing-semicolon-after-semantic.slang.expected6
-rw-r--r--tests/front-end/uav-write.slang20
3 files changed, 35 insertions, 0 deletions
diff --git a/tests/diagnostics/missing-semicolon-after-semantic.slang b/tests/diagnostics/missing-semicolon-after-semantic.slang
new file mode 100644
index 000000000..00fc3aa6c
--- /dev/null
+++ b/tests/diagnostics/missing-semicolon-after-semantic.slang
@@ -0,0 +1,9 @@
+//TEST:SIMPLE:
+
+// Forgetting to put in the `;` after declaraing a variable/field
+// with a semantic used to put the compiler into an infinite loop.
+
+struct Test
+{
+ float4 pos : SV_POSITION
+};
diff --git a/tests/diagnostics/missing-semicolon-after-semantic.slang.expected b/tests/diagnostics/missing-semicolon-after-semantic.slang.expected
new file mode 100644
index 000000000..ae82385d0
--- /dev/null
+++ b/tests/diagnostics/missing-semicolon-after-semantic.slang.expected
@@ -0,0 +1,6 @@
+result code = -1
+standard error = {
+tests/diagnostics/missing-semicolon-after-semantic.slang(9): error 20001: unexpected '}', expected ';'
+}
+standard output = {
+}
diff --git a/tests/front-end/uav-write.slang b/tests/front-end/uav-write.slang
new file mode 100644
index 000000000..c70af26a3
--- /dev/null
+++ b/tests/front-end/uav-write.slang
@@ -0,0 +1,20 @@
+// uav-write.slang
+//TEST:SIMPLE:
+
+// Just confirming that code that writes to a UAV will type-check.
+
+RWTexture2D<float4> gOutput;
+
+float4 test(uint2 coord, float4 value)
+{
+ // read
+ value = value + gOutput[coord];
+
+ // write
+ gOutput[coord] = value;
+
+ // read-modify-write
+ gOutput[coord] += value;
+
+ return value;
+} \ No newline at end of file