Track what ins/outs/uniforms are used, so that errors like "declare after use" or "can't use both XXX and YYY" can be issued. So far, used this for invariant, gl_FragColor et. al., and gl_FragCoord use before redeclaration.

Also made all tests in testlist include linker tests.


git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24156 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich
2013-11-20 21:12:43 +00:00
parent 23bcc02a20
commit 5134b9cf57
114 changed files with 835 additions and 24 deletions

View File

@@ -1,3 +1,4 @@
array.frag
Warning, version 130 is not yet complete; most features are present, but a few are missing.
ERROR: 0:21: '[' : array index out of range '2'
ERROR: 0:27: '[' : array must be redeclared with a size before being indexed with a variable
@@ -15,6 +16,7 @@ ERROR: 0:57: '[' : index out of range '-858993459'
ERROR: 0:58: '[]' : scalar integer expression required
ERROR: 14 compilation errors. No code generated.
ERROR: node is still EOpNull!
0:9 Function Definition: foo(f1[5]; (4-element array of float)
0:9 Function Parameters:
@@ -186,3 +188,8 @@ ERROR: node is still EOpNull!
0:? 'g5' (5-element array of float)
0:? 'a' (uniform int)
Linked fragment stage: