Track which extensions were enabled or required, in the intermediate representation...
authorJohn Kessenich <cepheus@frii.com>
Mon, 31 Mar 2014 22:20:47 +0000 (22:20 +0000)
committerJohn Kessenich <cepheus@frii.com>
Mon, 31 Mar 2014 22:20:47 +0000 (22:20 +0000)
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@26155 e7fa87d3-cd2b-0410-9028-fcbf551c1848

119 files changed:
Test/baseResults/100.frag.out
Test/baseResults/100Limits.vert.out
Test/baseResults/100scope.vert.out
Test/baseResults/110scope.vert.out
Test/baseResults/120.frag.out
Test/baseResults/120.vert.out
Test/baseResults/130.frag.out
Test/baseResults/140.frag.out
Test/baseResults/150.frag.out
Test/baseResults/150.geom.out
Test/baseResults/150.tesc.out
Test/baseResults/150.vert.out
Test/baseResults/300.frag.out
Test/baseResults/300.vert.out
Test/baseResults/300BuiltIns.frag.out
Test/baseResults/300block.frag.out
Test/baseResults/300layout.frag.out
Test/baseResults/300layout.vert.out
Test/baseResults/300link.frag.out
Test/baseResults/300link2.frag.out
Test/baseResults/300link3.frag.out
Test/baseResults/300operations.frag.out
Test/baseResults/300scope.vert.out
Test/baseResults/330.frag.out
Test/baseResults/330comp.frag.out
Test/baseResults/400.frag.out
Test/baseResults/400.geom.out
Test/baseResults/410.geom.out
Test/baseResults/420.geom.out
Test/baseResults/420.vert.out
Test/baseResults/420_size_gl_in.geom.out
Test/baseResults/430.comp.out
Test/baseResults/430.vert.out
Test/baseResults/430scope.vert.out
Test/baseResults/440.frag.out
Test/baseResults/440.vert.out
Test/baseResults/Operations.frag.out
Test/baseResults/aggOps.frag.out
Test/baseResults/always-discard.frag.out
Test/baseResults/always-discard2.frag.out
Test/baseResults/array.frag.out
Test/baseResults/array100.frag.out
Test/baseResults/comment.frag.out
Test/baseResults/conditionalDiscard.frag.out
Test/baseResults/constErrors.frag.out
Test/baseResults/constFold.frag.out
Test/baseResults/conversion.frag.out
Test/baseResults/cppComplexExpr.vert.out
Test/baseResults/cppIndent.vert.out
Test/baseResults/cppNest.vert.out
Test/baseResults/cppSimple.vert.out
Test/baseResults/dataOut.frag.out
Test/baseResults/dataOutIndirect.frag.out
Test/baseResults/dce.frag.out
Test/baseResults/decls.frag.out
Test/baseResults/deepRvalue.frag.out
Test/baseResults/depthOut.frag.out
Test/baseResults/discard-dce.frag.out
Test/baseResults/doWhileLoop.frag.out
Test/baseResults/earlyReturnDiscard.frag.out
Test/baseResults/empty.frag.out
Test/baseResults/errors.frag.out
Test/baseResults/flowControl.frag.out
Test/baseResults/forLoop.frag.out
Test/baseResults/forwardRef.frag.out
Test/baseResults/functionCall.frag.out
Test/baseResults/functionSemantics.frag.out
Test/baseResults/length.frag.out
Test/baseResults/lineContinuation.vert.out
Test/baseResults/lineContinuation100.vert.out
Test/baseResults/link1.frag.out
Test/baseResults/localAggregates.frag.out
Test/baseResults/loops.frag.out
Test/baseResults/loopsArtificial.frag.out
Test/baseResults/mains1.frag.out
Test/baseResults/matrix.frag.out
Test/baseResults/matrix2.frag.out
Test/baseResults/matrixError.vert.out
Test/baseResults/newTexture.frag.out
Test/baseResults/noMain.vert.out
Test/baseResults/nonSquare.vert.out
Test/baseResults/numeral.frag.out
Test/baseResults/pointCoord.frag.out
Test/baseResults/precision.frag.out
Test/baseResults/precision.vert.out
Test/baseResults/prepost.frag.out
Test/baseResults/recurse1.vert.out
Test/baseResults/sample.frag.out
Test/baseResults/sample.vert.out
Test/baseResults/simpleFunctionCall.frag.out
Test/baseResults/specExamples.frag.out
Test/baseResults/specExamples.vert.out
Test/baseResults/structAssignment.frag.out
Test/baseResults/structDeref.frag.out
Test/baseResults/structure.frag.out
Test/baseResults/switch.frag.out
Test/baseResults/swizzle.frag.out
Test/baseResults/syntaxError.frag.out
Test/baseResults/test.frag.out
Test/baseResults/texture.frag.out
Test/baseResults/tokenLength.vert.out
Test/baseResults/types.frag.out
Test/baseResults/uint.frag.out
Test/baseResults/uniformArray.frag.out
Test/baseResults/variableArrayIndex.frag.out
Test/baseResults/varyingArray.frag.out
Test/baseResults/varyingArrayIndirect.frag.out
Test/baseResults/versionsClean.frag.out
Test/baseResults/versionsClean.vert.out
Test/baseResults/versionsErrors.frag.out
Test/baseResults/versionsErrors.vert.out
Test/baseResults/voidFunction.frag.out
Test/baseResults/whileLoop.frag.out
Test/link2.frag
Test/link3.frag
glslang/MachineIndependent/Versions.cpp
glslang/MachineIndependent/intermOut.cpp
glslang/MachineIndependent/linkValidate.cpp
glslang/MachineIndependent/localintermediate.h

index cc06792..703c629 100644 (file)
@@ -71,6 +71,12 @@ ERROR: 0:181: '' :  syntax error
 ERROR: 62 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 100\r
+Requested GL_EXT_frag_depth\r
+Requested GL_EXT_shader_texture_lod\r
+Requested GL_OES_EGL_image_external\r
+Requested GL_OES_standard_derivatives\r
+Requested GL_OES_texture_3D\r
 ERROR: node is still EOpNull!\r
 0:3  Sequence\r
 0:3    move second child to first child (3-element array of mediump int)\r
@@ -349,4 +355,10 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 100\r
+Requested GL_EXT_frag_depth\r
+Requested GL_EXT_shader_texture_lod\r
+Requested GL_OES_EGL_image_external\r
+Requested GL_OES_standard_derivatives\r
+Requested GL_OES_texture_3D\r
 \r
index e561fcc..2c02af1 100644 (file)
@@ -1,5 +1,6 @@
 100Limits.vert\r
 \r
