aboutsummaryrefslogtreecommitdiff
path: root/tests/spec/glsl-es-1.00/compiler/structure-and-array-operations/array-assign.vert
diff options
context:
space:
mode:
Diffstat (limited to 'tests/spec/glsl-es-1.00/compiler/structure-and-array-operations/array-assign.vert')
-rw-r--r--tests/spec/glsl-es-1.00/compiler/structure-and-array-operations/array-assign.vert30
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/spec/glsl-es-1.00/compiler/structure-and-array-operations/array-assign.vert b/tests/spec/glsl-es-1.00/compiler/structure-and-array-operations/array-assign.vert
new file mode 100644
index 00000000..ea43f565
--- /dev/null
+++ b/tests/spec/glsl-es-1.00/compiler/structure-and-array-operations/array-assign.vert
@@ -0,0 +1,30 @@
+/* [config]
+ * expect_result: pass
+ * glsl_version: 1.20
+ * glsles_version: 1.00
+ * [end config]
+ *
+ * From page 35 (page 41 of the PDF) of the GLSL 1.20 spec:
+ *
+ * "In total, only the following operators are allowed to operate on
+ * arrays and structures as whole entities:
+ *
+ * field or method selector .
+ * equality == !=
+ * assignment =
+ * indexing (arrays only) []"
+ */
+
+
+void main()
+{
+ vec4 a[2];
+ vec4 b[2];
+ vec4 c[2];
+
+ a = vec4[2](vec4(0.0), vec4(2.0));
+ b = vec4[ ](vec4(0.5), vec4(2.0));
+ c = a;
+
+ gl_Position = a[0] + b[0] + c[1];
+}