More subtle checking for redeclarations:

- 300 doesn't allow built-in overload, while 100 does, while neither allows redefining
 - block name can't be reused for block name within the same interface 
   (though, the spec. isn't clear about that, it's easier than verifying member matches, will file bug on it)


git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23984 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich
2013-11-11 04:21:31 +00:00
parent 4d6570a1b3
commit a4351c55e8
15 changed files with 332 additions and 243 deletions

View File

@@ -80,3 +80,27 @@ out S s2;
invariant s2;
invariant out S s3;
flat out int;
uniform ub2 {
float f;
} a;
uniform ub2 { // ERROR redeclaration of block name (same instance name)
float g;
} a;
uniform ub2 { // ERROR redeclaration of block name (different instance name)
float f;
} c;
uniform ub2 { // ERROR redeclaration of block name (no instance name)
float f123;
};
uniform ub3 {
bool b23;
};
uniform ub3 { // ERROR redeclaration of block name (no instance name in first or declared)
bool b234;
};