Flesh out 4.x block redeclaration semantics:

- hide non-redeclared anonymous members
 - array size limit checking
 - illegal member qualifiers
 - additional members


git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24406 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich
2013-12-09 00:37:46 +00:00
parent e1b2e39a56
commit c719481d43
16 changed files with 229 additions and 127 deletions

View File

@@ -1,7 +1,14 @@
330.frag
Warning, version 330 is not yet complete; some version-specific features are present, but many are missing.
ERROR: 0:27: 'block declaration' : cannot redeclare block: gl_block
ERROR: 0:31: 'gl_' : reserved built-in name: gl_name
ERROR: 0:32: 'gl_' : reserved built-in name: gl_i
ERROR: 0:35: 'gl_in' : no declaration found for redeclaration
ERROR: 0:39: 'gl_FragCoord' : cannot redeclare a non block as a block
ERROR: 5 compilation errors. No code generated.
0:? Sequence
ERROR: node is still EOpNull!
0:8 Function Definition: main( (void)
0:8 Function Parameters:
0:10 Sequence
@@ -26,9 +33,9 @@ Warning, version 330 is not yet complete; some version-specific features are pre
0:23 move second child to first child (4-component vector of float)
0:23 'c' (4-component vector of float)
0:23 gl_Color: direct index for structure (in 4-component vector of float)
0:23 '__anon__0' (in block{gl_Color})
0:23 '__anon__0' (in block{gl_Color,})
0:23 Constant:
0:23 0 (const uint)
0:23 2 (const uint)
0:24 move second child to first child (4-component vector of float)
0:24 'outVar' (out 4-component vector of float)
0:24 'inVar' (smooth in 4-component vector of float)
@@ -36,7 +43,8 @@ Warning, version 330 is not yet complete; some version-specific features are pre
0:? 'inVar' (smooth in 4-component vector of float)
0:? 'outVar' (out 4-component vector of float)
0:? 'varyingVar' (smooth in 4-component vector of float)
0:? '__anon__0' (in block{gl_Color})
0:? '__anon__0' (in block{gl_Color,})
0:? 'gl_name' (in block{gl_i})
Linked fragment stage: