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. | |