summaryrefslogtreecommitdiffstats
path: root/chromium/third_party/glslang/src/Test/300block.frag
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/glslang/src/Test/300block.frag')
-rw-r--r--chromium/third_party/glslang/src/Test/300block.frag58
1 files changed, 58 insertions, 0 deletions
diff --git a/chromium/third_party/glslang/src/Test/300block.frag b/chromium/third_party/glslang/src/Test/300block.frag
new file mode 100644
index 00000000000..9820e2a9454
--- /dev/null
+++ b/chromium/third_party/glslang/src/Test/300block.frag
@@ -0,0 +1,58 @@
+#version 300 es
+
+precision mediump float;
+
+struct S {
+ vec4 u;
+ uvec4 v;
+ lowp isampler3D sampler;
+ vec3 w;
+ struct T1 { // ERROR
+ int a;
+ } t;
+};
+
+uniform S s;
+
+uniform fooBlock {
+ uvec4 bv;
+ uniform mat2 bm2;
+ lowp isampler2D sampler; // ERROR
+ struct T2 { // ERROR
+ int a;
+ } t;
+ S fbs; // ERROR, contains a sampler
+};
+
+uniform barBlock {
+ uvec4 nbv;
+ int ni;
+} inst;
+
+uniform barBlockArray {
+ uvec4 nbv;
+ int ni;
+} insts[4];
+
+uniform unreferenced {
+ float f;
+ uint u;
+};
+
+void main()
+{
+ texture(s.sampler, vec3(inst.ni, bv.y, insts[2].nbv.z));
+ insts[s.v.x]; // ERROR
+ fooBlock; // ERROR
+ mat4(s); // ERROR
+ int insts;
+ float barBlock;
+ mat4(barBlock);
+ mat4(unreferenced); // ERROR, bad type
+ ++s; // ERROR
+ inst - 1; // ERROR
+ ++barBlock;
+ 2 * barBlockArray; // ERROR
+}
+
+int fooBlock; // ERROR, redef.