+Shader version: 100\r
 0:? Sequence\r
 0:15  Function Definition: foo(f1; (void)\r
 0:15    Function Parameters: \r
 Linked vertex stage:\r
 \r
 \r
+Shader version: 100\r
 \r
index edf9cd3..dcdc1d9 100644 (file)
@@ -14,6 +14,7 @@ ERROR: 0:76: 'vertex-shader struct output' : not supported for this version or t
 ERROR: 12 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 100\r
 ERROR: node is still EOpNull!\r
 0:3  Function Definition: f(i1;i1;i1; (highp int)\r
 0:3    Function Parameters: \r
@@ -126,4 +127,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 100\r
 \r
index 26b2e40..3397154 100644 (file)
@@ -5,6 +5,7 @@ ERROR: 0:57: 'z' : redefinition
 ERROR: 3 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 110\r
 ERROR: node is still EOpNull!\r
 0:3  Function Definition: f(i1;i1;i1; (int)\r
 0:3    Function Parameters: \r
@@ -119,4 +120,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index 898015d..4c2dde9 100644 (file)
@@ -37,6 +37,7 @@ ERROR: 0:153: '=' :  cannot convert from 'const float' to '3X4 matrix of float'
 ERROR: 35 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 120\r
 ERROR: node is still EOpNull!\r
 0:21  Function Definition: main( (void)\r
 0:21    Function Parameters: \r
@@ -395,4 +396,5 @@ Linked fragment stage:
 ERROR: Linking fragment stage: Recursion detected:\r
     foo(f1; calling foo(f1;\r
 \r
+Shader version: 120\r
 \r
index 663e594..61f152a 100644 (file)
@@ -48,6 +48,7 @@ ERROR: 0:121: 'gl_TexCoord array size' : must be less than gl_MaxTextureCoords (
 ERROR: 46 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 120\r
 ERROR: node is still EOpNull!\r
 0:15  Function Definition: main( (void)\r
 0:15    Function Parameters: \r
@@ -298,4 +299,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 120\r
 \r
index 52be463..7cd6b0d 100644 (file)
@@ -24,6 +24,12 @@ ERROR: 0:132: 'gl_MaxProgramTexelOffset' : undeclared identifier
 ERROR: 18 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 130\r
+Requested GL_ARB_gpu_shader5\r
+Requested GL_ARB_shading_language_420pack\r
+Requested GL_ARB_texture_cube_map_array\r
+Requested GL_ARB_texture_gather\r
+Requested GL_ARB_texture_rectangle\r
 ERROR: node is still EOpNull!\r
 0:16  Function Definition: main( (void)\r
 0:16    Function Parameters: \r
@@ -351,4 +357,10 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
+Requested GL_ARB_gpu_shader5\r
+Requested GL_ARB_shading_language_420pack\r
+Requested GL_ARB_texture_cube_map_array\r
+Requested GL_ARB_texture_gather\r
+Requested GL_ARB_texture_rectangle\r
 \r
index 526c8b7..cd5f20b 100644 (file)
@@ -10,6 +10,8 @@ ERROR: 0:32: 'out' : Non-L-value cannot be passed for 'out' or 'inout' parameter
 ERROR: 6 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 140\r
+Requested GL_ARB_separate_shader_objects\r
 ERROR: node is still EOpNull!\r
 0:10  Function Definition: main( (void)\r
 0:10    Function Parameters: \r
@@ -80,4 +82,6 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 140\r
+Requested GL_ARB_separate_shader_objects\r
 \r
index 49ef968..be2205e 100644 (file)
@@ -7,6 +7,7 @@ ERROR: 0:14: 'gl_FragCoord' : cannot redeclare after use
 ERROR: 4 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 150\r
 gl_FragCoord pixel center is integer\r
 gl_FragCoord origin is upper left\r
 ERROR: node is still EOpNull!\r
@@ -33,6 +34,7 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 150\r
 gl_FragCoord pixel center is integer\r
 gl_FragCoord origin is upper left\r
 \r
index 30fd4ba..53ada90 100644 (file)
@@ -34,6 +34,7 @@ ERROR: 0:91: 'stream' : can only be used on an output
 ERROR: 31 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 150\r
 invocations = 4\r
 max_vertices = 300\r
 input primitive = lines_adjancency\r
@@ -151,6 +152,7 @@ ERROR: node is still EOpNull!
 Linked geometry stage:\r
 \r
 \r
+Shader version: 150\r
 invocations = 4\r
 max_vertices = 300\r
 input primitive = lines_adjancency\r
index 30646f9..378bd58 100644 (file)
@@ -1,6 +1,8 @@
 150.tesc\r
 Warning, version 150 is not yet complete; some version-specific features are present, but many are missing.\r
 \r
+Shader version: 150\r
+Requested GL_ARB_tessellation_shader\r
 vertices = 4\r
 0:? Sequence\r
 0:10  Function Definition: main( (void)\r
@@ -112,6 +114,8 @@ ERROR: 0:12: 'barrier' : no matching overloaded function found
 ERROR: 1 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 150\r
+Requested GL_ARB_tessellation_shader\r
 input primitive = quads\r
 vertex spacing = fractional_odd_spacing\r
 triangle order = cw\r
@@ -226,6 +230,8 @@ ERROR: 0:60: 'location' : overlapping use of location 4
 ERROR: 11 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 400\r
+Requested GL_ARB_separate_shader_objects\r
 vertices = 4\r
 ERROR: node is still EOpNull!\r
 0:13  Function Definition: main( (void)\r
@@ -386,6 +392,8 @@ ERROR: 0:99: 'location' : overlapping use of location 24
 ERROR: 29 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 400\r
+Requested GL_ARB_separate_shader_objects\r
 input primitive = quads\r
 vertex spacing = fractional_odd_spacing\r
 triangle order = cw\r
@@ -509,6 +517,7 @@ ERROR: 0:4: 'length' :  array must first be sized by a redeclaration or layout q
 ERROR: 1 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 400\r
 vertices = 0\r
 ERROR: node is still EOpNull!\r
 0:8  Function Definition: main( (void)\r
@@ -528,6 +537,8 @@ ERROR: 0:29: 'out' : type must be an array: outf
 ERROR: 6 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 400\r
+Requested GL_ARB_separate_shader_objects\r
 vertices = 4\r
 ERROR: node is still EOpNull!\r
 0:15  Function Definition: main( (void)\r
@@ -616,6 +627,7 @@ ERROR: 0:58: 'initializer list' : wrong number of structure members
 ERROR: 13 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 420\r
 input primitive = none\r
 vertex spacing = none\r
 triangle order = none\r
@@ -793,6 +805,9 @@ ERROR: Linking tessellation evaluation stage: Multiple function bodies in multip
 ERROR: Linking tessellation evaluation stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:\r
     main(\r
 \r
+Shader version: 400\r
+Requested GL_ARB_separate_shader_objects\r
+Requested GL_ARB_tessellation_shader\r
 vertices = 4\r
 0:? Sequence\r
 0:10  Function Definition: main( (void)\r
@@ -1083,6 +1098,9 @@ vertices = 4
 0:?     'outb' (out 5-element array of int)\r
 0:?     'outc' (out 4-element array of int)\r
 0:?     'outf' (out float)\r
+Shader version: 420\r
+Requested GL_ARB_separate_shader_objects\r
+Requested GL_ARB_tessellation_shader\r
 input primitive = quads\r
 vertex spacing = fractional_odd_spacing\r
 triangle order = cw\r
index 62f7750..2cbc9c6 100644 (file)
@@ -4,6 +4,7 @@ ERROR: 0:22: 'a' : cannot redeclare a user-block member array
 ERROR: 1 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 150\r
 ERROR: node is still EOpNull!\r
 0:9  Function Definition: main( (void)\r
 0:9    Function Parameters: \r
@@ -50,4 +51,5 @@ Linked vertex stage:
 \r
 ERROR: Linking vertex stage: Can only use one of gl_ClipDistance or gl_ClipVertex (gl_ClipDistance is preferred)\r
 \r
+Shader version: 150\r
 \r
index f9124a0..a08ecbd 100644 (file)
@@ -39,6 +39,7 @@ ERROR: 0:150: '' :  syntax error
 ERROR: 37 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:53  Function Definition: main( (void)\r
 0:53    Function Parameters: \r
@@ -392,4 +393,5 @@ Linked fragment stage:
 \r
 ERROR: Linking fragment stage: when more than one fragment shader output, all must have location qualifiers\r
 \r
+Shader version: 300\r
 \r
index 3b2deac..bd3f26f 100644 (file)
@@ -41,6 +41,7 @@ ERROR: 0:170: 'Bfoo' : cannot add storage, auxiliary, memory, interpolation, lay
 ERROR: 39 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:27  Function Definition: main( (void)\r
 0:27    Function Parameters: \r
@@ -298,4 +299,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index 650d622..ab66467 100644 (file)
@@ -4,6 +4,7 @@ ERROR: 0:70: 'noise2' : no matching overloaded function found
 ERROR: 2 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:26  Function Definition: main( (void)\r
 0:26    Function Parameters: \r
@@ -210,4 +211,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index 98c3c2f..0b21bf7 100644 (file)
@@ -6,6 +6,7 @@ ERROR: 0:45: 'variable indexing block array' : not supported with this profile:
 ERROR: 4 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:42  Function Definition: main( (void)\r
 0:42    Function Parameters: \r
@@ -60,4 +61,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index 0c952e4..11674a8 100644 (file)
@@ -5,6 +5,7 @@ ERROR: 0:19: 'location' : overlapping use of location 40
 ERROR: 3 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:10  Function Definition: main( (void)\r
 0:10    Function Parameters: \r
@@ -35,4 +36,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index 4d2c3a5..302d41d 100644 (file)
@@ -20,6 +20,7 @@ ERROR: 0:57: 'location' : overlapping use of location 40
 ERROR: 18 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:44  Function Definition: main( (void)\r
 0:44    Function Parameters: \r
@@ -83,4 +84,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index 7ce563a..e22cd8c 100644 (file)
@@ -1,5 +1,6 @@
 300link.frag\r
 \r
+Shader version: 300\r
 0:? Sequence\r
 0:8  Function Definition: main( (void)\r
 0:8    Function Parameters: \r
@@ -12,4 +13,5 @@ Linked fragment stage:
 \r
 ERROR: Linking fragment stage: when more than one fragment shader output, all must have location qualifiers\r
 \r
+Shader version: 300\r
 \r
index bf264ec..7146bd1 100644 (file)
@@ -1,5 +1,6 @@
 300link2.frag\r
 \r
+Shader version: 300\r
 0:? Sequence\r
 0:9  Function Definition: main( (void)\r
 0:9    Function Parameters: \r
@@ -13,4 +14,5 @@
 Linked fragment stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index 1317a2d..8cb4c76 100644 (file)
@@ -1,5 +1,6 @@
 300link3.frag\r
 \r
+Shader version: 300\r
 0:? Sequence\r
 0:7  Function Definition: main( (void)\r
 0:7    Function Parameters: \r
@@ -10,4 +11,5 @@
 Linked fragment stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index a4f8d37..45995bd 100644 (file)
@@ -58,6 +58,7 @@ ERROR: 0:90: 'assign' :  l-value required
 ERROR: 56 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:13  Function Definition: main( (void)\r
 0:13    Function Parameters: \r
@@ -239,4 +240,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index cde7d23..3dc931b 100644 (file)
@@ -21,6 +21,7 @@ ERROR: 0:73: 'degrees' : can't use function syntax on variable
 ERROR: 19 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:3  Function Definition: f(i1;i1;i1; (highp int)\r
 0:3    Function Parameters: \r
@@ -133,4 +134,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index 9775500..f70d28e 100644 (file)
@@ -30,6 +30,9 @@ ERROR: 0:119: 'location' : overlapping use of location 44
 ERROR: 27 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 330\r
+Requested GL_ARB_enhanced_layouts\r
+Requested GL_ARB_separate_shader_objects\r
 ERROR: node is still EOpNull!\r
 0:8  Function Definition: main( (void)\r
 0:8    Function Parameters: \r
@@ -95,4 +98,7 @@ Linked fragment stage:
 ERROR: Linking fragment stage: Cannot use gl_FragColor or gl_FragData when using user-defined outputs\r
 ERROR: Linking fragment stage: Cannot use both gl_FragColor and gl_FragData\r
 \r
+Shader version: 330\r
+Requested GL_ARB_enhanced_layouts\r
+Requested GL_ARB_separate_shader_objects\r
 \r
index 3e8852f..3a2aae8 100644 (file)
@@ -1,6 +1,7 @@
 330comp.frag\r
 Warning, version 330 is not yet complete; some version-specific features are present, but many are missing.\r
 \r
+Shader version: 330\r
 0:? Sequence\r
 0:8  Function Definition: main( (void)\r
 0:8    Function Parameters: \r
@@ -26,4 +27,5 @@ Linked fragment stage:
 \r
 ERROR: Linking fragment stage: Cannot use both gl_FragColor and gl_FragData\r
 \r
+Shader version: 330\r
 \r
index 6e2de57..0f7f26f 100644 (file)
@@ -18,6 +18,8 @@ ERROR: 0:58: 'patch' : not supported in this stage: fragment
 ERROR: 15 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 400\r
+Requested GL_ARB_separate_shader_objects\r
 gl_FragCoord pixel center is integer\r
 gl_FragCoord origin is upper left\r
 ERROR: node is still EOpNull!\r
@@ -238,6 +240,8 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 400\r
+Requested GL_ARB_separate_shader_objects\r
 gl_FragCoord pixel center is integer\r
 gl_FragCoord origin is upper left\r
 \r
index 163ebfd..bc16de2 100644 (file)
@@ -21,6 +21,8 @@ ERROR: 0:71: 'triangles' : inconsistent input primitive for array size of inbla
 ERROR: 18 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 400\r
+Requested GL_ARB_separate_shader_objects\r
 invocations = 4\r
 max_vertices = 127\r
 input primitive = triangles\r
@@ -93,6 +95,8 @@ Linked geometry stage:
 \r
 ERROR: Linking geometry stage: At least one shader must specify an output layout primitive\r
 \r
+Shader version: 400\r
+Requested GL_ARB_separate_shader_objects\r
 invocations = 4\r
 max_vertices = 127\r
 input primitive = triangles\r
index e67c8f2..2e5c069 100644 (file)
@@ -10,6 +10,7 @@ ERROR: 0:33: 'assign' :  cannot convert from 'const 4-component vector of float'
 ERROR: 7 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 410\r
 invocations = 0\r
 max_vertices = 0\r
 input primitive = none\r
@@ -56,6 +57,7 @@ ERROR: Linking geometry stage: At least one shader must specify an input layout
 ERROR: Linking geometry stage: At least one shader must specify an output layout primitive\r
 ERROR: Linking geometry stage: At least one shader must specify a layout(max_vertices = value)\r
 \r
+Shader version: 410\r
 invocations = 0\r
 max_vertices = 0\r
 input primitive = none\r
index e374160..844791d 100644 (file)
@@ -9,6 +9,7 @@ ERROR: 0:49: 'gl_ClipDistance' : cannot change arrayness of redeclared block mem
 ERROR: 6 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 420\r
 invocations = 0\r
 max_vertices = 0\r
 input primitive = triangles\r
@@ -129,6 +130,7 @@ ERROR: Linking geometry stage: Missing entry point: Each stage requires one "voi
 ERROR: Linking geometry stage: At least one shader must specify an output layout primitive\r
 ERROR: Linking geometry stage: At least one shader must specify a layout(max_vertices = value)\r
 \r
+Shader version: 420\r
 invocations = 0\r
 max_vertices = 0\r
 input primitive = triangles\r
index 8b8e323..c7d6ddb 100644 (file)
@@ -34,6 +34,7 @@ ERROR: 0:86: 'patch' : not supported in this stage: vertex
 ERROR: 30 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 420\r
 ERROR: node is still EOpNull!\r
 0:20  Function Definition: foo( (const int)\r
 0:20    Function Parameters: \r
@@ -143,4 +144,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 420\r
 \r
index aa5a866..4482d92 100644 (file)
@@ -4,6 +4,7 @@ ERROR: 0:19: 'gl_PerVertex' : can only redeclare a built-in block once, and befo
 ERROR: 1 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 420\r
 invocations = 0\r
 max_vertices = 0\r
 input primitive = triangles\r
@@ -42,6 +43,7 @@ ERROR: Linking geometry stage: Missing entry point: Each stage requires one "voi
 ERROR: Linking geometry stage: At least one shader must specify an output layout primitive\r
 ERROR: Linking geometry stage: At least one shader must specify a layout(max_vertices = value)\r
 \r
+Shader version: 420\r
 invocations = 0\r
 max_vertices = 0\r
 input primitive = triangles\r
index fc4f4ed..2621bf9 100644 (file)
@@ -4,6 +4,7 @@ ERROR: 0:12: 'location qualifier on input' : not supported in this stage: comput
 ERROR: 1 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 430\r
 ERROR: node is still EOpNull!\r
 0:3  Function Definition: main( (void)\r
 0:3    Function Parameters: \r
@@ -20,4 +21,5 @@ ERROR: node is still EOpNull!
 Linked compute stage:\r
 \r
 \r
+Shader version: 430\r
 \r
index 8c5ad3b..7c40c96 100644 (file)
@@ -47,6 +47,8 @@ ERROR: 0:93: 'transform feedback qualifier' : not supported for this version or
 ERROR: 44 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 430\r
+Requested GL_ARB_enhanced_layouts\r
 in xfb mode\r
 ERROR: node is still EOpNull!\r
 0:14  Function Definition: foo( (void)\r
@@ -117,5 +119,7 @@ ERROR: Linking vertex stage: Missing entry point: Each stage requires one "void
 ERROR: Linking vertex stage: xfb_stride is too small to hold all buffer entries:\r
 ERROR:     xfb_buffer 3, xfb_stride 64, minimum stride needed: 80\r
 \r
+Shader version: 430\r
+Requested GL_ARB_enhanced_layouts\r
 in xfb mode\r
 \r
index 8bfdb10..a2d1230 100644 (file)
@@ -11,6 +11,7 @@ ERROR: 0:73: 'degrees' : can't use function syntax on variable
 ERROR: 8 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 430\r
 ERROR: node is still EOpNull!\r
 0:3  Function Definition: f(i1;i1;i1; (int)\r
 0:3    Function Parameters: \r
@@ -127,4 +128,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 430\r
 \r
index 0da5c06..158871b 100644 (file)
@@ -48,6 +48,7 @@ ERROR: 0:104: 'offset' : must be a multiple of the member's alignment
 ERROR: 45 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 440\r
 ERROR: node is still EOpNull!\r
 0:?   Linker Objects\r
 0:?     'a' (layout(location=4 component=2 ) smooth in 2-component vector of float)\r
@@ -90,4 +91,5 @@ Linked fragment stage:
 \r
 ERROR: Linking fragment stage: Missing entry point: Each stage requires one "void main()" entry point\r
 \r
+Shader version: 440\r
 \r
index c385efa..3d3f582 100644 (file)
@@ -45,6 +45,7 @@ ERROR: 0:157: 'xfb_buffer' : buffer is too large: gl_MaxTransformFeedbackBuffers
 ERROR: 42 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 440\r
 in xfb mode\r
 ERROR: node is still EOpNull!\r
 0:?   Linker Objects\r
@@ -112,5 +113,6 @@ ERROR:     xfb_buffer 5, xfb_stride 6
 ERROR: Linking vertex stage: xfb_stride is too large:\r
 ERROR:     xfb_buffer 7, components (1/4 stride) needed are 66, gl_MaxTransformFeedbackInterleavedComponents is 64\r
 \r
+Shader version: 440\r
 in xfb mode\r
 \r
index e764d49..e0834bd 100644 (file)
@@ -1,6 +1,7 @@
 ../../LunarGLASS/test/Operations.frag\r
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:15  Function Definition: main( (void)\r
 0:15    Function Parameters: \r
@@ -437,4 +438,5 @@ Warning, version 130 is not yet complete; most features are present, but a few a
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 57b402f..b3916c6 100644 (file)
@@ -3,6 +3,7 @@ Warning, version 130 is not yet complete; most features are present, but a few a
 WARNING: 0:4: varying deprecated in version 130; may be removed in future release\r
 WARNING: 0:6: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:23  Function Definition: main( (void)\r
 0:23    Function Parameters: \r
@@ -151,4 +152,5 @@ WARNING: 0:6: varying deprecated in version 130; may be removed in future releas
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 99f2465..ba2c58e 100644 (file)
@@ -1,5 +1,6 @@
 ../../LunarGLASS/test/always-discard.frag\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:4  Function Definition: main( (void)\r
 0:4    Function Parameters: \r
 Linked fragment stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index fe9c9c3..199d1ae 100644 (file)
@@ -1,5 +1,6 @@
 ../../LunarGLASS/test/always-discard2.frag\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:4  Function Definition: main( (void)\r
 0:4    Function Parameters: \r
@@ -61,4 +62,5 @@
 Linked fragment stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index 8f5d6dc..e117e57 100644 (file)
@@ -20,6 +20,7 @@ ERROR: 0:63: '' : array size required
 ERROR: 17 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 130\r
 ERROR: node is still EOpNull!\r
 0:9  Function Definition: foo(f1[5]; (4-element array of float)\r
 0:9    Function Parameters: \r
@@ -195,4 +196,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 835332a..ba18ffc 100644 (file)
@@ -24,6 +24,7 @@ ERROR: 0:69: 'array initializer' : not supported for this version or the enabled
 ERROR: 22 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 100\r
 ERROR: node is still EOpNull!\r
 0:9  Function Definition: foo(f1[5]; (4-element array of mediump float)\r
 0:9    Function Parameters: \r
@@ -160,4 +161,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 100\r
 \r
index c3a548c..4a9247d 100644 (file)
@@ -3,6 +3,7 @@ Warning, version 430 is not yet complete; some version-specific features are pre
 WARNING: 0:10: 'line continuation' : used at end of comment; the following line is still part of the comment \r
 WARNING: 0:12: 'line continuation' : used at end of comment; the following line is still part of the comment \r
 \r
+Shader version: 430\r
 0:? Sequence\r
 0:17  Function Definition: main( (void)\r
 0:17    Function Parameters: \r
@@ -13,4 +14,5 @@ WARNING: 0:12: 'line continuation' : used at end of comment; the following line
 Linked fragment stage:\r
 \r
 \r
+Shader version: 430\r
 \r
index f3df2e7..0bdc74c 100644 (file)
@@ -1,5 +1,6 @@
 ../../LunarGLASS/test/conditionalDiscard.frag\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:6  Function Definition: main( (void)\r
 0:6    Function Parameters: \r
@@ -32,4 +33,5 @@
 Linked fragment stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index d62d4aa..de219e5 100644 (file)
@@ -12,6 +12,7 @@ ERROR: 0:33: '=' : global const initializers must be constant 'const structure{3
 ERROR: 9 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 330\r
 ERROR: node is still EOpNull!\r
 0:10  Function Definition: main( (void)\r
 0:10    Function Parameters: \r
@@ -35,4 +36,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 330\r
 \r
index 28306e0..84c2661 100644 (file)
@@ -9,6 +9,7 @@ ERROR: 0:114: '[' :  matrix index out of range '3'
 ERROR: 6 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 430\r
 ERROR: node is still EOpNull!\r
 0:28  Function Definition: main( (void)\r
 0:28    Function Parameters: \r
@@ -309,4 +310,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 430\r
 \r
index b6f480a..f2a4291 100644 (file)
@@ -1,6 +1,7 @@
 ../../LunarGLASS/test/conversion.frag\r
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:33  Function Definition: main( (void)\r
 0:33    Function Parameters: \r
@@ -479,4 +480,5 @@ Warning, version 130 is not yet complete; most features are present, but a few a
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 4671f20..e72230e 100644 (file)
@@ -37,6 +37,7 @@ ERROR: 0:10002: '' : missing #endif
 ERROR: 35 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:4  Sequence\r
 0:4    move second child to first child (highp float)\r
@@ -112,4 +113,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index d2d43fb..3ac19ca 100644 (file)
@@ -4,6 +4,7 @@ ERROR: 0:61: '' :  syntax error
 ERROR: 2 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 110\r
 ERROR: node is still EOpNull!\r
 0:5  Sequence\r
 0:5    move second child to first child (float)\r
@@ -44,4 +45,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index 3a1d035..d2b00ad 100644 (file)
@@ -8,6 +8,7 @@ ERROR: 0:178: '' :  syntax error
 ERROR: 6 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 110\r
 ERROR: node is still EOpNull!\r
 0:5  Sequence\r
 0:5    move second child to first child (float)\r
@@ -75,4 +76,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index 640f251..1e08ea0 100644 (file)
@@ -86,6 +86,7 @@ ERROR: 12:10003: '' : missing #endif
 ERROR: 79 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 400\r
 ERROR: node is still EOpNull!\r
 0:5  Sequence\r
 0:5    move second child to first child (float)\r
@@ -196,4 +197,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 400\r
 \r
index 311c10d..60cc7e2 100644 (file)
@@ -2,6 +2,7 @@
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 WARNING: 0:3: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:5  Function Definition: main( (void)\r
 0:5    Function Parameters: \r
@@ -19,4 +20,5 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 80c45cf..aa454d1 100644 (file)
@@ -2,6 +2,7 @@
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 WARNING: 0:3: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:7  Function Definition: main( (void)\r
 0:7    Function Parameters: \r
@@ -19,4 +20,5 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 0a86180..5756f3c 100644 (file)
@@ -1,6 +1,7 @@
 dce.frag\r
 Warning, version 400 is not yet complete; some version-specific features are present, but many are missing.\r
 \r
+Shader version: 400\r
 0:? Sequence\r
 0:5  Sequence\r
 0:5    move second child to first child (int)\r
@@ -139,4 +140,5 @@ Linked fragment stage:
 \r
 ERROR: Linking fragment stage: Missing entry point: Each stage requires one "void main()" entry point\r
 \r
+Shader version: 400\r
 \r
index 0a72ab7..eb3e6da 100644 (file)
@@ -27,6 +27,7 @@ WARNING: 0:49: 'foob__vp' : identifiers containing consecutive underscores ("__"
 ERROR: 18 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 120\r
 ERROR: node is still EOpNull!\r
 0:5  Sequence\r
 0:5    move second child to first child (int)\r
@@ -271,4 +272,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 120\r
 \r
index 0bbb5b2..d10c0bd 100644 (file)
@@ -1,5 +1,6 @@
 ../../LunarGLASS/test/deepRvalue.frag\r
 \r
+Shader version: 120\r
 0:? Sequence\r
 0:5  Sequence\r
 0:5    move second child to first child (4-component vector of float)\r
 Linked fragment stage:\r
 \r
 \r
+Shader version: 120\r
 \r
index 5e85845..7401c07 100644 (file)
@@ -3,6 +3,7 @@ Warning, version 130 is not yet complete; most features are present, but a few a
 WARNING: 0:3: varying deprecated in version 130; may be removed in future release\r
 WARNING: 0:4: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:6  Function Definition: main( (void)\r
 0:6    Function Parameters: \r
@@ -21,4 +22,5 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 35630f0..7329ca1 100644 (file)
@@ -1,5 +1,6 @@
 ../../LunarGLASS/test/discard-dce.frag\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:4  Function Definition: main( (void)\r
 0:4    Function Parameters: \r
 Linked fragment stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index 331c35b..fdb4237 100644 (file)
@@ -1,5 +1,6 @@
 ../../LunarGLASS/test/doWhileLoop.frag\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:7  Function Definition: main( (void)\r
 0:7    Function Parameters: \r
@@ -33,4 +34,5 @@
 Linked fragment stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index c712fbb..c7e8a81 100644 (file)
@@ -1,5 +1,6 @@
 ../../LunarGLASS/test/earlyReturnDiscard.frag\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:19  Function Definition: main( (void)\r
 0:19    Function Parameters: \r
 Linked fragment stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index 683b29d..d431ff9 100644 (file)
@@ -1,15 +1,18 @@
 empty.frag\r
 \r
+Shader version: 100\r
 0:? Sequence\r
 0:?   Linker Objects\r
 \r
 empty2.frag\r
 \r
+Shader version: 100\r
 0:? Sequence\r
 0:?   Linker Objects\r
 \r
 empty3.frag\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:?   Linker Objects\r
 \r
@@ -22,6 +25,7 @@ ERROR: Linking fragment stage: Cannot mix ES profile with non-ES profile shaders
 \r
 ERROR: Linking fragment stage: Missing entry point: Each stage requires one "void main()" entry point\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:?   Linker Objects\r
 \r
index dbf6300..215f235 100644 (file)
@@ -4,6 +4,7 @@ ERROR: 0:1: 'int' :  main function cannot return a value
 ERROR: 2 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 100\r
 ERROR: node is still EOpNull!\r
 0:1  Function Definition: main(i1; (mediump int)\r
 0:1    Function Parameters: \r
@@ -18,4 +19,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 100\r
 \r
index 3755e8d..cf1c016 100644 (file)
@@ -1,5 +1,6 @@
 ../../LunarGLASS/test/flowControl.frag\r
 \r
+Shader version: 120\r
 0:? Sequence\r
 0:10  Function Definition: main( (void)\r
 0:10    Function Parameters: \r
@@ -41,4 +42,5 @@
 Linked fragment stage:\r
 \r
 \r
+Shader version: 120\r
 \r
index 08f3174..dbb1bdb 100644 (file)
@@ -1,5 +1,6 @@
 ../../LunarGLASS/test/forLoop.frag\r
 \r
+Shader version: 120\r
 0:? Sequence\r
 0:8  Function Definition: main( (void)\r
 0:8    Function Parameters: \r
@@ -39,4 +40,5 @@
 Linked fragment stage:\r
 \r
 \r
+Shader version: 120\r
 \r
index 4769eb9..62140dc 100644 (file)
@@ -1,5 +1,6 @@
 forwardRef.frag\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:11  Function Definition: main( (void)\r
 0:11    Function Parameters: \r
@@ -63,4 +64,5 @@ forwardRef.frag
 Linked fragment stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index 48f6a63..6362de1 100644 (file)
@@ -2,6 +2,7 @@
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 WARNING: 0:4: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:7  Sequence\r
 0:7    move second child to first child (float)\r
@@ -93,4 +94,5 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 4780bf8..8285868 100644 (file)
@@ -1,6 +1,7 @@
 ../../LunarGLASS/test/functionSemantics.frag\r
 Warning, version 400 is not yet complete; some version-specific features are present, but many are missing.\r
 \r
+Shader version: 400\r
 0:? Sequence\r
 0:5  Function Definition: foo(i1;i1;i1;i1;i1;i1; (int)\r
 0:5    Function Parameters: \r
@@ -193,4 +194,5 @@ Warning, version 400 is not yet complete; some version-specific features are pre
 Linked fragment stage:\r
 \r
 \r
+Shader version: 400\r
 \r
index 6f1699b..218ca07 100644 (file)
@@ -1,5 +1,6 @@
 ../../LunarGLASS/test/length.frag\r
 \r
+Shader version: 120\r
 0:? Sequence\r
 0:11  Function Definition: main( (void)\r
 0:11    Function Parameters: \r
@@ -31,4 +32,5 @@
 Linked fragment stage:\r
 \r
 \r
+Shader version: 120\r
 \r
index 87af5b4..ad3da79 100644 (file)
@@ -23,6 +23,7 @@ ERROR: 0:150: '' :  syntax error
 ERROR: 19 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:20  Function Definition: main( (void)\r
 0:20    Function Parameters: \r
@@ -188,4 +189,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index 642c2ae..4313aae 100644 (file)
@@ -23,6 +23,7 @@ ERROR: 0:55: 'line continuation' : not supported for this version or the enabled
 ERROR: 20 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 100\r
 ERROR: node is still EOpNull!\r
 0:20  Function Definition: main( (void)\r
 0:20    Function Parameters: \r
@@ -95,4 +96,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 100\r
 \r
index 693be98..0bdcabb 100644 (file)
@@ -1,6 +1,7 @@
 link1.frag\r
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:8  Sequence\r
 0:8    move second child to first child (4-component vector of float)\r
@@ -82,6 +83,9 @@ Warning, version 130 is not yet complete; most features are present, but a few a
 link2.frag\r
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 \r
+Shader version: 130\r
+Requested GL_OES_standard_derivatives\r
+Requested GL_OES_texture_3D\r
 0:? Sequence\r
 0:8  Sequence\r
 0:8    move second child to first child (4-component vector of float)\r
@@ -151,6 +155,10 @@ Warning, version 130 is not yet complete; most features are present, but a few a
 \r
 link3.frag\r
 \r
+Shader version: 300\r
+Requested GL_OES_EGL_image_external\r
+Requested GL_OES_standard_derivatives\r
+Requested GL_OES_texture_3D\r
 0:? Sequence\r
 0:?   Linker Objects\r
 0:?     'iv3' (smooth in highp 2-component vector of float)\r
@@ -174,6 +182,10 @@ ERROR: Linking fragment stage: Types must match:
 ERROR: Linking fragment stage: Precision qualifiers must match:\r
     iv3: "smooth in 3-component vector of float" versus "smooth in highp 2-component vector of float"\r
 \r
+Shader version: 300\r
+Requested GL_OES_EGL_image_external\r
+Requested GL_OES_standard_derivatives\r
+Requested GL_OES_texture_3D\r
 0:? Sequence\r
 0:8  Sequence\r
 0:8    move second child to first child (4-component vector of float)\r
index 95f72bb..9a3c6c8 100644 (file)
@@ -3,6 +3,7 @@ Warning, version 130 is not yet complete; most features are present, but a few a
 WARNING: 0:4: varying deprecated in version 130; may be removed in future release\r
 WARNING: 0:5: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:34  Function Definition: main( (void)\r
 0:34    Function Parameters: \r
@@ -209,4 +210,5 @@ WARNING: 0:5: varying deprecated in version 130; may be removed in future releas
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index db286d9..4ebdc5b 100644 (file)
@@ -2,6 +2,7 @@
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 WARNING: 0:14: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:53  Function Definition: main( (void)\r
 0:53    Function Parameters: \r
@@ -969,4 +970,5 @@ WARNING: 0:14: varying deprecated in version 130; may be removed in future relea
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 6a6aef8..b4ae4be 100644 (file)
@@ -2,6 +2,7 @@
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 WARNING: 0:14: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:53  Function Definition: main( (void)\r
 0:53    Function Parameters: \r
@@ -218,4 +219,5 @@ WARNING: 0:14: varying deprecated in version 130; may be removed in future relea
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 4510d74..7dbcb35 100644 (file)
@@ -1,5 +1,6 @@
 mains1.frag\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:3  Function Definition: main( (void)\r
 0:3    Function Parameters: \r
@@ -7,6 +8,7 @@ mains1.frag
 \r
 mains2.frag\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:3  Function Definition: main( (void)\r
 0:3    Function Parameters: \r
@@ -18,6 +20,7 @@ Warning, version 150 is not yet complete; some version-specific features are pre
 ERROR: 1 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 150\r
 invocations = 0\r
 max_vertices = 0\r
 input primitive = none\r
@@ -30,6 +33,7 @@ ERROR: node is still EOpNull!
 noMain2.geom\r
 Warning, version 150 is not yet complete; some version-specific features are present, but many are missing.\r
 \r
+Shader version: 150\r
 invocations = 0\r
 max_vertices = 0\r
 input primitive = none\r
@@ -52,6 +56,7 @@ Linked fragment stage:
 ERROR: Linking fragment stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:\r
     main(\r
 \r
+Shader version: 150\r
 invocations = 0\r
 max_vertices = 0\r
 input primitive = none\r
@@ -62,6 +67,7 @@ ERROR: node is still EOpNull!
 0:3  Function Definition: bar( (void)\r
 0:3    Function Parameters: \r
 0:?   Linker Objects\r
+Shader version: 110\r
 0:? Sequence\r
 0:3  Function Definition: main( (void)\r
 0:3    Function Parameters: \r
index c0ad3eb..640d483 100644 (file)
@@ -4,6 +4,7 @@ WARNING: 0:6: varying deprecated in version 130; may be removed in future releas
 WARNING: 0:17: varying deprecated in version 130; may be removed in future release\r
 WARNING: 0:22: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:25  Function Definition: main( (void)\r
 0:25    Function Parameters: \r
@@ -256,4 +257,5 @@ WARNING: 0:22: varying deprecated in version 130; may be removed in future relea
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index abcdbb0..bac7a5c 100644 (file)
@@ -4,6 +4,7 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
 WARNING: 0:13: varying deprecated in version 130; may be removed in future release\r
 WARNING: 0:15: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 150\r
 0:? Sequence\r
 0:19  Function Definition: main( (void)\r
 0:19    Function Parameters: \r
@@ -164,4 +165,5 @@ WARNING: 0:15: varying deprecated in version 130; may be removed in future relea
 Linked fragment stage:\r
 \r
 \r
+Shader version: 150\r
 \r
index b3d120a..ecfc69c 100644 (file)
@@ -9,6 +9,7 @@ ERROR: 0:21: '[' :  vector index out of range '4'
 ERROR: 7 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 120\r
 ERROR: node is still EOpNull!\r
 0:12  Function Definition: main( (void)\r
 0:12    Function Parameters: \r
@@ -40,4 +41,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 120\r
 \r
index 4eec70a..4bf62c5 100644 (file)
@@ -1,6 +1,7 @@
 ../../LunarGLASS/test/newTexture.frag\r
 Warning, version 430 is not yet complete; some version-specific features are present, but many are missing.\r
 \r
+Shader version: 430\r
 0:? Sequence\r
 0:34  Function Definition: main( (void)\r
 0:34    Function Parameters: \r
@@ -230,4 +231,5 @@ Warning, version 430 is not yet complete; some version-specific features are pre
 Linked fragment stage:\r
 \r
 \r
+Shader version: 430\r
 \r
index fa97a7d..47068a1 100644 (file)
@@ -1,5 +1,6 @@
 noMain.vert\r
 \r
+Shader version: 300\r
 0:? Sequence\r
 0:3  Function Definition: foo( (void)\r
 0:3    Function Parameters: \r
@@ -12,6 +13,7 @@ ERROR: 0:7: 'main' : function already has a body
 ERROR: 1 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:3  Function Definition: main( (void)\r
 0:3    Function Parameters: \r
@@ -27,4 +29,6 @@ ERROR: Linking vertex stage: Missing entry point: Each stage requires one "void
 Linked fragment stage:\r
 \r
 \r
+Shader version: 300\r
+Shader version: 300\r
 \r
index 23bb068..88bcc9c 100644 (file)
@@ -1,5 +1,6 @@
 nonSquare.vert\r
 \r
+Shader version: 120\r
 0:? Sequence\r
 0:15  Function Definition: main( (void)\r
 0:15    Function Parameters: \r
@@ -92,4 +93,5 @@ nonSquare.vert
 Linked vertex stage:\r
 \r
 \r
+Shader version: 120\r
 \r
index f1c6196..f276931 100644 (file)
@@ -13,6 +13,7 @@ ERROR: 0:88: '' : float literal needs a decimal point or exponent
 ERROR: 10 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 400\r
 ERROR: node is still EOpNull!\r
 0:3  Function Definition: main( (void)\r
 0:3    Function Parameters: \r
@@ -384,4 +385,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 400\r
 \r
index 2813257..0ad8c83 100644 (file)
@@ -1,5 +1,6 @@
 pointCoord.frag\r
 \r
+Shader version: 100\r
 0:? Sequence\r
 0:5  Function Definition: main( (void)\r
 0:5    Function Parameters: \r
@@ -35,4 +36,5 @@ pointCoord.frag
 Linked fragment stage:\r
 \r
 \r
+Shader version: 100\r
 \r
index 54daf02..2c961aa 100644 (file)
@@ -9,6 +9,7 @@ ERROR: 0:76: 'bool' : type cannot have precision qualifier
 ERROR: 7 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 100\r
 ERROR: node is still EOpNull!\r
 0:5  Function Definition: foo(vf3; (lowp 2-component vector of float)\r
 0:5    Function Parameters: \r
@@ -127,4 +128,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 100\r
 \r
index 529b628..0d9600d 100644 (file)
@@ -5,6 +5,7 @@ ERROR: 0:14: 'sampler/image' : type requires declaration of default precision qu
 ERROR: 3 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:18  Function Definition: main( (void)\r
 0:18    Function Parameters: \r
@@ -52,4 +53,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index daaacfb..7492a04 100644 (file)
@@ -1,6 +1,7 @@
 ../../LunarGLASS/test/prepost.frag\r
 Warning, version 140 is not yet complete; most features are present, but a few are missing.\r
 \r
+Shader version: 140\r
 0:? Sequence\r
 0:3  Function Definition: main( (void)\r
 0:3    Function Parameters: \r
@@ -137,4 +138,5 @@ Warning, version 140 is not yet complete; most features are present, but a few a
 Linked fragment stage:\r
 \r
 \r
+Shader version: 140\r
 \r
index c095a42..3c50053 100644 (file)
@@ -1,6 +1,7 @@
 recurse1.vert\r
 Warning, version 330 is not yet complete; some version-specific features are present, but many are missing.\r
 \r
+Shader version: 330\r
 0:? Sequence\r
 0:3  Function Definition: main( (void)\r
 0:3    Function Parameters: \r
@@ -71,6 +72,7 @@ Warning, version 330 is not yet complete; some version-specific features are pre
 recurse1.frag\r
 Warning, version 330 is not yet complete; some version-specific features are present, but many are missing.\r
 \r
+Shader version: 330\r
 0:? Sequence\r
 0:5  Function Definition: main( (void)\r
 0:5    Function Parameters: \r
@@ -159,6 +161,7 @@ Warning, version 330 is not yet complete; some version-specific features are pre
 recurse2.frag\r
 Warning, version 330 is not yet complete; some version-specific features are present, but many are missing.\r
 \r
+Shader version: 330\r
 0:? Sequence\r
 0:9  Function Definition: cbar(i1; (float)\r
 0:9    Function Parameters: \r
@@ -217,6 +220,8 @@ ERROR: Linking fragment stage: Recursion detected:
 ERROR: Linking fragment stage: Recursion detected:\r
     cfoo(f1; calling cbar(i1;\r
 \r
+Shader version: 330\r
+Shader version: 330\r
 0:? Sequence\r
 0:5  Function Definition: main( (void)\r
 0:5    Function Parameters: \r
index ad427f7..2d2bce9 100644 (file)
@@ -1,5 +1,6 @@
 sample.frag\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:38  Function Definition: main( (void)\r
 0:38    Function Parameters: \r
@@ -17,4 +18,5 @@ sample.frag
 Linked fragment stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index bd073fd..4179740 100644 (file)
@@ -1,5 +1,6 @@
 sample.vert\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:38  Function Definition: main( (void)\r
 0:38    Function Parameters: \r
@@ -22,4 +23,5 @@ sample.vert
 Linked vertex stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index 50fcb95..440dc97 100644 (file)
@@ -2,6 +2,7 @@
 Warning, version 150 is not yet complete; some version-specific features are present, but many are missing.\r
 WARNING: 0:4: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 150\r
 0:? Sequence\r
 0:7  Function Definition: foo( (4-component vector of float)\r
 0:7    Function Parameters: \r
@@ -23,4 +24,5 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
 Linked fragment stage:\r
 \r
 \r
+Shader version: 150\r
 \r
index 9c0c1c5..4c3fbd0 100644 (file)
@@ -52,6 +52,8 @@ ERROR: 0:232: 'out' : not allowed in nested scope
 ERROR: 49 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 430\r
+Requested GL_3DL_array_objects\r
 gl_FragCoord pixel center is integer\r
 gl_FragCoord origin is upper left\r
 ERROR: node is still EOpNull!\r
@@ -302,6 +304,8 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 430\r
+Requested GL_3DL_array_objects\r
 gl_FragCoord pixel center is integer\r
 gl_FragCoord origin is upper left\r
 \r
index dded395..d8ab03e 100644 (file)
@@ -47,6 +47,8 @@ ERROR: 0:194: 'constructor' : constructing from a non-dereferenced array
 ERROR: 42 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 430\r
+Requested GL_3DL_array_objects\r
 ERROR: node is still EOpNull!\r
 0:134  Function Definition: funcA(I21; (4-component vector of float)\r
 0:134    Function Parameters: \r
@@ -321,4 +323,6 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 430\r
+Requested GL_3DL_array_objects\r
 \r
index 4cf5d3e..32db99d 100644 (file)
@@ -2,6 +2,7 @@
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 WARNING: 0:4: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:29  Function Definition: main( (void)\r
 0:29    Function Parameters: \r
@@ -53,4 +54,5 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index c646d58..23890a1 100644 (file)
@@ -2,6 +2,7 @@
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 WARNING: 0:4: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:41  Function Definition: main( (void)\r
 0:41    Function Parameters: \r
@@ -174,4 +175,5 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 735e0e0..90650a5 100644 (file)
@@ -2,6 +2,7 @@
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 WARNING: 0:3: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:20  Function Definition: main( (void)\r
 0:20    Function Parameters: \r
@@ -84,4 +85,5 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 8766619..0f0da26 100644 (file)
@@ -20,6 +20,7 @@ ERROR: 0:140: 'nestedX' : undeclared identifier
 ERROR: 18 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:6  Function Definition: main( (void)\r
 0:6    Function Parameters: \r
@@ -337,4 +338,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index b4e22b2..70806a6 100644 (file)
@@ -1,5 +1,6 @@
 ../../LunarGLASS/test/swizzle.frag\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:9  Function Definition: main( (void)\r
 0:9    Function Parameters: \r
 Linked fragment stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index 40c1f5a..7bdd729 100644 (file)
@@ -4,6 +4,7 @@ ERROR: 0:9: '' :  syntax error
 ERROR: 2 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 120\r
 ERROR: node is still EOpNull!\r
 0:?   Linker Objects\r
 0:?     'bigColor' (uniform 4-component vector of float)\r
@@ -14,4 +15,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 120\r
 \r
index 8e61b44..9b7c57a 100644 (file)
@@ -1,5 +1,6 @@
 ../../LunarGLASS/test/test.frag\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:13  Function Definition: main( (void)\r
 0:13    Function Parameters: \r
@@ -58,4 +59,5 @@
 Linked fragment stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index 15a5482..d4a44f1 100644 (file)
@@ -3,6 +3,7 @@ Warning, version 130 is not yet complete; most features are present, but a few a
 WARNING: 0:14: varying deprecated in version 130; may be removed in future release\r
 WARNING: 0:15: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:17  Function Definition: main( (void)\r
 0:17    Function Parameters: \r
@@ -284,4 +285,5 @@ WARNING: 0:15: varying deprecated in version 130; may be removed in future relea
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index a75d43b..973df47 100644 (file)
@@ -16,6 +16,7 @@ ERROR: 0:36: '' : float literal too long
 ERROR: 14 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:9  Sequence\r
 0:9    move second child to first child (highp int)\r
@@ -111,4 +112,5 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index cbd55e0..793d085 100644 (file)
@@ -1,6 +1,7 @@
 ../../LunarGLASS/test/types.frag\r
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:33  Function Definition: main( (void)\r
 0:33    Function Parameters: \r
@@ -340,4 +341,5 @@ Warning, version 130 is not yet complete; most features are present, but a few a
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 155aa9c..de34477 100644 (file)
@@ -11,6 +11,7 @@ ERROR: 0:63: 'float' : type requires declaration of default precision qualifier
 ERROR: 9 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:15  Function Definition: main( (void)\r
 0:15    Function Parameters: \r
@@ -309,4 +310,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index 6156ddb..2d2cce1 100644 (file)
@@ -1,6 +1,7 @@
 ../../LunarGLASS/test/uniformArray.frag\r
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:7  Function Definition: main( (void)\r
 0:7    Function Parameters: \r
@@ -50,4 +51,5 @@ Warning, version 130 is not yet complete; most features are present, but a few a
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 565373e..eae4a6a 100644 (file)
@@ -2,6 +2,7 @@
 Warning, version 130 is not yet complete; most features are present, but a few are missing.\r
 WARNING: 0:3: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:29  Function Definition: main( (void)\r
 0:29    Function Parameters: \r
@@ -114,4 +115,5 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index e930a0d..f6b1089 100644 (file)
@@ -5,6 +5,7 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
 WARNING: 0:6: varying deprecated in version 130; may be removed in future release\r
 WARNING: 0:8: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:10  Function Definition: main( (void)\r
 0:10    Function Parameters: \r
@@ -63,4 +64,5 @@ WARNING: 0:8: varying deprecated in version 130; may be removed in future releas
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index b23fb63..6f97318 100644 (file)
@@ -5,6 +5,7 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
 WARNING: 0:6: varying deprecated in version 130; may be removed in future release\r
 WARNING: 0:8: varying deprecated in version 130; may be removed in future release\r
 \r
+Shader version: 130\r
 0:? Sequence\r
 0:12  Function Definition: main( (void)\r
 0:12    Function Parameters: \r
@@ -66,4 +67,5 @@ WARNING: 0:8: varying deprecated in version 130; may be removed in future releas
 Linked fragment stage:\r
 \r
 \r
+Shader version: 130\r
 \r
index 1a73847..d66a9f9 100644 (file)
@@ -4,6 +4,7 @@ ERROR: 0:34: '#version' : must occur first in shader
 ERROR: 2 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 300\r
 ERROR: node is still EOpNull!\r
 0:41  Function Definition: main( (void)\r
 0:41    Function Parameters: \r
@@ -24,4 +25,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 300\r
 \r
index 1f7b5d5..16cf56d 100644 (file)
@@ -1,6 +1,7 @@
 versionsClean.vert\r
 Warning, version 420 is not yet complete; some version-specific features are present, but many are missing.\r
 \r
+Shader version: 420\r
 0:? Sequence\r
 0:40  Function Definition: main( (void)\r
 0:40    Function Parameters: \r
@@ -24,4 +25,5 @@ Warning, version 420 is not yet complete; some version-specific features are pre
 Linked vertex stage:\r
 \r
 \r
+Shader version: 420\r
 \r
index 91f035b..0547d24 100644 (file)
@@ -6,6 +6,7 @@ ERROR: 0:44: 'floating-point suffix' : not supported for this version or the ena
 ERROR: 4 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 110\r
 ERROR: node is still EOpNull!\r
 0:42  Function Definition: main( (void)\r
 0:42    Function Parameters: \r
@@ -25,4 +26,5 @@ ERROR: node is still EOpNull!
 Linked fragment stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index 77d062f..3964085 100644 (file)
@@ -6,6 +6,8 @@ ERROR: 0:45: 'discard' : not supported in this stage: vertex
 ERROR: 2 compilation errors.  No code generated.\r
 \r
 \r
+Shader version: 420\r
+Requested GL_ARB_texture_rectangle\r
 ERROR: node is still EOpNull!\r
 0:42  Function Definition: main( (void)\r
 0:42    Function Parameters: \r
@@ -30,4 +32,6 @@ ERROR: node is still EOpNull!
 Linked vertex stage:\r
 \r
 \r
+Shader version: 420\r
+Requested GL_ARB_texture_rectangle\r
 \r
index 2a408ff..8e071fc 100644 (file)
@@ -1,5 +1,6 @@
 ../../LunarGLASS/test/voidFunction.frag\r
 \r
+Shader version: 120\r
 0:? Sequence\r
 0:7  Sequence\r
 0:7    move second child to first child (float)\r
@@ -46,4 +47,5 @@
 Linked fragment stage:\r
 \r
 \r
+Shader version: 120\r
 \r
index fc1377e..9539e2c 100644 (file)
@@ -1,5 +1,6 @@
 ../../LunarGLASS/test/whileLoop.frag\r
 \r
+Shader version: 110\r
 0:? Sequence\r
 0:7  Function Definition: main( (void)\r
 0:7    Function Parameters: \r
@@ -33,4 +34,5 @@
 Linked fragment stage:\r
 \r
 \r
+Shader version: 110\r
 \r
index 3eb265e..7c69891 100644 (file)
@@ -31,3 +31,6 @@ struct S {
 uniform S s = S(82, 3.9);\r
 uniform S sn = S(82, 3.9);\r
 uniform S se = S(81, 3.9);\r
+\r
+#extension GL_OES_texture_3D : enable\r
+#extension GL_OES_standard_derivatives : enable\r
index a9604c4..f886b23 100644 (file)
@@ -3,3 +3,7 @@
 precision highp float;\r
 \r
 in vec2 iv3;\r
+\r
+#extension GL_OES_standard_derivatives : enable\r
+#extension GL_OES_EGL_image_external : require\r
+#extension GL_OES_texture_3D : enable\r
index f4ba5b3..e5721e3 100644 (file)
@@ -457,6 +457,8 @@ void TParseContext::updateExtensionBehavior(const char* extension, const char* b
         } else {
             if (iter->second == EBhDisablePartial)
                 warn(getCurrentLoc(), "extension is only partially supported:", "#extension", extension);
+            if (behavior == EBhEnable || behavior == EBhRequire)
+                intermediate.addRequestedExtension(extension);
             iter->second = behavior;
         }
     }
index 9f89cad..36de123 100644 (file)
@@ -579,6 +579,12 @@ bool TOutputTraverser::visitSwitch(TVisit /* visit */, TIntermSwitch* node)
 //
 void TIntermediate::output(TInfoSink& infoSink, bool tree)
 {
+    infoSink.debug << "Shader version: " << version << "\n";
+    if (requestedExtensions.size() > 0) {
+        for (std::set<std::string>::const_iterator extIt = requestedExtensions.begin(); extIt != requestedExtensions.end(); ++extIt)
+            infoSink.debug << "Requested " << *extIt << "\n";
+    }
+
     if (xfbMode)
         infoSink.debug << "in xfb mode\n";
 
index 44b350e..7674aa9 100644 (file)
@@ -131,11 +131,16 @@ void TIntermediate::merge(TInfoSink& infoSink, TIntermediate& unit)
         return;\r
 \r
     if (treeRoot == 0) {\r
-        version = unit.version;\r
         treeRoot = unit.treeRoot;\r
+        version = unit.version;\r
+        requestedExtensions = unit.requestedExtensions;\r
         return;\r
-    } else\r
-        version = std::max(version, unit.version);\r
+    }\r
+\r
+    // Getting this far means we have two existing trees to merge...\r
+    \r
+    version = std::max(version, unit.version);\r
+    requestedExtensions.insert(unit.requestedExtensions.begin(), unit.requestedExtensions.end());\r
 \r
     // Get the top-level globals of each unit\r
     TIntermSequence& globals = treeRoot->getAsAggregate()->getSequence();\r
index aad8135..621772f 100644 (file)
@@ -127,6 +127,9 @@ public:
     void setProfile(EProfile p) { profile = p; }
     EProfile getProfile() const { return profile; }
     EShLanguage getStage() const { return language; }
+    void addRequestedExtension(const char* extension) { requestedExtensions.insert(extension); }
+    const std::set<std::string>& getRequestedExtensions() const { return requestedExtensions; }
+
     void setTreeRoot(TIntermNode* r) { treeRoot = r; }
     TIntermNode* getTreeRoot() const { return treeRoot; }
     void addMainCount() { ++numMains; }
@@ -255,11 +258,11 @@ protected:
     bool userOutputUsed() const;
     int getBaseAlignmentScalar(const TType&, int& size) const;
 
-protected:
     const EShLanguage language;
     TIntermNode* treeRoot;
     EProfile profile;
     int version;
+    std::set<std::string> requestedExtensions;  // cumulation of all enabled or required extensions; not connected to what subset of the shader used them
     TBuiltInResource resources;
     int numMains;
     int numErrors;