Add full support for uniforms with initializers, including intra-stage link validation of aggregate constant initializers.

This included 
 - encapsulating aggregate constants
 - removal of constant-aggregate comparison algorithms, instead using a flattened and direct std::vector comparison
 - adding structure type comparison for independently declared structures that still might match types



git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23274 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich
2013-09-28 04:02:08 +00:00
parent b3345c422d
commit f2ee3dd46a
98 changed files with 3007 additions and 1715 deletions

View File

@@ -9,15 +9,19 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
0:33 i: direct index for structure (int)
0:33 s2_1: direct index for structure (structure)
0:33 'foo3' (uniform structure)
0:33 Constant:
0:33 0 (const int)
0:33 Constant:
0:33 0 (const int)
0:33 Constant:
0:33 0 (const int)
0:33 0 (const int)
0:33 true case
0:34 move second child to first child (structure)
0:34 'locals2' (structure)
0:34 s2_1: direct index for structure (structure)
0:34 'foo3' (uniform structure)
0:34 0 (const int)
0:34 Constant:
0:34 0 (const int)
0:33 false case
0:36 move second child to first child (structure)
0:36 'locals2' (structure)
@@ -28,8 +32,10 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
0:38 f: direct index for structure (float)
0:38 s1_1: direct index for structure (structure)
0:38 'locals2' (structure)
0:38 2 (const int)
0:38 1 (const int)
0:38 Constant:
0:38 2 (const int)
0:38 Constant:
0:38 1 (const int)
0:38 Function Call: texture2D(s21;vf2; (4-component vector of float)
0:38 'sampler' (uniform sampler2D)
0:38 'coord' (smooth in 2-component vector of float)