mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-13 21:50:06 +00:00
5053a39578
- don't inherit 'binding' - always set the member storage qualifier, not just when the shader explicitly set it - don't include in/out members as objects that are resized by geometry/primitive layout specifiers As a side effect, this makes built-in redeclarations (like gl_ClipDistance) require in/out. git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24674 e7fa87d3-cd2b-0410-9028-fcbf551c1848
47 lines
649 B
GLSL
47 lines
649 B
GLSL
#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;
|
|
};
|
|
|
|
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
|
|
}
|