Add function "const", where the initializer does not have to be a compile-time constant.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23566 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich
2013-10-17 20:55:30 +00:00
parent 779e6b406a
commit e46b087760
15 changed files with 165 additions and 111 deletions

View File

@@ -5,39 +5,56 @@ ERROR: 0:7: '' : vertex input cannot be further qualified
ERROR: 0:11: '' : can only have one interpolation qualifier (flat, smooth, noperspective)
ERROR: 0:12: '' : can only have one auxiliary qualifier (centroid, patch, and sample)
ERROR: 0:13: 'uniform' : too many storage qualifiers
ERROR: 0:21: 'j' : undeclared identifier
ERROR: 0:21: '=' : cannot convert from 'float' to 'int'
ERROR: 0:22: 'k' : undeclared identifier
ERROR: 0:22: '=' : cannot convert from 'float' to 'int'
ERROR: 0:23: 'j' : undeclared identifier
ERROR: 0:23: '=' : cannot convert from 'float' to 'int'
ERROR: 0:27: 'jj' : undeclared identifier
ERROR: 0:27: '=' : cannot convert from 'float' to 'int'
ERROR: 13 compilation errors. No code generated.
ERROR: 0:18: '=' : global const initializers must be constant 'const int'
ERROR: 0:20: 'const' : no qualifiers allowed for function return
ERROR: 0:27: '' : constant expression required
ERROR: 0:27: '' : array size must be a constant integer expression
ERROR: 0:38: 'j' : undeclared identifier
ERROR: 0:38: '=' : cannot convert from 'float' to 'int'
ERROR: 0:39: 'k' : undeclared identifier
ERROR: 0:39: '=' : cannot convert from 'float' to 'int'
ERROR: 0:40: 'j' : undeclared identifier
ERROR: 0:40: '=' : cannot convert from 'float' to 'int'
ERROR: 0:44: 'jj' : undeclared identifier
ERROR: 0:44: '=' : cannot convert from 'float' to 'int'
ERROR: 17 compilation errors. No code generated.
ERROR: node is still EOpNull!
0:15 Function Definition: main( (void)
0:15 Function Parameters:
0:20 Function Definition: foo( (const int)
0:20 Function Parameters:
0:? Sequence
0:18 Test condition and select (void)
0:18 Condition
0:18 Compare Equal (bool)
0:18 'i' (int)
0:18 Constant:
0:18 3 (const int)
0:18 true case
0:19 Sequence
0:19 move second child to first child (int)
0:19 'j' (int)
0:19 'i' (int)
0:25 Loop with condition tested first
0:25 Loop Condition
0:25 Constant:
0:25 true (const bool)
0:25 No loop body
0:30 Function Definition: bar(vf4; (void)
0:30 Function Parameters:
0:30 'v' (in 4-component vector of float)
0:23 Sequence
0:23 move second child to first child (int)
0:23 'b' (const (read only) int)
0:23 'anonconst' (int)
0:25 Sequence
0:25 move second child to first child (int)
0:25 'd' (const (read only) int)
0:25 'b' (const (read only) int)
0:29 Branch: Return with expression
0:29 'b' (const (read only) int)
0:32 Function Definition: main( (void)
0:32 Function Parameters:
0:? Sequence
0:35 Test condition and select (void)
0:35 Condition
0:35 Compare Equal (bool)
0:35 'i' (int)
0:35 Constant:
0:35 3 (const int)
0:35 true case
0:36 Sequence
0:36 move second child to first child (int)
0:36 'j' (int)
0:36 'i' (int)
0:42 Loop with condition tested first
0:42 Loop Condition
0:42 Constant:
0:42 true (const bool)
0:42 No loop body
0:47 Function Definition: bar(vf4; (void)
0:47 Function Parameters:
0:47 'v' (in 4-component vector of float)
0:? Linker Objects
0:? 'v2' (smooth out 2-component vector of float)
0:? 'bad' (in 10-element array of 4-component vector of float)
@@ -48,6 +65,12 @@ ERROR: node is still EOpNull!
0:? 'rep' (smooth flat out 4-component vector of float)
0:? 'rep2' (centroid smooth sample out 4-component vector of float)
0:? 'rep3' (in 4-component vector of float)
0:? 'anonconst' (int)
0:? 'aconst' (const int)
0:? 5 (const int)
0:? 'a' (const int)
0:? 5 (const int)
0:? 'b' (int)
0:? 'gl_VertexID' (gl_VertexId int)
0:? 'gl_InstanceID' (gl_InstanceId int)