Implement default layout qualifiers at global and block levels with proper inheritance. Also add more error checking of qualifiers.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@21107 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich
2013-04-10 22:26:56 +00:00
parent ba04210097
commit bcd79fe5a3
5 changed files with 84 additions and 21 deletions

View File

@@ -12,6 +12,8 @@ layout(std140) uniform Transform { // layout of this block is std140
mat4 M1; // row_major
layout(column_major) mat4 M2; // column major
mat3 N1; // row_major
centroid float badf; // ERROR
in float badg; // ERROR
} tblock;
uniform T2 { // layout of this block is shared
@@ -26,6 +28,10 @@ layout(column_major) uniform T3 { // shared and column_major
int b; // ERROR, redefinition (needs to be last member of block for testing, following members are skipped)
};
out badout { // ERROR
float f;
};
void main()
{
pos = p * (tblock.M1 + tblock.M2 + M4 + M3 + t2m);