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:
@@ -1,33 +1,54 @@
|
||||
mains1.frag
|
||||
|
||||
0:3Function Definition: main( (void)
|
||||
0:3 Function Parameters:
|
||||
0:? Sequence
|
||||
0:3 Function Definition: main( (void)
|
||||
0:3 Function Parameters:
|
||||
0:? Linker Objects
|
||||
|
||||
mains2.frag
|
||||
|
||||
0:3Function Definition: main( (void)
|
||||
0:3 Function Parameters:
|
||||
0:? Sequence
|
||||
0:3 Function Definition: main( (void)
|
||||
0:3 Function Parameters:
|
||||
0:? Linker Objects
|
||||
|
||||
noMain1.geom
|
||||
ERROR: #version: geometry shaders require non-es profile and version 150 or above
|
||||
ERROR: 1 compilation errors. No code generated.
|
||||
|
||||
|
||||
0:3Function Definition: foo( (void)
|
||||
0:3 Function Parameters:
|
||||
ERROR: node is still EOpNull!
|
||||
0:3 Function Definition: foo( (void)
|
||||
0:3 Function Parameters:
|
||||
0:? Linker Objects
|
||||
|
||||
noMain2.geom
|
||||
|
||||
0:3Function Definition: bar( (void)
|
||||
0:3 Function Parameters:
|
||||
0:? Sequence
|
||||
0:3 Function Definition: bar( (void)
|
||||
0:3 Function Parameters:
|
||||
0:? Linker Objects
|
||||
|
||||
|
||||
Linked geometry stage:
|
||||
|
||||
ERROR: Missing entry point: Each stage requires one "void main()" entry point
|
||||
ERROR: Linking geometry stage: Missing entry point: Each stage requires one "void main()" entry point
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
ERROR: Too many entry points: Each stage can have at most one "void main()" entry point.
|
||||
ERROR: Linking fragment stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
|
||||
main(
|
||||
|
||||
ERROR: node is still EOpNull!
|
||||
0:3 Function Definition: foo( (void)
|
||||
0:3 Function Parameters:
|
||||
0:3 Function Definition: bar( (void)
|
||||
0:3 Function Parameters:
|
||||
0:? Linker Objects
|
||||
0:? Sequence
|
||||
0:3 Function Definition: main( (void)
|
||||
0:3 Function Parameters:
|
||||
0:3 Function Definition: main( (void)
|
||||
0:3 Function Parameters:
|
||||
0:? Linker Objects
|
||||
|
||||
|
||||
Reference in New Issue
Block a user