Add basic intra-stage linking validation for matching types and qualification of uniforms/ins/outs/globals, function body duplication, and mixing ES/non-ES shaders.

Still need to handle arrays and built-in redeclarations, and many more rules, but this puts the basics in place.


git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23225 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich 2013-09-24 21:18:46 +00:00
parent f5ebfb5f27
commit 337dbc7d8c
37 changed files with 657 additions and 196 deletions

20
Test/link2.frag Normal file
View file

@ -0,0 +1,20 @@
#version 130
uniform vec4 uv4;
uniform vec2 glass;
const int ci = 8;
vec4 d = ci * uv4;
in vec3 iv3;
flat in vec4 cup;
vec4 e = ci * d;
ivec2 foo()
{
return ivec2(2);
}
vec4 f = e * e;