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

@ -21,6 +21,16 @@ void vj, vk5[5] = int[](5, 6, 7, 8, 9);
void vm2[2] = int[](10, 11), vm3[3] = int[](12, 13, 14);
void vn8[4] = int[](21, 22, 23, 24), vp;
const int cii4[4] = int[](1, 2, 3, 4);
const int cij, cik5[5] = int[](5, 6, 7, 8, 9);
const int cim2[2] = int[](10, 11), cim3[3] = int[](12, 13, 14);
const int cin8[4] = int[](21, 22, 23, 24), cip;
uniform int uii4[4] = int[](1, 2, 3, 4);
uniform int uij, uik5[5] = int[](5, 6, 7, 8, 9);
uniform int uim2[2] = int[](10, 11), uim3[3] = int[](12, 13, 14);
uniform int uin8[4] = int[](21, 22, 23, 24), uip;
int gl_vi4[4] = int[](1, 2, 3, 4);
int gl_vj, gl_vk5[5] = int[](5, 6, 7, 8, 9);
int gl_vm2[2] = int[](10, 11), gl_vm3[3] = int[](12, 13, 14);