From 7cbfdf4394bf816bc6919cee547e5dc797b0b7d5 Mon Sep 17 00:00:00 2001 From: John Kessenich <cepheus@frii.com> Date: Mon, 6 Jan 2014 21:27:56 +0000 Subject: [PATCH] Minor infrastructure changes, to simplify an upcoming check in: - print out block member types when printing a block (makes all test results change) - const versions of all intermediate.h type-identification methods - layoutSlotLocation -> layoutLocation git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24664 e7fa87d3-cd2b-0410-9028-fcbf551c1848 --- Test/baseResults/100.frag.out | 18 +- Test/baseResults/100scope.vert.out | 8 +- Test/baseResults/110scope.vert.out | 6 +- Test/baseResults/120.frag.out | 12 +- Test/baseResults/140.frag.out | 2 +- Test/baseResults/150.frag.out | 2 +- Test/baseResults/150.geom.out | 54 ++-- Test/baseResults/150.tesc.out | 298 +++++++++---------- Test/baseResults/150.vert.out | 10 +- Test/baseResults/300.frag.out | 34 +-- Test/baseResults/300.vert.out | 18 +- Test/baseResults/300block.frag.out | 26 +- Test/baseResults/300layout.vert.out | 20 +- Test/baseResults/300operations.frag.out | 32 +- Test/baseResults/300scope.vert.out | 6 +- Test/baseResults/330.frag.out | 6 +- Test/baseResults/400.frag.out | 4 +- Test/baseResults/400.geom.out | 12 +- Test/baseResults/410.geom.out | 14 +- Test/baseResults/420.geom.out | 16 +- Test/baseResults/420.vert.out | 10 +- Test/baseResults/420_size_gl_in.geom.out | 10 +- Test/baseResults/430.vert.out | 14 +- Test/baseResults/430scope.vert.out | 8 +- Test/baseResults/aggOps.frag.out | 38 +-- Test/baseResults/array100.frag.out | 26 +- Test/baseResults/constErrors.frag.out | 8 +- Test/baseResults/constFold.frag.out | 2 +- Test/baseResults/cppSimple.vert.out | 4 +- Test/baseResults/deepRvalue.frag.out | 4 +- Test/baseResults/functionSemantics.frag.out | 6 +- Test/baseResults/link1.frag.out | 18 +- Test/baseResults/localAggregates.frag.out | 40 +-- Test/baseResults/prepost.frag.out | 14 +- Test/baseResults/specExamples.frag.out | 18 +- Test/baseResults/specExamples.vert.out | 28 +- Test/baseResults/structAssignment.frag.out | 28 +- Test/baseResults/structDeref.frag.out | 96 +++--- Test/baseResults/structure.frag.out | 24 +- Test/baseResults/variableArrayIndex.frag.out | 38 +-- Test/baseResults/versionsClean.vert.out | 2 +- Test/baseResults/versionsErrors.vert.out | 2 +- glslang/Include/Types.h | 12 +- glslang/Include/intermediate.h | 71 +++-- glslang/Include/revision.h | 4 +- glslang/MachineIndependent/Constant.cpp | 10 +- glslang/MachineIndependent/ParseHelper.cpp | 16 +- glslang/MachineIndependent/ParseHelper.h | 2 +- glslang/MachineIndependent/Versions.cpp | 2 +- glslang/MachineIndependent/linkValidate.cpp | 10 +- 50 files changed, 592 insertions(+), 571 deletions(-) diff --git a/Test/baseResults/100.frag.out b/Test/baseResults/100.frag.out index dafad7d47..0bd5acda7 100644 --- a/Test/baseResults/100.frag.out +++ b/Test/baseResults/100.frag.out @@ -129,20 +129,20 @@ ERROR: node is still EOpNull! 0:29 'b' (mediump int) 0:29 Constant: 0:29 3 (const int) -0:36 move second child to first child (structure{f,a}) -0:36 's1' (structure{f,a}) -0:36 's2' (structure{f,a}) +0:36 move second child to first child (structure{mediump float f, 10-element array of mediump float a}) +0:36 's1' (structure{mediump float f, 10-element array of mediump float a}) +0:36 's2' (structure{mediump float f, 10-element array of mediump float a}) 0:37 Test condition and select (void) 0:37 Condition 0:37 Compare Equal (bool) -0:37 's1' (structure{f,a}) -0:37 's2' (structure{f,a}) +0:37 's1' (structure{mediump float f, 10-element array of mediump float a}) +0:37 's2' (structure{mediump float f, 10-element array of mediump float a}) 0:37 true case is null 0:38 Test condition and select (void) 0:38 Condition 0:38 Compare Not Equal (bool) -0:38 's1' (structure{f,a}) -0:38 's2' (structure{f,a}) +0:38 's1' (structure{mediump float f, 10-element array of mediump float a}) +0:38 's2' (structure{mediump float f, 10-element array of mediump float a}) 0:38 true case is null 0:40 'b' (mediump int) 0:54 Function Definition: foo10( (void) @@ -325,7 +325,7 @@ ERROR: node is still EOpNull! 0:? 'uint' (mediump int) 0:? 'v' (smooth in 3-element array of mediump 4-component vector of float) 0:? 'f' (mediump float) -0:? '__anon__0' (layout(column_major shared ) uniform block{x}) +0:? '__anon__0' (layout(column_major shared ) uniform block{layout(column_major shared ) mediump int x}) 0:? 'fa' (unsized array of mediump float) 0:? 'f13' (mediump float) 0:? 'fi' (invariant mediump float) @@ -343,7 +343,7 @@ ERROR: node is still EOpNull! 0:? 'f123' (mediump float) 0:? 'f124' (mediump float) 0:? 'sCube' (uniform lowp samplerCube) -0:? 's' (smooth in structure{f}) +0:? 's' (smooth in structure{mediump float f}) Linked fragment stage: diff --git a/Test/baseResults/100scope.vert.out b/Test/baseResults/100scope.vert.out index a196adef9..edf9cd34d 100644 --- a/Test/baseResults/100scope.vert.out +++ b/Test/baseResults/100scope.vert.out @@ -107,12 +107,12 @@ ERROR: node is still EOpNull! 0:60 'x' (highp int) 0:68 Sequence 0:68 Sequence -0:68 move second child to first child (structure{x}) -0:68 'S' (structure{x}) +0:68 move second child to first child (structure{highp int x}) +0:68 'S' (structure{highp int x}) 0:68 Constant: 0:68 0 (const int) 0:69 x: direct index for structure (highp int) -0:69 'S' (structure{x}) +0:69 'S' (structure{highp int x}) 0:69 Constant: 0:69 0 (const int) 0:73 Constant: @@ -120,7 +120,7 @@ ERROR: node is still EOpNull! 0:? Linker Objects 0:? 'b' (bool) 0:? 'tan' (highp float) -0:? 's' (smooth out structure{f}) +0:? 's' (smooth out structure{highp float f}) Linked vertex stage: diff --git a/Test/baseResults/110scope.vert.out b/Test/baseResults/110scope.vert.out index cabb6582f..26b2e4065 100644 --- a/Test/baseResults/110scope.vert.out +++ b/Test/baseResults/110scope.vert.out @@ -99,12 +99,12 @@ ERROR: node is still EOpNull! 0:60 'x' (int) 0:68 Sequence 0:68 Sequence -0:68 move second child to first child (structure{x}) -0:68 'S' (structure{x}) +0:68 move second child to first child (structure{int x}) +0:68 'S' (structure{int x}) 0:68 Constant: 0:68 0 (const int) 0:69 x: direct index for structure (int) -0:69 'S' (structure{x}) +0:69 'S' (structure{int x}) 0:69 Constant: 0:69 0 (const int) 0:73 Constant: diff --git a/Test/baseResults/120.frag.out b/Test/baseResults/120.frag.out index bc461f2a3..77e44d0d0 100644 --- a/Test/baseResults/120.frag.out +++ b/Test/baseResults/120.frag.out @@ -47,9 +47,9 @@ ERROR: node is still EOpNull! 0:23 Construct mat2x3 (2X3 matrix of float) 0:23 'm' (uniform 4X2 matrix of float) 0:27 Sequence -0:27 move second child to first child (structure{f}) -0:27 'sv' (structure{f}) -0:27 Construct structure (structure{f}) +0:27 move second child to first child (structure{float f}) +0:27 'sv' (structure{float f}) +0:27 Construct structure (structure{float f}) 0:27 Convert int to float (float) 0:27 'a' (int) 0:28 Sequence @@ -196,9 +196,9 @@ ERROR: node is still EOpNull! 0:51 false case 0:51 'a' (int) 0:52 Sequence -0:52 move second child to first child (structure{f}) -0:52 'news' (structure{f}) -0:52 'sv' (structure{f}) +0:52 move second child to first child (structure{float f}) +0:52 'news' (structure{float f}) +0:52 'sv' (structure{float f}) 0:54 vector swizzle (2-component vector of float) 0:54 'i' (smooth in 4-component vector of float) 0:54 Sequence diff --git a/Test/baseResults/140.frag.out b/Test/baseResults/140.frag.out index eb5ceb103..6beb4c5b4 100644 --- a/Test/baseResults/140.frag.out +++ b/Test/baseResults/140.frag.out @@ -28,7 +28,7 @@ ERROR: node is still EOpNull! 0:? 'o' (out 4-component vector of float) 0:? 'gl_ClipDistance' (smooth in 5-element array of float) 0:? 'gl_ClipDistance' (smooth in 5-element array of float) -0:? 's' (smooth in structure{f}) +0:? 's' (smooth in structure{float f}) 0:? 'patch' (float) diff --git a/Test/baseResults/150.frag.out b/Test/baseResults/150.frag.out index 148f5ea54..49ef96830 100644 --- a/Test/baseResults/150.frag.out +++ b/Test/baseResults/150.frag.out @@ -26,7 +26,7 @@ ERROR: node is still EOpNull! 0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float) 0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float) 0:? 'foo' (smooth in 4-component vector of float) -0:? 's' (smooth in structure{f}) +0:? 's' (smooth in structure{float f}) 0:? 'patch' (float) diff --git a/Test/baseResults/150.geom.out b/Test/baseResults/150.geom.out index e1c1ae4ff..5ce6787fc 100644 --- a/Test/baseResults/150.geom.out +++ b/Test/baseResults/150.geom.out @@ -48,12 +48,12 @@ ERROR: node is still EOpNull! 0:30 0.000000 0:32 move second child to first child (3-component vector of float) 0:32 color: direct index for structure (layout(stream=0 ) 3-component vector of float) -0:32 '__anon__0' (layout(stream=0 ) out block{color}) +0:32 '__anon__0' (layout(stream=0 ) out block{layout(stream=0 ) 3-component vector of float color}) 0:32 Constant: 0:32 0 (const uint) 0:32 color: direct index for structure (3-component vector of float) -0:32 direct index (block{color}) -0:32 'fromV' (in 4-element array of block{color}) +0:32 direct index (block{3-component vector of float color}) +0:32 'fromV' (in 4-element array of block{3-component vector of float color}) 0:32 Constant: 0:32 0 (const int) 0:32 Constant: @@ -61,15 +61,15 @@ ERROR: node is still EOpNull! 0:33 move second child to first child (float) 0:33 direct index (layout(stream=0 ) float) 0:33 gl_ClipDistance: direct index for structure (layout(stream=0 ) unsized array of float) -0:33 '__anon__1' (layout(stream=0 ) out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:33 '__anon__1' (layout(stream=0 ) out block{layout(stream=0 ) gl_Position 4-component vector of float gl_Position, layout(stream=0 ) gl_PointSize float gl_PointSize, layout(stream=0 ) unsized array of float gl_ClipDistance}) 0:33 Constant: 0:33 2 (const uint) 0:33 Constant: 0:33 3 (const int) 0:33 direct index (float) 0:33 gl_ClipDistance: direct index for structure (unsized array of float) -0:33 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:33 'gl_in' (in 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:33 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:33 'gl_in' (in 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:33 Constant: 0:33 1 (const int) 0:33 Constant: @@ -78,24 +78,24 @@ ERROR: node is still EOpNull! 0:33 2 (const int) 0:34 move second child to first child (4-component vector of float) 0:34 gl_Position: direct index for structure (layout(stream=0 ) gl_Position 4-component vector of float) -0:34 '__anon__1' (layout(stream=0 ) out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:34 '__anon__1' (layout(stream=0 ) out block{layout(stream=0 ) gl_Position 4-component vector of float gl_Position, layout(stream=0 ) gl_PointSize float gl_PointSize, layout(stream=0 ) unsized array of float gl_ClipDistance}) 0:34 Constant: 0:34 0 (const uint) 0:34 gl_Position: direct index for structure (4-component vector of float) -0:34 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:34 'gl_in' (in 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:34 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:34 'gl_in' (in 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:34 Constant: 0:34 0 (const int) 0:34 Constant: 0:34 0 (const int) 0:35 move second child to first child (float) 0:35 gl_PointSize: direct index for structure (layout(stream=0 ) gl_PointSize float) -0:35 '__anon__1' (layout(stream=0 ) out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:35 '__anon__1' (layout(stream=0 ) out block{layout(stream=0 ) gl_Position 4-component vector of float gl_Position, layout(stream=0 ) gl_PointSize float gl_PointSize, layout(stream=0 ) unsized array of float gl_ClipDistance}) 0:35 Constant: 0:35 1 (const uint) 0:35 gl_PointSize: direct index for structure (float) -0:35 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:35 'gl_in' (in 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:35 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:35 'gl_in' (in 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:35 Constant: 0:35 3 (const int) 0:35 Constant: @@ -113,7 +113,7 @@ ERROR: node is still EOpNull! 0:67 Sequence 0:67 move second child to first child (4-component vector of float) 0:67 a: direct index for structure (layout(stream=6 ) 4-component vector of float) -0:67 'ouuaa6' (layout(stream=6 ) out block{a}) +0:67 'ouuaa6' (layout(stream=6 ) out block{layout(stream=6 ) 4-component vector of float a}) 0:67 Constant: 0:67 0 (const int) 0:67 Constant: @@ -122,28 +122,28 @@ ERROR: node is still EOpNull! 0:67 1.000000 0:67 1.000000 0:? Linker Objects -0:? 'fromV' (in 4-element array of block{color}) -0:? 'toF' (layout(stream=0 ) out block{color}) -0:? '__anon__0' (layout(stream=0 ) out block{color}) -0:? 'gl_in' (in 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:? 'fromV' (in 4-element array of block{3-component vector of float color}) +0:? 'toF' (layout(stream=0 ) out block{layout(stream=0 ) 3-component vector of float color}) +0:? '__anon__0' (layout(stream=0 ) out block{layout(stream=0 ) 3-component vector of float color}) +0:? 'gl_in' (in 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:? 'ov0' (layout(stream=0 ) out 4-component vector of float) 0:? 'ov4' (layout(stream=4 ) out 4-component vector of float) 0:? 'o1v0' (layout(stream=0 ) out 4-component vector of float) 0:? 'ua' (layout(stream=3 ) uniform int) -0:? 'ibb' (layout(stream=3 column_major shared ) uniform block{ua}) +0:? 'ibb' (layout(stream=3 column_major shared ) uniform block{layout(stream=3 column_major shared ) int ua}) 0:? 'ov3' (layout(stream=3 ) out 4-component vector of float) -0:? 'ouuaa6' (layout(stream=6 ) out block{a}) -0:? 'ouua6' (layout(stream=6 ) out block{a}) -0:? 'ouua7' (layout(stream=7 ) out block{a}) +0:? 'ouuaa6' (layout(stream=6 ) out block{layout(stream=6 ) 4-component vector of float a}) +0:? 'ouua6' (layout(stream=6 ) out block{layout(stream=6 ) 4-component vector of float a}) +0:? 'ouua7' (layout(stream=7 ) out block{layout(stream=6 ) 4-component vector of float a}) 0:? 'ov2s3' (layout(stream=3 ) out 4-component vector of float) 0:? 'badv4' (layout(stream=3 ) out 4-component vector of float) 0:? 'bad2v4' (in 4-element array of 4-component vector of float) -0:? '__anon__1' (layout(stream=3 ) out block{a}) -0:? 'outbi' (layout(stream=3 ) out block{a,b,c}) -0:? 'inbi' (in 4-element array of block{a}) -0:? 'insn' (in 4-element array of block{a15}) -0:? '__anon__2' (layout(stream=3 ) out block{f15}) -0:? '__anon__3' (layout(column_major shared ) uniform block{b15}) +0:? '__anon__1' (layout(stream=3 ) out block{layout(stream=3 ) int a}) +0:? 'outbi' (layout(stream=3 ) out block{layout(stream=3 ) int a, layout(stream=3 ) int b, layout(stream=3 ) int c}) +0:? 'inbi' (in 4-element array of block{layout(stream=2 ) int a}) +0:? 'insn' (in 4-element array of block{int a15}) +0:? '__anon__2' (layout(stream=3 ) out block{layout(stream=3 ) float f15}) +0:? '__anon__3' (layout(column_major shared ) uniform block{layout(column_major shared ) bool b15}) Linked geometry stage: diff --git a/Test/baseResults/150.tesc.out b/Test/baseResults/150.tesc.out index 1f4c89130..28c2a92ec 100644 --- a/Test/baseResults/150.tesc.out +++ b/Test/baseResults/150.tesc.out @@ -16,8 +16,8 @@ vertices = 4 0:20 move second child to first child (4-component vector of float) 0:20 'p' (4-component vector of float) 0:20 gl_Position: direct index for structure (4-component vector of float) -0:20 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:20 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:20 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:20 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:20 Constant: 0:20 1 (const int) 0:20 Constant: @@ -26,8 +26,8 @@ vertices = 4 0:21 move second child to first child (float) 0:21 'ps' (float) 0:21 gl_PointSize: direct index for structure (float) -0:21 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:21 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:21 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:21 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:21 Constant: 0:21 1 (const int) 0:21 Constant: @@ -37,8 +37,8 @@ vertices = 4 0:22 'cd' (float) 0:22 direct index (float) 0:22 gl_ClipDistance: direct index for structure (unsized array of float) -0:22 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:22 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:22 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:22 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:22 Constant: 0:22 1 (const int) 0:22 Constant: @@ -59,8 +59,8 @@ vertices = 4 0:26 'gl_InvocationID' (in int) 0:28 move second child to first child (4-component vector of float) 0:28 gl_Position: direct index for structure (4-component vector of float) -0:28 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:28 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:28 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:28 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:28 Constant: 0:28 1 (const int) 0:28 Constant: @@ -68,8 +68,8 @@ vertices = 4 0:28 'p' (4-component vector of float) 0:29 move second child to first child (float) 0:29 gl_PointSize: direct index for structure (float) -0:29 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:29 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:29 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:29 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:29 Constant: 0:29 1 (const int) 0:29 Constant: @@ -78,8 +78,8 @@ vertices = 4 0:30 move second child to first child (float) 0:30 direct index (float) 0:30 gl_ClipDistance: direct index for structure (unsized array of float) -0:30 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:30 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:30 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:30 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:30 Constant: 0:30 1 (const int) 0:30 Constant: @@ -104,7 +104,7 @@ vertices = 4 0:? Linker Objects 0:? 'outa' (4-element array of int) 0:? 'patchOut' (patch out 4-component vector of float) -0:? 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:? 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 150.tese Warning, version 150 is not yet complete; some version-specific features are present, but many are missing. @@ -131,8 +131,8 @@ ERROR: node is still EOpNull! 0:22 move second child to first child (4-component vector of float) 0:22 'p' (4-component vector of float) 0:22 gl_Position: direct index for structure (4-component vector of float) -0:22 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:22 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:22 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:22 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:22 Constant: 0:22 1 (const int) 0:22 Constant: @@ -141,8 +141,8 @@ ERROR: node is still EOpNull! 0:23 move second child to first child (float) 0:23 'ps' (float) 0:23 gl_PointSize: direct index for structure (float) -0:23 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:23 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:23 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:23 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:23 Constant: 0:23 1 (const int) 0:23 Constant: @@ -152,8 +152,8 @@ ERROR: node is still EOpNull! 0:24 'cd' (float) 0:24 direct index (float) 0:24 gl_ClipDistance: direct index for structure (unsized array of float) -0:24 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:24 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:24 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:24 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:24 Constant: 0:24 1 (const int) 0:24 Constant: @@ -188,20 +188,20 @@ ERROR: node is still EOpNull! 0:30 1 (const int) 0:32 move second child to first child (4-component vector of float) 0:32 gl_Position: direct index for structure (gl_Position 4-component vector of float) -0:32 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:32 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance}) 0:32 Constant: 0:32 0 (const uint) 0:32 'p' (4-component vector of float) 0:33 move second child to first child (float) 0:33 gl_PointSize: direct index for structure (gl_PointSize float) -0:33 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:33 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance}) 0:33 Constant: 0:33 1 (const uint) 0:33 'ps' (float) 0:34 move second child to first child (float) 0:34 direct index (float) 0:34 gl_ClipDistance: direct index for structure (unsized array of float) -0:34 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:34 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance}) 0:34 Constant: 0:34 2 (const uint) 0:34 Constant: @@ -241,8 +241,8 @@ ERROR: node is still EOpNull! 0:23 move second child to first child (4-component vector of float) 0:23 'p' (4-component vector of float) 0:23 gl_Position: direct index for structure (4-component vector of float) -0:23 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:23 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:23 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:23 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:23 Constant: 0:23 1 (const int) 0:23 Constant: @@ -251,8 +251,8 @@ ERROR: node is still EOpNull! 0:24 move second child to first child (float) 0:24 'ps' (float) 0:24 gl_PointSize: direct index for structure (float) -0:24 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:24 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:24 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:24 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:24 Constant: 0:24 1 (const int) 0:24 Constant: @@ -262,8 +262,8 @@ ERROR: node is still EOpNull! 0:25 'cd' (float) 0:25 direct index (float) 0:25 gl_ClipDistance: direct index for structure (unsized array of float) -0:25 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:25 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:25 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:25 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:25 Constant: 0:25 1 (const int) 0:25 Constant: @@ -284,8 +284,8 @@ ERROR: node is still EOpNull! 0:29 'gl_InvocationID' (in int) 0:31 move second child to first child (4-component vector of float) 0:31 gl_Position: direct index for structure (4-component vector of float) -0:31 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:31 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:31 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:31 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:31 Constant: 0:31 1 (const int) 0:31 Constant: @@ -293,8 +293,8 @@ ERROR: node is still EOpNull! 0:31 'p' (4-component vector of float) 0:32 move second child to first child (float) 0:32 gl_PointSize: direct index for structure (float) -0:32 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:32 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:32 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:32 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:32 Constant: 0:32 1 (const int) 0:32 Constant: @@ -303,8 +303,8 @@ ERROR: node is still EOpNull! 0:33 move second child to first child (float) 0:33 direct index (float) 0:33 gl_ClipDistance: direct index for structure (unsized array of float) -0:33 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:33 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:33 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:33 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:33 Constant: 0:33 1 (const int) 0:33 Constant: @@ -330,8 +330,8 @@ ERROR: node is still EOpNull! 0:42 Function Parameters: 0:44 Sequence 0:44 gl_PointSize: direct index for structure (float) -0:44 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:44 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:44 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:44 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:44 Constant: 0:44 4 (const int) 0:44 Constant: @@ -340,7 +340,7 @@ ERROR: node is still EOpNull! 0:? 'outa' (4-element array of int) 0:? 'patchIn' (patch in 4-component vector of float) 0:? 'patchOut' (patch out 4-component vector of float) -0:? 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:? 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:? 'ina' (in 2-component vector of float) 0:? 'inb' (in 32-element array of 2-component vector of float) 0:? 'inc' (in 32-element array of 2-component vector of float) @@ -405,8 +405,8 @@ ERROR: node is still EOpNull! 0:32 move second child to first child (4-component vector of float) 0:32 'p' (4-component vector of float) 0:32 gl_Position: direct index for structure (4-component vector of float) -0:32 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:32 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:32 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:32 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:32 Constant: 0:32 1 (const int) 0:32 Constant: @@ -415,8 +415,8 @@ ERROR: node is still EOpNull! 0:33 move second child to first child (float) 0:33 'ps' (float) 0:33 gl_PointSize: direct index for structure (float) -0:33 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:33 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:33 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:33 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:33 Constant: 0:33 1 (const int) 0:33 Constant: @@ -426,8 +426,8 @@ ERROR: node is still EOpNull! 0:34 'cd' (float) 0:34 direct index (float) 0:34 gl_ClipDistance: direct index for structure (unsized array of float) -0:34 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:34 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:34 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:34 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:34 Constant: 0:34 1 (const int) 0:34 Constant: @@ -462,20 +462,20 @@ ERROR: node is still EOpNull! 0:40 1 (const int) 0:42 move second child to first child (4-component vector of float) 0:42 gl_Position: direct index for structure (gl_Position 4-component vector of float) -0:42 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:42 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance}) 0:42 Constant: 0:42 0 (const uint) 0:42 'p' (4-component vector of float) 0:43 move second child to first child (float) 0:43 gl_PointSize: direct index for structure (gl_PointSize float) -0:43 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:43 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance}) 0:43 Constant: 0:43 1 (const uint) 0:43 'ps' (float) 0:44 move second child to first child (float) 0:44 direct index (float) 0:44 gl_ClipDistance: direct index for structure (unsized array of float) -0:44 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:44 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance}) 0:44 Constant: 0:44 2 (const uint) 0:44 Constant: @@ -488,15 +488,15 @@ ERROR: node is still EOpNull! 0:? 'badp2' (flat patch in 4-component vector of float) 0:? 'badp3' (noperspective patch in 4-component vector of float) 0:? 'badp4' (patch sample in 3-component vector of float) -0:? 'gl_in' (in 32-element array of block{gl_ClipDistance}) +0:? 'gl_in' (in 32-element array of block{unsized array of float gl_ClipDistance}) 0:? 'ina' (in 2-component vector of float) 0:? 'inb' (in 32-element array of 2-component vector of float) 0:? 'inc' (in 32-element array of 2-component vector of float) 0:? 'ind' (in 32-element array of 2-component vector of float) -0:? 'bla' (in block{f}) -0:? 'blb' (in 32-element array of block{f}) -0:? 'blc' (in 32-element array of block{f}) -0:? 'bld' (in 32-element array of block{f}) +0:? 'bla' (in block{int f}) +0:? 'blb' (in 32-element array of block{int f}) +0:? 'blc' (in 32-element array of block{int f}) +0:? 'bld' (in 32-element array of block{int f}) 0:? 'ivla' (layout(location=23 ) in 32-element array of 4-component vector of float) 0:? 'ivlb' (layout(location=24 ) in 32-element array of 4-component vector of float) 0:? 'ivlc' (layout(location=24 ) in 32-element array of 4-component vector of float) @@ -523,7 +523,7 @@ ERROR: 0:7: 'vertices' : inconsistent output number of vertices for array size o ERROR: 0:11: 'vertices' : inconsistent output number of vertices for array size of a ERROR: 0:12: 'vertices' : inconsistent output number of vertices for array size of outb ERROR: 0:26: 'gl_PointSize' : no such field in structure -ERROR: 0:26: 'assign' : cannot convert from 'float' to 'block{gl_Position}' +ERROR: 0:26: 'assign' : cannot convert from 'float' to 'block{4-component vector of float gl_Position}' ERROR: 0:29: 'out' : type must be an array: outf ERROR: 6 compilation errors. No code generated. @@ -537,8 +537,8 @@ ERROR: node is still EOpNull! 0:17 move second child to first child (4-component vector of float) 0:17 'p' (4-component vector of float) 0:17 gl_Position: direct index for structure (4-component vector of float) -0:17 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:17 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:17 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:17 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:17 Constant: 0:17 1 (const int) 0:17 Constant: @@ -547,8 +547,8 @@ ERROR: node is still EOpNull! 0:18 move second child to first child (float) 0:18 'ps' (float) 0:18 gl_PointSize: direct index for structure (float) -0:18 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:18 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:18 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:18 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:18 Constant: 0:18 1 (const int) 0:18 Constant: @@ -558,8 +558,8 @@ ERROR: node is still EOpNull! 0:19 'cd' (float) 0:19 direct index (float) 0:19 gl_ClipDistance: direct index for structure (unsized array of float) -0:19 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:19 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:19 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:19 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:19 Constant: 0:19 1 (const int) 0:19 Constant: @@ -580,19 +580,19 @@ ERROR: node is still EOpNull! 0:23 'gl_InvocationID' (in int) 0:25 move second child to first child (4-component vector of float) 0:25 gl_Position: direct index for structure (4-component vector of float) -0:25 direct index (block{gl_Position}) -0:25 'gl_out' (out 3-element array of block{gl_Position}) +0:25 direct index (block{4-component vector of float gl_Position}) +0:25 'gl_out' (out 3-element array of block{4-component vector of float gl_Position}) 0:25 Constant: 0:25 1 (const int) 0:25 Constant: 0:25 0 (const int) 0:25 'p' (4-component vector of float) -0:26 direct index (block{gl_Position}) -0:26 'gl_out' (out 3-element array of block{gl_Position}) +0:26 direct index (block{4-component vector of float gl_Position}) +0:26 'gl_out' (out 3-element array of block{4-component vector of float gl_Position}) 0:26 Constant: 0:26 1 (const int) 0:? Linker Objects -0:? 'gl_out' (out 3-element array of block{gl_Position}) +0:? 'gl_out' (out 3-element array of block{4-component vector of float gl_Position}) 0:? 'a' (out 3-element array of int) 0:? 'outb' (out 5-element array of int) 0:? 'outc' (out 4-element array of int) @@ -611,7 +611,7 @@ ERROR: 0:29: 'constructor' : cannot convert parameter 2 from 'const 2X2 matrix ERROR: 0:29: 'const 2-element array of 4-component vector of float' : cannot construct with these arguments ERROR: 0:29: '=' : cannot convert from 'const float' to '2-element array of 4-component vector of float' ERROR: 0:30: 'initializer list' : wrong number of matrix columns: 4X2 matrix of float -ERROR: 0:40: 'constructor' : cannot convert parameter 1 from 'float' to 'structure{s,t}' +ERROR: 0:40: 'constructor' : cannot convert parameter 1 from 'float' to 'structure{float s, float t}' ERROR: 0:58: 'initializer list' : wrong number of structure members ERROR: 13 compilation errors. No code generated. @@ -629,14 +629,14 @@ ERROR: node is still EOpNull! 0:4 0.000000 0:4 1.000000 0:15 Sequence -0:15 move second child to first child (structure{a,b}) -0:15 'e' (structure{a,b}) +0:15 move second child to first child (structure{float a, int b}) +0:15 'e' (structure{float a, int b}) 0:15 Constant: 0:15 1.200000 0:15 2 (const int) 0:20 Sequence -0:20 move second child to first child (structure{a,b}) -0:20 'e2' (structure{a,b}) +0:20 move second child to first child (structure{float a, int b}) +0:20 'e2' (structure{float a, int b}) 0:20 Constant: 0:20 1.000000 0:20 3 (const int) @@ -687,7 +687,7 @@ ERROR: node is still EOpNull! 0:74 0.000000 0:74 6.000000 0:74 0.000000 -0:74 'curlybad1' (structure{uv2,s}) +0:74 'curlybad1' (structure{2-component vector of uint uv2, 2-element array of structure{float f, 2X3 matrix of float m23} s}) 0:74 true case is null 0:76 Test condition and select (void) 0:76 Condition @@ -710,16 +710,16 @@ ERROR: node is still EOpNull! 0:? 'b2' (2-component vector of float) 0:? 'c2' (3X3 matrix of float) 0:? 'd' (2X2 matrix of float) -0:? 'e' (structure{a,b}) -0:? 'e2' (structure{a,b}) -0:? 'e3' (structure{a,b}) +0:? 'e' (structure{float a, int b}) +0:? 'e2' (structure{float a, int b}) +0:? 'e3' (structure{float a, int b}) 0:? 'a3' (int) 0:? 'b3' (2-element array of 4-component vector of float) 0:? 'b4' (2-element array of 4-component vector of float) 0:? 'c3' (4X2 matrix of float) -0:? 'd2' (unsized array of structure{s,t}) +0:? 'd2' (unsized array of structure{float s, float t}) 0:? 'b5' (5-element array of float) -0:? 'constructed' (const structure{uv2,s}) +0:? 'constructed' (const structure{2-component vector of uint uv2, 2-element array of structure{float f, 2X3 matrix of float m23} s}) 0:? 1 (const uint) 0:? 2 (const uint) 0:? 3.000000 @@ -736,8 +736,8 @@ ERROR: node is still EOpNull! 0:? 0.000000 0:? 6.000000 0:? 0.000000 -0:? 'curlybad1' (structure{uv2,s}) -0:? 'curlyInit' (const structure{uv2,s}) +0:? 'curlybad1' (structure{2-component vector of uint uv2, 2-element array of structure{float f, 2X3 matrix of float m23} s}) +0:? 'curlyInit' (const structure{2-component vector of uint uv2, 2-element array of structure{float f, 2X3 matrix of float m23} s}) 0:? 1 (const uint) 0:? 2 (const uint) 0:? 3.000000 @@ -779,7 +779,7 @@ ERROR: Linking tessellation control stage: Multiple function bodies in multiple ERROR: Linking tessellation control stage: Multiple function bodies in multiple compilation units for the same signature in the same stage: main( ERROR: Linking tessellation control stage: Types must match: - gl_out: "out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}" versus "out 3-element array of block{gl_Position}" + gl_out: "out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}" versus "out 3-element array of block{4-component vector of float gl_Position}" Linked tessellation evaluation stage: @@ -808,8 +808,8 @@ vertices = 4 0:20 move second child to first child (4-component vector of float) 0:20 'p' (4-component vector of float) 0:20 gl_Position: direct index for structure (4-component vector of float) -0:20 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:20 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:20 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:20 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:20 Constant: 0:20 1 (const int) 0:20 Constant: @@ -818,8 +818,8 @@ vertices = 4 0:21 move second child to first child (float) 0:21 'ps' (float) 0:21 gl_PointSize: direct index for structure (float) -0:21 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:21 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:21 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:21 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:21 Constant: 0:21 1 (const int) 0:21 Constant: @@ -829,8 +829,8 @@ vertices = 4 0:22 'cd' (float) 0:22 direct index (float) 0:22 gl_ClipDistance: direct index for structure (unsized array of float) -0:22 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:22 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:22 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:22 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:22 Constant: 0:22 1 (const int) 0:22 Constant: @@ -851,8 +851,8 @@ vertices = 4 0:26 'gl_InvocationID' (in int) 0:28 move second child to first child (4-component vector of float) 0:28 gl_Position: direct index for structure (4-component vector of float) -0:28 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:28 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:28 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:28 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:28 Constant: 0:28 1 (const int) 0:28 Constant: @@ -860,8 +860,8 @@ vertices = 4 0:28 'p' (4-component vector of float) 0:29 move second child to first child (float) 0:29 gl_PointSize: direct index for structure (float) -0:29 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:29 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:29 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:29 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:29 Constant: 0:29 1 (const int) 0:29 Constant: @@ -870,8 +870,8 @@ vertices = 4 0:30 move second child to first child (float) 0:30 direct index (float) 0:30 gl_ClipDistance: direct index for structure (unsized array of float) -0:30 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:30 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:30 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:30 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:30 Constant: 0:30 1 (const int) 0:30 Constant: @@ -906,8 +906,8 @@ vertices = 4 0:23 move second child to first child (4-component vector of float) 0:23 'p' (4-component vector of float) 0:23 gl_Position: direct index for structure (4-component vector of float) -0:23 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:23 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:23 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:23 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:23 Constant: 0:23 1 (const int) 0:23 Constant: @@ -916,8 +916,8 @@ vertices = 4 0:24 move second child to first child (float) 0:24 'ps' (float) 0:24 gl_PointSize: direct index for structure (float) -0:24 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:24 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:24 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:24 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:24 Constant: 0:24 1 (const int) 0:24 Constant: @@ -927,8 +927,8 @@ vertices = 4 0:25 'cd' (float) 0:25 direct index (float) 0:25 gl_ClipDistance: direct index for structure (unsized array of float) -0:25 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:25 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:25 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:25 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:25 Constant: 0:25 1 (const int) 0:25 Constant: @@ -949,8 +949,8 @@ vertices = 4 0:29 'gl_InvocationID' (in int) 0:31 move second child to first child (4-component vector of float) 0:31 gl_Position: direct index for structure (4-component vector of float) -0:31 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:31 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:31 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:31 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:31 Constant: 0:31 1 (const int) 0:31 Constant: @@ -958,8 +958,8 @@ vertices = 4 0:31 'p' (4-component vector of float) 0:32 move second child to first child (float) 0:32 gl_PointSize: direct index for structure (float) -0:32 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:32 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:32 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:32 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:32 Constant: 0:32 1 (const int) 0:32 Constant: @@ -968,8 +968,8 @@ vertices = 4 0:33 move second child to first child (float) 0:33 direct index (float) 0:33 gl_ClipDistance: direct index for structure (unsized array of float) -0:33 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:33 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:33 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:33 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:33 Constant: 0:33 1 (const int) 0:33 Constant: @@ -995,8 +995,8 @@ vertices = 4 0:42 Function Parameters: 0:44 Sequence 0:44 gl_PointSize: direct index for structure (float) -0:44 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:44 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:44 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:44 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:44 Constant: 0:44 4 (const int) 0:44 Constant: @@ -1010,8 +1010,8 @@ vertices = 4 0:17 move second child to first child (4-component vector of float) 0:17 'p' (4-component vector of float) 0:17 gl_Position: direct index for structure (4-component vector of float) -0:17 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:17 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:17 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:17 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:17 Constant: 0:17 1 (const int) 0:17 Constant: @@ -1020,8 +1020,8 @@ vertices = 4 0:18 move second child to first child (float) 0:18 'ps' (float) 0:18 gl_PointSize: direct index for structure (float) -0:18 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:18 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:18 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:18 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:18 Constant: 0:18 1 (const int) 0:18 Constant: @@ -1031,8 +1031,8 @@ vertices = 4 0:19 'cd' (float) 0:19 direct index (float) 0:19 gl_ClipDistance: direct index for structure (unsized array of float) -0:19 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:19 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:19 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:19 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:19 Constant: 0:19 1 (const int) 0:19 Constant: @@ -1053,21 +1053,21 @@ vertices = 4 0:23 'gl_InvocationID' (in int) 0:25 move second child to first child (4-component vector of float) 0:25 gl_Position: direct index for structure (4-component vector of float) -0:25 direct index (block{gl_Position}) -0:25 'gl_out' (out 3-element array of block{gl_Position}) +0:25 direct index (block{4-component vector of float gl_Position}) +0:25 'gl_out' (out 3-element array of block{4-component vector of float gl_Position}) 0:25 Constant: 0:25 1 (const int) 0:25 Constant: 0:25 0 (const int) 0:25 'p' (4-component vector of float) -0:26 direct index (block{gl_Position}) -0:26 'gl_out' (out 3-element array of block{gl_Position}) +0:26 direct index (block{4-component vector of float gl_Position}) +0:26 'gl_out' (out 3-element array of block{4-component vector of float gl_Position}) 0:26 Constant: 0:26 1 (const int) 0:? Linker Objects 0:? 'outa' (4-element array of int) 0:? 'patchOut' (patch out 4-component vector of float) -0:? 'gl_out' (out 4-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:? 'gl_out' (out 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:? 'patchIn' (patch in 4-component vector of float) 0:? 'ina' (in 2-component vector of float) 0:? 'inb' (in 32-element array of 2-component vector of float) @@ -1102,8 +1102,8 @@ ERROR: node is still EOpNull! 0:22 move second child to first child (4-component vector of float) 0:22 'p' (4-component vector of float) 0:22 gl_Position: direct index for structure (4-component vector of float) -0:22 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:22 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:22 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:22 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:22 Constant: 0:22 1 (const int) 0:22 Constant: @@ -1112,8 +1112,8 @@ ERROR: node is still EOpNull! 0:23 move second child to first child (float) 0:23 'ps' (float) 0:23 gl_PointSize: direct index for structure (float) -0:23 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:23 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:23 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:23 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:23 Constant: 0:23 1 (const int) 0:23 Constant: @@ -1123,8 +1123,8 @@ ERROR: node is still EOpNull! 0:24 'cd' (float) 0:24 direct index (float) 0:24 gl_ClipDistance: direct index for structure (unsized array of float) -0:24 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:24 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:24 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:24 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:24 Constant: 0:24 1 (const int) 0:24 Constant: @@ -1159,20 +1159,20 @@ ERROR: node is still EOpNull! 0:30 1 (const int) 0:32 move second child to first child (4-component vector of float) 0:32 gl_Position: direct index for structure (gl_Position 4-component vector of float) -0:32 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:32 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance}) 0:32 Constant: 0:32 0 (const uint) 0:32 'p' (4-component vector of float) 0:33 move second child to first child (float) 0:33 gl_PointSize: direct index for structure (gl_PointSize float) -0:33 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:33 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance}) 0:33 Constant: 0:33 1 (const uint) 0:33 'ps' (float) 0:34 move second child to first child (float) 0:34 direct index (float) 0:34 gl_ClipDistance: direct index for structure (unsized array of float) -0:34 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:34 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance}) 0:34 Constant: 0:34 2 (const uint) 0:34 Constant: @@ -1192,8 +1192,8 @@ ERROR: node is still EOpNull! 0:32 move second child to first child (4-component vector of float) 0:32 'p' (4-component vector of float) 0:32 gl_Position: direct index for structure (4-component vector of float) -0:32 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:32 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:32 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:32 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:32 Constant: 0:32 1 (const int) 0:32 Constant: @@ -1202,8 +1202,8 @@ ERROR: node is still EOpNull! 0:33 move second child to first child (float) 0:33 'ps' (float) 0:33 gl_PointSize: direct index for structure (float) -0:33 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:33 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:33 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:33 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:33 Constant: 0:33 1 (const int) 0:33 Constant: @@ -1213,8 +1213,8 @@ ERROR: node is still EOpNull! 0:34 'cd' (float) 0:34 direct index (float) 0:34 gl_ClipDistance: direct index for structure (unsized array of float) -0:34 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:34 'gl_in' (in 32-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:34 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:34 'gl_in' (in 32-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:34 Constant: 0:34 1 (const int) 0:34 Constant: @@ -1249,20 +1249,20 @@ ERROR: node is still EOpNull! 0:40 1 (const int) 0:42 move second child to first child (4-component vector of float) 0:42 gl_Position: direct index for structure (gl_Position 4-component vector of float) -0:42 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:42 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance}) 0:42 Constant: 0:42 0 (const uint) 0:42 'p' (4-component vector of float) 0:43 move second child to first child (float) 0:43 gl_PointSize: direct index for structure (gl_PointSize float) -0:43 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:43 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance}) 0:43 Constant: 0:43 1 (const uint) 0:43 'ps' (float) 0:44 move second child to first child (float) 0:44 direct index (float) 0:44 gl_ClipDistance: direct index for structure (unsized array of float) -0:44 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:44 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance}) 0:44 Constant: 0:44 2 (const uint) 0:44 Constant: @@ -1277,14 +1277,14 @@ ERROR: node is still EOpNull! 0:4 0.000000 0:4 1.000000 0:15 Sequence -0:15 move second child to first child (structure{a,b}) -0:15 'e' (structure{a,b}) +0:15 move second child to first child (structure{float a, int b}) +0:15 'e' (structure{float a, int b}) 0:15 Constant: 0:15 1.200000 0:15 2 (const int) 0:20 Sequence -0:20 move second child to first child (structure{a,b}) -0:20 'e2' (structure{a,b}) +0:20 move second child to first child (structure{float a, int b}) +0:20 'e2' (structure{float a, int b}) 0:20 Constant: 0:20 1.000000 0:20 3 (const int) @@ -1335,7 +1335,7 @@ ERROR: node is still EOpNull! 0:74 0.000000 0:74 6.000000 0:74 0.000000 -0:74 'curlybad1' (structure{uv2,s}) +0:74 'curlybad1' (structure{2-component vector of uint uv2, 2-element array of structure{float f, 2X3 matrix of float m23} s}) 0:74 true case is null 0:76 Test condition and select (void) 0:76 Condition @@ -1349,15 +1349,15 @@ ERROR: node is still EOpNull! 0:? 'badp2' (flat patch in 4-component vector of float) 0:? 'badp3' (noperspective patch in 4-component vector of float) 0:? 'badp4' (patch sample in 3-component vector of float) -0:? 'gl_in' (in 32-element array of block{gl_ClipDistance}) +0:? 'gl_in' (in 32-element array of block{unsized array of float gl_ClipDistance}) 0:? 'ina' (in 2-component vector of float) 0:? 'inb' (in 32-element array of 2-component vector of float) 0:? 'inc' (in 32-element array of 2-component vector of float) 0:? 'ind' (in 32-element array of 2-component vector of float) -0:? 'bla' (in block{f}) -0:? 'blb' (in 32-element array of block{f}) -0:? 'blc' (in 32-element array of block{f}) -0:? 'bld' (in 32-element array of block{f}) +0:? 'bla' (in block{int f}) +0:? 'blb' (in 32-element array of block{int f}) +0:? 'blc' (in 32-element array of block{int f}) +0:? 'bld' (in 32-element array of block{int f}) 0:? 'ivla' (layout(location=23 ) in 32-element array of 4-component vector of float) 0:? 'ivlb' (layout(location=24 ) in 32-element array of 4-component vector of float) 0:? 'ivlc' (layout(location=24 ) in 32-element array of 4-component vector of float) @@ -1378,16 +1378,16 @@ ERROR: node is still EOpNull! 0:? 'b2' (2-component vector of float) 0:? 'c2' (3X3 matrix of float) 0:? 'd' (2X2 matrix of float) -0:? 'e' (structure{a,b}) -0:? 'e2' (structure{a,b}) -0:? 'e3' (structure{a,b}) +0:? 'e' (structure{float a, int b}) +0:? 'e2' (structure{float a, int b}) +0:? 'e3' (structure{float a, int b}) 0:? 'a3' (int) 0:? 'b3' (2-element array of 4-component vector of float) 0:? 'b4' (2-element array of 4-component vector of float) 0:? 'c3' (4X2 matrix of float) -0:? 'd2' (unsized array of structure{s,t}) +0:? 'd2' (unsized array of structure{float s, float t}) 0:? 'b5' (5-element array of float) -0:? 'constructed' (const structure{uv2,s}) +0:? 'constructed' (const structure{2-component vector of uint uv2, 2-element array of structure{float f, 2X3 matrix of float m23} s}) 0:? 1 (const uint) 0:? 2 (const uint) 0:? 3.000000 @@ -1404,8 +1404,8 @@ ERROR: node is still EOpNull! 0:? 0.000000 0:? 6.000000 0:? 0.000000 -0:? 'curlybad1' (structure{uv2,s}) -0:? 'curlyInit' (const structure{uv2,s}) +0:? 'curlybad1' (structure{2-component vector of uint uv2, 2-element array of structure{float f, 2X3 matrix of float m23} s}) +0:? 'curlyInit' (const structure{2-component vector of uint uv2, 2-element array of structure{float f, 2X3 matrix of float m23} s}) 0:? 1 (const uint) 0:? 2 (const uint) 0:? 3.000000 diff --git a/Test/baseResults/150.vert.out b/Test/baseResults/150.vert.out index 306c8a33d..eb716292d 100644 --- a/Test/baseResults/150.vert.out +++ b/Test/baseResults/150.vert.out @@ -10,20 +10,20 @@ ERROR: node is still EOpNull! 0:11 Sequence 0:11 move second child to first child (4-component vector of float) 0:11 gl_Position: direct index for structure (invariant gl_Position 4-component vector of float) -0:11 '__anon__0' (out block{gl_Position,gl_PointSize,gl_ClipDistance,gl_ClipVertex,gl_FrontColor,gl_BackColor,gl_FrontSecondaryColor,gl_BackSecondaryColor,gl_TexCoord,gl_FogFragCoord}) +0:11 '__anon__0' (out block{invariant gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, 4-element array of float gl_ClipDistance, gl_ClipVertex 4-component vector of float gl_ClipVertex, 4-component vector of float gl_FrontColor, 4-component vector of float gl_BackColor, 4-component vector of float gl_FrontSecondaryColor, 4-component vector of float gl_BackSecondaryColor, unsized array of 4-component vector of float gl_TexCoord, float gl_FogFragCoord}) 0:11 Constant: 0:11 0 (const uint) 0:11 'iv4' (in 4-component vector of float) 0:12 move second child to first child (float) 0:12 gl_PointSize: direct index for structure (gl_PointSize float) -0:12 '__anon__0' (out block{gl_Position,gl_PointSize,gl_ClipDistance,gl_ClipVertex,gl_FrontColor,gl_BackColor,gl_FrontSecondaryColor,gl_BackSecondaryColor,gl_TexCoord,gl_FogFragCoord}) +0:12 '__anon__0' (out block{invariant gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, 4-element array of float gl_ClipDistance, gl_ClipVertex 4-component vector of float gl_ClipVertex, 4-component vector of float gl_FrontColor, 4-component vector of float gl_BackColor, 4-component vector of float gl_FrontSecondaryColor, 4-component vector of float gl_BackSecondaryColor, unsized array of 4-component vector of float gl_TexCoord, float gl_FogFragCoord}) 0:12 Constant: 0:12 1 (const uint) 0:12 'ps' (uniform float) 0:13 move second child to first child (float) 0:13 direct index (float) 0:13 gl_ClipDistance: direct index for structure (4-element array of float) -0:13 '__anon__0' (out block{gl_Position,gl_PointSize,gl_ClipDistance,gl_ClipVertex,gl_FrontColor,gl_BackColor,gl_FrontSecondaryColor,gl_BackSecondaryColor,gl_TexCoord,gl_FogFragCoord}) +0:13 '__anon__0' (out block{invariant gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, 4-element array of float gl_ClipDistance, gl_ClipVertex 4-component vector of float gl_ClipVertex, 4-component vector of float gl_FrontColor, 4-component vector of float gl_BackColor, 4-component vector of float gl_FrontSecondaryColor, 4-component vector of float gl_BackSecondaryColor, unsized array of 4-component vector of float gl_TexCoord, float gl_FogFragCoord}) 0:13 Constant: 0:13 2 (const uint) 0:13 Constant: @@ -34,14 +34,14 @@ ERROR: node is still EOpNull! 0:13 0 (const int) 0:14 move second child to first child (4-component vector of float) 0:14 gl_ClipVertex: direct index for structure (gl_ClipVertex 4-component vector of float) -0:14 '__anon__0' (out block{gl_Position,gl_PointSize,gl_ClipDistance,gl_ClipVertex,gl_FrontColor,gl_BackColor,gl_FrontSecondaryColor,gl_BackSecondaryColor,gl_TexCoord,gl_FogFragCoord}) +0:14 '__anon__0' (out block{invariant gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, 4-element array of float gl_ClipDistance, gl_ClipVertex 4-component vector of float gl_ClipVertex, 4-component vector of float gl_FrontColor, 4-component vector of float gl_BackColor, 4-component vector of float gl_FrontSecondaryColor, 4-component vector of float gl_BackSecondaryColor, unsized array of 4-component vector of float gl_TexCoord, float gl_FogFragCoord}) 0:14 Constant: 0:14 3 (const uint) 0:14 'iv4' (in 4-component vector of float) 0:? Linker Objects 0:? 'iv4' (in 4-component vector of float) 0:? 'ps' (uniform float) -0:? '__anon__1' (layout(column_major shared ) uniform block{a}) +0:? '__anon__1' (layout(column_major shared ) uniform block{layout(column_major shared ) unsized array of int a}) 0:? 'gl_VertexID' (gl_VertexId int) 0:? 'gl_InstanceID' (gl_InstanceId int) diff --git a/Test/baseResults/300.frag.out b/Test/baseResults/300.frag.out index 29d911ea0..10b2fd96e 100644 --- a/Test/baseResults/300.frag.out +++ b/Test/baseResults/300.frag.out @@ -201,13 +201,13 @@ ERROR: node is still EOpNull! 0:91 move second child to first child (lowp 3-component vector of float) 0:91 'sc' (out lowp 3-component vector of float) 0:91 c: direct index for structure (lowp 3-component vector of float) -0:91 's2' (smooth in structure{c,f}) +0:91 's2' (smooth in structure{lowp 3-component vector of float c, lowp float f}) 0:91 Constant: 0:91 0 (const int) 0:92 move second child to first child (lowp float) 0:92 'sf' (out lowp float) 0:92 f: direct index for structure (lowp float) -0:92 's2' (smooth in structure{c,f}) +0:92 's2' (smooth in structure{lowp 3-component vector of float c, lowp float f}) 0:92 Constant: 0:92 1 (const int) 0:94 add (lowp 2-component vector of float) @@ -241,28 +241,28 @@ ERROR: node is still EOpNull! 0:111 'c4D' (smooth lowp 4-component vector of float) 0:117 Function Definition: foo13(struct-s-i1-s211; (void) 0:117 Function Parameters: -0:117 'inSt2' (in structure{i,s}) +0:117 'inSt2' (in structure{mediump int i, lowp sampler2D s}) 0:119 Sequence 0:119 Test condition and select (void) 0:119 Condition 0:119 Compare Equal (bool) -0:119 'st1' (uniform structure{i,s}) -0:119 'st2' (uniform structure{i,s}) +0:119 'st1' (uniform structure{mediump int i, lowp sampler2D s}) +0:119 'st2' (uniform structure{mediump int i, lowp sampler2D s}) 0:119 true case is null 0:120 Test condition and select (void) 0:120 Condition 0:120 Compare Not Equal (bool) -0:120 'st1' (uniform structure{i,s}) -0:120 'st2' (uniform structure{i,s}) +0:120 'st1' (uniform structure{mediump int i, lowp sampler2D s}) +0:120 'st2' (uniform structure{mediump int i, lowp sampler2D s}) 0:120 true case is null 0:121 Constant: 0:121 false (const bool) -0:122 move second child to first child (structure{i,s}) -0:122 'inSt2' (in structure{i,s}) -0:122 'st1' (uniform structure{i,s}) +0:122 move second child to first child (structure{mediump int i, lowp sampler2D s}) +0:122 'inSt2' (in structure{mediump int i, lowp sampler2D s}) +0:122 'st1' (uniform structure{mediump int i, lowp sampler2D s}) 0:123 Compare Equal (bool) -0:123 'inSt2' (in structure{i,s}) -0:123 'st1' (uniform structure{i,s}) +0:123 'inSt2' (in structure{mediump int i, lowp sampler2D s}) +0:123 'st1' (uniform structure{mediump int i, lowp sampler2D s}) 0:126 Function Definition: foo23( (void) 0:126 Function Parameters: 0:128 Sequence @@ -376,15 +376,15 @@ ERROR: node is still EOpNull! 0:? 'ic4D' (flat in mediump 4-component vector of int) 0:? 'badv' (noperspective in lowp 4-component vector of float) 0:? 'bads' (smooth in lowp sampler2D) -0:? 'badout' (smooth in structure{i,s}) -0:? 's2' (smooth in structure{c,f}) +0:? 'badout' (smooth in structure{mediump int i, lowp sampler2D s}) +0:? 's2' (smooth in structure{lowp 3-component vector of float c, lowp float f}) 0:? 'sc' (out lowp 3-component vector of float) 0:? 'sf' (out lowp float) 0:? 'arrayedSampler' (uniform 5-element array of lowp sampler2D) -0:? 'multiInst' (layout(column_major shared ) uniform 2-element array of block{a,b,c}) +0:? 'multiInst' (layout(column_major shared ) uniform 2-element array of block{layout(column_major shared ) 2-element array of mediump int a, layout(column_major shared ) 2-element array of mediump int b, layout(column_major shared ) 2-element array of mediump int c}) 0:? 'colors' (out 4-element array of lowp 4-component vector of float) -0:? 'st1' (uniform structure{i,s}) -0:? 'st2' (uniform structure{i,s}) +0:? 'st1' (uniform structure{mediump int i, lowp sampler2D s}) +0:? 'st2' (uniform structure{mediump int i, lowp sampler2D s}) Linked fragment stage: diff --git a/Test/baseResults/300.vert.out b/Test/baseResults/300.vert.out index 58103871a..8f04c2181 100644 --- a/Test/baseResults/300.vert.out +++ b/Test/baseResults/300.vert.out @@ -138,13 +138,13 @@ ERROR: node is still EOpNull! 0:50 1 (const int) 0:52 move second child to first child (highp 3-component vector of float) 0:52 c: direct index for structure (highp 3-component vector of float) -0:52 's' (smooth out structure{c,f}) +0:52 's' (smooth out structure{highp 3-component vector of float c, highp float f}) 0:52 Constant: 0:52 0 (const int) 0:52 'v3' (in highp 3-component vector of float) 0:53 move second child to first child (highp float) 0:53 f: direct index for structure (highp float) -0:53 's' (smooth out structure{c,f}) +0:53 's' (smooth out structure{highp 3-component vector of float c, highp float f}) 0:53 Constant: 0:53 1 (const int) 0:53 'dm' (highp float) @@ -269,23 +269,23 @@ ERROR: node is still EOpNull! 0:? 'rep' (smooth flat out highp 4-component vector of float) 0:? 'rep2' (centroid smooth sample out highp 4-component vector of float) 0:? 'rep3' (in highp 4-component vector of float) -0:? 's' (smooth out structure{c,f}) +0:? 's' (smooth out structure{highp 3-component vector of float c, highp float f}) 0:? 'badsize' (unsized array of highp float) 0:? 'badsize2' (unsized array of highp float) -0:? 'ubInst' (layout(column_major shared ) uniform unsized array of block{a}) +0:? 'ubInst' (layout(column_major shared ) uniform unsized array of block{layout(column_major shared ) unsized array of highp int a}) 0:? 'okayA' (2-element array of highp float) 0:? 'newV' (smooth out highp 3-component vector of float) 0:? 'invIn' (in highp 4-component vector of float) -0:? 's2' (smooth out structure{c,f}) -0:? 's3' (invariant smooth out structure{c,f}) -0:? 'a' (layout(column_major shared ) uniform block{f}) -0:? '__anon__0' (layout(column_major shared ) uniform block{b23}) +0:? 's2' (smooth out structure{highp 3-component vector of float c, highp float f}) +0:? 's3' (invariant smooth out structure{highp 3-component vector of float c, highp float f}) +0:? 'a' (layout(column_major shared ) uniform block{layout(column_major shared ) highp float f}) +0:? '__anon__0' (layout(column_major shared ) uniform block{layout(column_major shared ) bool b23}) 0:? 's2D' (uniform lowp sampler2D) 0:? 's3D' (uniform lowp sampler3D) 0:? 's2DS' (uniform lowp sampler2DShadow) 0:? 's2DAS' (uniform lowp sampler2DArrayShadow) 0:? 'c2D' (in highp 2-component vector of float) -0:? 'ssss' (smooth out structure{f}) +0:? 'ssss' (smooth out structure{highp float f}) 0:? 'gl_VertexID' (gl_VertexId highp int) 0:? 'gl_InstanceID' (gl_InstanceId highp int) diff --git a/Test/baseResults/300block.frag.out b/Test/baseResults/300block.frag.out index 7edaf560d..80b35a796 100644 --- a/Test/baseResults/300block.frag.out +++ b/Test/baseResults/300block.frag.out @@ -12,19 +12,19 @@ ERROR: node is still EOpNull! 0:44 Sequence 0:44 Function Call: texture(is31;vf3; (mediump 4-component vector of int) 0:44 sampler: direct index for structure (lowp isampler3D) -0:44 's' (uniform structure{u,v,sampler,w,t}) +0:44 's' (uniform structure{mediump 4-component vector of float u, mediump 4-component vector of uint v, lowp isampler3D sampler, mediump 3-component vector of float w, structure{mediump int a} t}) 0:44 Constant: 0:44 2 (const int) 0:44 Construct vec3 (3-component vector of float) 0:44 Convert int to float (float) 0:44 ni: direct index for structure (layout(column_major shared ) mediump int) -0:44 'inst' (layout(column_major shared ) uniform block{nbv,ni}) +0:44 'inst' (layout(column_major shared ) uniform block{layout(column_major shared ) mediump 4-component vector of uint nbv, layout(column_major shared ) mediump int ni}) 0:44 Constant: 0:44 1 (const int) 0:44 Convert uint to float (float) 0:44 direct index (mediump uint) 0:44 bv: direct index for structure (layout(column_major shared ) mediump 4-component vector of uint) -0:44 '__anon__0' (layout(column_major shared ) uniform block{bv,bm2,sampler,t,fbs}) +0:44 '__anon__0' (layout(column_major shared ) uniform block{layout(column_major shared ) mediump 4-component vector of uint bv, layout(column_major shared ) mediump 2X2 matrix of float bm2, layout(column_major shared ) lowp isampler2D sampler, layout(column_major shared ) structure{mediump int a} t, layout(column_major shared ) structure{mediump 4-component vector of float u, mediump 4-component vector of uint v, lowp isampler3D sampler, mediump 3-component vector of float w, structure{mediump int a} t} fbs}) 0:44 Constant: 0:44 0 (const uint) 0:44 Constant: @@ -32,29 +32,29 @@ ERROR: node is still EOpNull! 0:44 Convert uint to float (float) 0:44 direct index (mediump uint) 0:44 nbv: direct index for structure (layout(column_major shared ) mediump 4-component vector of uint) -0:44 direct index (layout(column_major shared ) block{nbv,ni}) -0:44 'insts' (layout(column_major shared ) uniform 4-element array of block{nbv,ni}) +0:44 direct index (layout(column_major shared ) block{layout(column_major shared ) mediump 4-component vector of uint nbv, layout(column_major shared ) mediump int ni}) +0:44 'insts' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) mediump 4-component vector of uint nbv, layout(column_major shared ) mediump int ni}) 0:44 Constant: 0:44 2 (const int) 0:44 Constant: 0:44 0 (const int) 0:44 Constant: 0:44 2 (const int) -0:45 indirect index (layout(column_major shared ) block{nbv,ni}) -0:45 'insts' (layout(column_major shared ) uniform 4-element array of block{nbv,ni}) +0:45 indirect index (layout(column_major shared ) block{layout(column_major shared ) mediump 4-component vector of uint nbv, layout(column_major shared ) mediump int ni}) +0:45 'insts' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) mediump 4-component vector of uint nbv, layout(column_major shared ) mediump int ni}) 0:45 direct index (mediump uint) 0:45 v: direct index for structure (mediump 4-component vector of uint) -0:45 's' (uniform structure{u,v,sampler,w,t}) +0:45 's' (uniform structure{mediump 4-component vector of float u, mediump 4-component vector of uint v, lowp isampler3D sampler, mediump 3-component vector of float w, structure{mediump int a} t}) 0:45 Constant: 0:45 1 (const int) 0:45 Constant: 0:45 0 (const int) 0:? Linker Objects -0:? 's' (uniform structure{u,v,sampler,w,t}) -0:? '__anon__0' (layout(column_major shared ) uniform block{bv,bm2,sampler,t,fbs}) -0:? 'inst' (layout(column_major shared ) uniform block{nbv,ni}) -0:? 'insts' (layout(column_major shared ) uniform 4-element array of block{nbv,ni}) -0:? '__anon__1' (layout(column_major shared ) uniform block{f,u}) +0:? 's' (uniform structure{mediump 4-component vector of float u, mediump 4-component vector of uint v, lowp isampler3D sampler, mediump 3-component vector of float w, structure{mediump int a} t}) +0:? '__anon__0' (layout(column_major shared ) uniform block{layout(column_major shared ) mediump 4-component vector of uint bv, layout(column_major shared ) mediump 2X2 matrix of float bm2, layout(column_major shared ) lowp isampler2D sampler, layout(column_major shared ) structure{mediump int a} t, layout(column_major shared ) structure{mediump 4-component vector of float u, mediump 4-component vector of uint v, lowp isampler3D sampler, mediump 3-component vector of float w, structure{mediump int a} t} fbs}) +0:? 'inst' (layout(column_major shared ) uniform block{layout(column_major shared ) mediump 4-component vector of uint nbv, layout(column_major shared ) mediump int ni}) +0:? 'insts' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) mediump 4-component vector of uint nbv, layout(column_major shared ) mediump int ni}) +0:? '__anon__1' (layout(column_major shared ) uniform block{layout(column_major shared ) mediump float f, layout(column_major shared ) mediump uint u}) Linked fragment stage: diff --git a/Test/baseResults/300layout.vert.out b/Test/baseResults/300layout.vert.out index ae183bfc3..144f30f0b 100644 --- a/Test/baseResults/300layout.vert.out +++ b/Test/baseResults/300layout.vert.out @@ -33,23 +33,23 @@ ERROR: node is still EOpNull! 0:46 add (highp 4X4 matrix of float) 0:46 add (highp 4X4 matrix of float) 0:46 M1: direct index for structure (layout(row_major std140 ) highp 4X4 matrix of float) -0:46 'tblock' (layout(row_major std140 ) uniform block{M1,M2,N1,badf,badg,bad1,bad2,bad3}) +0:46 'tblock' (layout(row_major std140 ) uniform block{layout(row_major std140 ) highp 4X4 matrix of float M1, layout(column_major std140 ) highp 4X4 matrix of float M2, layout(row_major std140 ) highp 3X3 matrix of float N1, layout(row_major std140 ) centroid highp float badf, layout(row_major std140 ) in highp float badg, layout(row_major std140 ) highp float bad1, layout(row_major shared ) highp float bad2, layout(row_major packed ) highp float bad3}) 0:46 Constant: 0:46 0 (const int) 0:46 M2: direct index for structure (layout(column_major std140 ) highp 4X4 matrix of float) -0:46 'tblock' (layout(row_major std140 ) uniform block{M1,M2,N1,badf,badg,bad1,bad2,bad3}) +0:46 'tblock' (layout(row_major std140 ) uniform block{layout(row_major std140 ) highp 4X4 matrix of float M1, layout(column_major std140 ) highp 4X4 matrix of float M2, layout(row_major std140 ) highp 3X3 matrix of float N1, layout(row_major std140 ) centroid highp float badf, layout(row_major std140 ) in highp float badg, layout(row_major std140 ) highp float bad1, layout(row_major shared ) highp float bad2, layout(row_major packed ) highp float bad3}) 0:46 Constant: 0:46 1 (const int) 0:46 M4: direct index for structure (layout(row_major shared ) highp 4X4 matrix of float) -0:46 '__anon__1' (layout(column_major shared ) uniform block{M3,M4,N2,b}) +0:46 '__anon__1' (layout(column_major shared ) uniform block{layout(column_major shared ) highp 4X4 matrix of float M3, layout(row_major shared ) highp 4X4 matrix of float M4, layout(column_major shared ) highp 3X3 matrix of float N2, layout(column_major shared ) highp int b}) 0:46 Constant: 0:46 1 (const uint) 0:46 M3: direct index for structure (layout(column_major shared ) highp 4X4 matrix of float) -0:46 '__anon__1' (layout(column_major shared ) uniform block{M3,M4,N2,b}) +0:46 '__anon__1' (layout(column_major shared ) uniform block{layout(column_major shared ) highp 4X4 matrix of float M3, layout(row_major shared ) highp 4X4 matrix of float M4, layout(column_major shared ) highp 3X3 matrix of float N2, layout(column_major shared ) highp int b}) 0:46 Constant: 0:46 0 (const uint) 0:46 t2m: direct index for structure (layout(row_major shared ) highp 4X4 matrix of float) -0:46 '__anon__0' (layout(row_major shared ) uniform block{b,t2m}) +0:46 '__anon__0' (layout(row_major shared ) uniform block{layout(row_major shared ) bool b, layout(row_major shared ) highp 4X4 matrix of float t2m}) 0:46 Constant: 0:46 1 (const uint) 0:47 move second child to first child (highp 3-component vector of float) @@ -57,20 +57,20 @@ ERROR: node is still EOpNull! 0:47 vector-times-matrix (highp 3-component vector of float) 0:47 'c' (layout(location=7 ) in highp 3-component vector of float) 0:47 N1: direct index for structure (layout(row_major std140 ) highp 3X3 matrix of float) -0:47 'tblock' (layout(row_major std140 ) uniform block{M1,M2,N1,badf,badg,bad1,bad2,bad3}) +0:47 'tblock' (layout(row_major std140 ) uniform block{layout(row_major std140 ) highp 4X4 matrix of float M1, layout(column_major std140 ) highp 4X4 matrix of float M2, layout(row_major std140 ) highp 3X3 matrix of float N1, layout(row_major std140 ) centroid highp float badf, layout(row_major std140 ) in highp float badg, layout(row_major std140 ) highp float bad1, layout(row_major shared ) highp float bad2, layout(row_major packed ) highp float bad3}) 0:47 Constant: 0:47 2 (const int) 0:? Linker Objects 0:? 'c' (layout(location=7 ) in highp 3-component vector of float) 0:? 'p' (layout(location=3 ) in highp 4-component vector of float) 0:? 'q' (layout(location=9 ) in 4-element array of highp 4-component vector of float) -0:? 'r' (layout(location=10 ) in 4-element array of structure{v}) +0:? 'r' (layout(location=10 ) in 4-element array of structure{highp 4-component vector of float v}) 0:? 'pos' (smooth out highp 4-component vector of float) 0:? 'color' (smooth out highp 3-component vector of float) 0:? 'badm4' (layout(column_major shared ) uniform highp 4X4 matrix of float) -0:? 'tblock' (layout(row_major std140 ) uniform block{M1,M2,N1,badf,badg,bad1,bad2,bad3}) -0:? '__anon__0' (layout(row_major shared ) uniform block{b,t2m}) -0:? '__anon__2' (out block{f}) +0:? 'tblock' (layout(row_major std140 ) uniform block{layout(row_major std140 ) highp 4X4 matrix of float M1, layout(column_major std140 ) highp 4X4 matrix of float M2, layout(row_major std140 ) highp 3X3 matrix of float N1, layout(row_major std140 ) centroid highp float badf, layout(row_major std140 ) in highp float badg, layout(row_major std140 ) highp float bad1, layout(row_major shared ) highp float bad2, layout(row_major packed ) highp float bad3}) +0:? '__anon__0' (layout(row_major shared ) uniform block{layout(row_major shared ) bool b, layout(row_major shared ) highp 4X4 matrix of float t2m}) +0:? '__anon__2' (out block{highp float f}) 0:? 'badoutA' (layout(location=10 ) smooth out highp 4-component vector of float) 0:? 'compute_only' (shared highp 4-component vector of float) 0:? 'aoeuntaoeu' (layout(packed ) highp float) diff --git a/Test/baseResults/300operations.frag.out b/Test/baseResults/300operations.frag.out index 0657e3d55..c5a3dd595 100644 --- a/Test/baseResults/300operations.frag.out +++ b/Test/baseResults/300operations.frag.out @@ -1,7 +1,7 @@ 300operations.frag ERROR: 0:11: 'float' : type requires declaration of default precision qualifier -ERROR: 0:30: '+' : wrong operand types: no operation '+' exists that takes a left-hand operand of type 'layout(column_major shared ) uniform block{f}' and a right operand of type 'layout(column_major shared ) uniform block{f}' (or there is no acceptable conversion) -ERROR: 0:31: '+' : wrong operand types: no operation '+' exists that takes a left-hand operand of type 'structure{i}' and a right operand of type 'structure{i}' (or there is no acceptable conversion) +ERROR: 0:30: '+' : wrong operand types: no operation '+' exists that takes a left-hand operand of type 'layout(column_major shared ) uniform block{layout(column_major shared ) mediump float f}' and a right operand of type 'layout(column_major shared ) uniform block{layout(column_major shared ) mediump float f}' (or there is no acceptable conversion) +ERROR: 0:31: '+' : wrong operand types: no operation '+' exists that takes a left-hand operand of type 'structure{mediump int i}' and a right operand of type 'structure{mediump int i}' (or there is no acceptable conversion) ERROR: 0:32: '+' : wrong operand types: no operation '+' exists that takes a left-hand operand of type 'mediump int' and a right operand of type 'mediump float' (or there is no acceptable conversion) ERROR: 0:33: '+' : wrong operand types: no operation '+' exists that takes a left-hand operand of type 'mediump uint' and a right operand of type 'mediump float' (or there is no acceptable conversion) ERROR: 0:34: '+' : wrong operand types: no operation '+' exists that takes a left-hand operand of type 'mediump uint' and a right operand of type 'mediump int' (or there is no acceptable conversion) @@ -15,8 +15,8 @@ ERROR: 0:42: '%' : wrong operand types: no operation '%' exists that takes a le ERROR: 0:43: '%' : wrong operand types: no operation '%' exists that takes a left-hand operand of type 'mediump int' and a right operand of type 'mediump float' (or there is no acceptable conversion) ERROR: 0:44: '%' : wrong operand types: no operation '%' exists that takes a left-hand operand of type 'mediump float' and a right operand of type 'mediump uint' (or there is no acceptable conversion) ERROR: 0:45: '++' : l-value required "instanceName" (can't modify a uniform) -ERROR: 0:45: '++' : wrong operand type no operation '++' exists that takes an operand of type layout(column_major shared ) uniform block{f} (or there is no acceptable conversion) -ERROR: 0:46: '++' : wrong operand type no operation '++' exists that takes an operand of type structure{i} (or there is no acceptable conversion) +ERROR: 0:45: '++' : wrong operand type no operation '++' exists that takes an operand of type layout(column_major shared ) uniform block{layout(column_major shared ) mediump float f} (or there is no acceptable conversion) +ERROR: 0:46: '++' : wrong operand type no operation '++' exists that takes an operand of type structure{mediump int i} (or there is no acceptable conversion) ERROR: 0:47: '--' : wrong operand type no operation '--' exists that takes an operand of type 5-element array of mediump float (or there is no acceptable conversion) ERROR: 0:48: '++' : wrong operand type no operation '++' exists that takes an operand of type 3-component vector of bool (or there is no acceptable conversion) ERROR: 0:50: '<' : wrong operand types: no operation '<' exists that takes a left-hand operand of type 'mediump 3-component vector of int' and a right operand of type 'mediump 3-component vector of uint' (or there is no acceptable conversion) @@ -40,7 +40,7 @@ ERROR: 0:70: '~' : wrong operand type no operation '~' exists that takes an ope ERROR: 0:71: '~' : wrong operand type no operation '~' exists that takes an operand of type mediump 4X4 matrix of float (or there is no acceptable conversion) ERROR: 0:72: '~' : wrong operand type no operation '~' exists that takes an operand of type mediump 3-component vector of float (or there is no acceptable conversion) ERROR: 0:73: '~' : wrong operand type no operation '~' exists that takes an operand of type 5-element array of mediump float (or there is no acceptable conversion) -ERROR: 0:74: '~' : wrong operand type no operation '~' exists that takes an operand of type layout(column_major shared ) uniform block{f} (or there is no acceptable conversion) +ERROR: 0:74: '~' : wrong operand type no operation '~' exists that takes an operand of type layout(column_major shared ) uniform block{layout(column_major shared ) mediump float f} (or there is no acceptable conversion) ERROR: 0:76: '<<' : wrong operand types: no operation '<<' exists that takes a left-hand operand of type 'mediump int' and a right operand of type 'mediump 3-component vector of int' (or there is no acceptable conversion) ERROR: 0:77: '<<' : wrong operand types: no operation '<<' exists that takes a left-hand operand of type 'mediump uint' and a right operand of type 'mediump 3-component vector of uint' (or there is no acceptable conversion) ERROR: 0:78: '>>' : wrong operand types: no operation '>>' exists that takes a left-hand operand of type 'mediump int' and a right operand of type 'mediump float' (or there is no acceptable conversion) @@ -53,7 +53,7 @@ ERROR: 0:85: 'assign' : cannot convert from 'mediump 3-component vector of uint ERROR: 0:86: '|' : wrong operand types: no operation '|' exists that takes a left-hand operand of type 'mediump int' and a right operand of type 'mediump 3-component vector of uint' (or there is no acceptable conversion) ERROR: 0:87: '&' : wrong operand types: no operation '&' exists that takes a left-hand operand of type 'mediump uint' and a right operand of type 'mediump float' (or there is no acceptable conversion) ERROR: 0:88: '|' : wrong operand types: no operation '|' exists that takes a left-hand operand of type 'mediump 2X2 matrix of float' and a right operand of type 'mediump 2X2 matrix of float' (or there is no acceptable conversion) -ERROR: 0:89: '^' : wrong operand types: no operation '^' exists that takes a left-hand operand of type 'structure{i}' and a right operand of type 'structure{i}' (or there is no acceptable conversion) +ERROR: 0:89: '^' : wrong operand types: no operation '^' exists that takes a left-hand operand of type 'structure{mediump int i}' and a right operand of type 'structure{mediump int i}' (or there is no acceptable conversion) ERROR: 0:90: 'assign' : l-value required ERROR: 56 compilation errors. No code generated. @@ -62,8 +62,8 @@ ERROR: node is still EOpNull! 0:13 Function Definition: main( (void) 0:13 Function Parameters: 0:? Sequence -0:30 'instanceName' (layout(column_major shared ) uniform block{f}) -0:31 's' (structure{i}) +0:30 'instanceName' (layout(column_major shared ) uniform block{layout(column_major shared ) mediump float f}) +0:31 's' (structure{mediump int i}) 0:32 'i' (mediump int) 0:33 'u' (mediump uint) 0:34 'u' (mediump uint) @@ -76,8 +76,8 @@ ERROR: node is still EOpNull! 0:42 'f' (mediump float) 0:43 'i' (mediump int) 0:44 'f' (mediump float) -0:45 'instanceName' (layout(column_major shared ) uniform block{f}) -0:46 's' (structure{i}) +0:45 'instanceName' (layout(column_major shared ) uniform block{layout(column_major shared ) mediump float f}) +0:46 's' (structure{mediump int i}) 0:47 'a' (5-element array of mediump float) 0:48 'b3' (3-component vector of bool) 0:50 Constant: @@ -113,7 +113,7 @@ ERROR: node is still EOpNull! 0:71 'm4' (mediump 4X4 matrix of float) 0:72 'v3' (mediump 3-component vector of float) 0:73 'a' (5-element array of mediump float) -0:74 'instanceName' (layout(column_major shared ) uniform block{f}) +0:74 'instanceName' (layout(column_major shared ) uniform block{layout(column_major shared ) mediump float f}) 0:76 'i' (mediump int) 0:77 'u' (mediump uint) 0:78 'i' (mediump int) @@ -126,7 +126,7 @@ ERROR: node is still EOpNull! 0:86 'i' (mediump int) 0:87 'u' (mediump uint) 0:88 'm2' (mediump 2X2 matrix of float) -0:89 's' (structure{i}) +0:89 's' (structure{mediump int i}) 0:90 move second child to first child (mediump float) 0:90 move second child to first child (mediump float) 0:90 'f' (mediump float) @@ -169,8 +169,8 @@ ERROR: node is still EOpNull! 0:106 'a' (5-element array of mediump float) 0:106 'a' (5-element array of mediump float) 0:107 Compare Not Equal (bool) -0:107 's' (structure{i}) -0:107 's' (structure{i}) +0:107 's' (structure{mediump int i}) +0:107 's' (structure{mediump int i}) 0:109 logical-and (bool) 0:109 'b' (bool) 0:109 'b' (bool) @@ -231,8 +231,8 @@ ERROR: node is still EOpNull! 0:134 Constant: 0:134 2 (const int) 0:? Linker Objects -0:? 'instanceName' (layout(column_major shared ) uniform block{f}) -0:? 's' (structure{i}) +0:? 'instanceName' (layout(column_major shared ) uniform block{layout(column_major shared ) mediump float f}) +0:? 's' (structure{mediump int i}) 0:? 'a' (5-element array of mediump float) diff --git a/Test/baseResults/300scope.vert.out b/Test/baseResults/300scope.vert.out index c9aefe44f..cde7d2323 100644 --- a/Test/baseResults/300scope.vert.out +++ b/Test/baseResults/300scope.vert.out @@ -114,12 +114,12 @@ ERROR: node is still EOpNull! 0:60 'x' (highp int) 0:68 Sequence 0:68 Sequence -0:68 move second child to first child (structure{x}) -0:68 'S' (structure{x}) +0:68 move second child to first child (structure{highp int x}) +0:68 'S' (structure{highp int x}) 0:68 Constant: 0:68 0 (const int) 0:69 x: direct index for structure (highp int) -0:69 'S' (structure{x}) +0:69 'S' (structure{highp int x}) 0:69 Constant: 0:69 0 (const int) 0:73 Constant: diff --git a/Test/baseResults/330.frag.out b/Test/baseResults/330.frag.out index 66dd5a375..97a7e1725 100644 --- a/Test/baseResults/330.frag.out +++ b/Test/baseResults/330.frag.out @@ -33,7 +33,7 @@ ERROR: node is still EOpNull! 0:23 move second child to first child (4-component vector of float) 0:23 'c' (4-component vector of float) 0:23 gl_Color: direct index for structure (in 4-component vector of float) -0:23 '__anon__0' (in block{gl_Color,}) +0:23 '__anon__0' (in block{in 4-component vector of float gl_Color, }) 0:23 Constant: 0:23 2 (const uint) 0:24 move second child to first child (4-component vector of float) @@ -43,8 +43,8 @@ ERROR: node is still EOpNull! 0:? 'inVar' (smooth in 4-component vector of float) 0:? 'outVar' (out 4-component vector of float) 0:? 'varyingVar' (smooth in 4-component vector of float) -0:? '__anon__0' (in block{gl_Color,}) -0:? 'gl_name' (in block{gl_i}) +0:? '__anon__0' (in block{in 4-component vector of float gl_Color, }) +0:? 'gl_name' (in block{int gl_i}) Linked fragment stage: diff --git a/Test/baseResults/400.frag.out b/Test/baseResults/400.frag.out index 9c3cbd3ec..889a02425 100644 --- a/Test/baseResults/400.frag.out +++ b/Test/baseResults/400.frag.out @@ -201,8 +201,8 @@ ERROR: node is still EOpNull! 0:? 'vl' (layout(location=4 ) smooth in 4-component vector of float) 0:? 'vl2' (layout(location=6 ) smooth in 4-component vector of float) 0:? 'uv3' (layout(location=3 ) uniform 3-component vector of float) -0:? '__anon__0' (in block{gl_FogFragCoord,gl_TexCoord,gl_Color,gl_SecondaryColor}) -0:? '__anon__0' (in block{gl_FogFragCoord,gl_TexCoord,gl_Color,gl_SecondaryColor}) +0:? '__anon__0' (in block{in float gl_FogFragCoord, in unsized array of 4-component vector of float gl_TexCoord, smooth in 4-component vector of float gl_Color, in 4-component vector of float gl_SecondaryColor}) +0:? '__anon__0' (in block{in float gl_FogFragCoord, in unsized array of 4-component vector of float gl_TexCoord, smooth in 4-component vector of float gl_Color, in 4-component vector of float gl_SecondaryColor}) 0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float) 0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float) 0:? 'u2drs' (uniform sampler2DRectShadow) diff --git a/Test/baseResults/400.geom.out b/Test/baseResults/400.geom.out index 58a17b79d..4b23ce03c 100644 --- a/Test/baseResults/400.geom.out +++ b/Test/baseResults/400.geom.out @@ -47,8 +47,8 @@ ERROR: node is still EOpNull! 0:25 Constant: 0:25 1 (const int) 0:26 gl_Position: direct index for structure (4-component vector of float) -0:26 direct index (block{gl_Position,gl_PointSize}) -0:26 'gl_in' (in 3-element array of block{gl_Position,gl_PointSize}) +0:26 direct index (block{4-component vector of float gl_Position, float gl_PointSize}) +0:26 'gl_in' (in 3-element array of block{4-component vector of float gl_Position, float gl_PointSize}) 0:26 Constant: 0:26 1 (const int) 0:26 Constant: @@ -72,8 +72,8 @@ ERROR: node is still EOpNull! 0:51 Constant: 0:51 3 (const int) 0:? Linker Objects -0:? 'bn' (in 3-element array of block{a}) -0:? 'gl_in' (in 3-element array of block{gl_Position,gl_PointSize}) +0:? 'bn' (in 3-element array of block{int a}) +0:? 'gl_in' (in 3-element array of block{4-component vector of float gl_Position, float gl_PointSize}) 0:? 'color' (in 3-element array of 4-component vector of float) 0:? 'color2' (in 3-element array of 4-component vector of float) 0:? 'colorS' (in 3-element array of 4-component vector of float) @@ -85,8 +85,8 @@ ERROR: node is still EOpNull! 0:? 'patchIn' (patch in 3-element array of 4-component vector of float) 0:? 'patchOut' (layout(stream=0 ) patch out 4-component vector of float) 0:? 'scalar' (in float) -0:? 'inbls' (in block{a}) -0:? 'inbla' (in 17-element array of block{a}) +0:? 'inbls' (in block{int a}) +0:? 'inbla' (in 17-element array of block{int a}) Linked geometry stage: diff --git a/Test/baseResults/410.geom.out b/Test/baseResults/410.geom.out index 1eaeec690..c6cc54e74 100644 --- a/Test/baseResults/410.geom.out +++ b/Test/baseResults/410.geom.out @@ -4,7 +4,7 @@ ERROR: 0:8: 'myIn' : cannot redeclare a built-in block with a user name ERROR: 0:12: 'gl_myIn' : no declaration found for redeclaration ERROR: 0:20: 'gl_PerVertex' : can only redeclare a built-in block once, and before any use ERROR: 0:32: 'gl_Position' : no such field in structure -ERROR: 0:32: '=' : cannot convert from 'block{gl_PointSize}' to '4-component vector of float' +ERROR: 0:32: '=' : cannot convert from 'block{float gl_PointSize}' to '4-component vector of float' ERROR: 0:33: 'gl_Position' : member of nameless block was not redeclared ERROR: 0:33: 'assign' : cannot convert from 'const 4-component vector of float' to 'layout(stream=0 ) gl_Position void' ERROR: 7 compilation errors. No code generated. @@ -29,25 +29,25 @@ ERROR: node is still EOpNull! 0:30 move second child to first child (float) 0:30 'p' (float) 0:30 gl_PointSize: direct index for structure (float) -0:30 direct index (block{gl_PointSize}) -0:30 'gl_in' (in unsized array of block{gl_PointSize}) +0:30 direct index (block{float gl_PointSize}) +0:30 'gl_in' (in unsized array of block{float gl_PointSize}) 0:30 Constant: 0:30 1 (const int) 0:30 Constant: 0:30 0 (const int) 0:31 move second child to first child (float) 0:31 gl_PointSize: direct index for structure (layout(stream=0 ) gl_PointSize float) -0:31 '__anon__0' (layout(stream=0 ) out block{gl_PointSize,}) +0:31 '__anon__0' (layout(stream=0 ) out block{layout(stream=0 ) gl_PointSize float gl_PointSize, }) 0:31 Constant: 0:31 1 (const uint) 0:31 'p' (float) 0:33 gl_Position: direct index for structure (layout(stream=0 ) gl_Position void) -0:33 '__anon__0' (layout(stream=0 ) out block{gl_PointSize,}) +0:33 '__anon__0' (layout(stream=0 ) out block{layout(stream=0 ) gl_PointSize float gl_PointSize, }) 0:33 Constant: 0:33 0 (const uint) 0:? Linker Objects -0:? 'gl_in' (in unsized array of block{gl_PointSize}) -0:? '__anon__0' (layout(stream=0 ) out block{gl_PointSize,}) +0:? 'gl_in' (in unsized array of block{float gl_PointSize}) +0:? '__anon__0' (layout(stream=0 ) out block{layout(stream=0 ) gl_PointSize float gl_PointSize, }) Linked geometry stage: diff --git a/Test/baseResults/420.geom.out b/Test/baseResults/420.geom.out index 6865fa902..1f781e133 100644 --- a/Test/baseResults/420.geom.out +++ b/Test/baseResults/420.geom.out @@ -20,15 +20,15 @@ ERROR: node is still EOpNull! 0:9 Constant: 0:9 1 (const int) 0:10 gl_Position: direct index for structure (4-component vector of float) -0:10 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:10 'gl_in' (in 3-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:10 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:10 'gl_in' (in 3-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:10 Constant: 0:10 1 (const int) 0:10 Constant: 0:10 0 (const int) 0:11 gl_Position: direct index for structure (4-component vector of float) -0:11 indirect index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:11 'gl_in' (in 3-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:11 indirect index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:11 'gl_in' (in 3-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:11 'i' (int) 0:11 Constant: 0:11 0 (const int) @@ -38,8 +38,8 @@ ERROR: node is still EOpNull! 0:20 Constant: 0:20 3 (const int) 0:21 gl_Position: direct index for structure (4-component vector of float) -0:21 indirect index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:21 'gl_in' (in 3-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:21 indirect index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:21 'gl_in' (in 3-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:21 'i' (int) 0:21 Constant: 0:21 0 (const int) @@ -115,12 +115,12 @@ ERROR: node is still EOpNull! 0:44 1 (const int) 0:? Linker Objects 0:? 'i' (int) -0:? 'gl_in' (in 3-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:? 'gl_in' (in 3-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:? 'color3' (in 3-element array of 4-component vector of float) 0:? 's2D' (uniform sampler2D) 0:? 'coord' (in 3-element array of 2-component vector of float) 0:? 'v4' (uniform 4-component vector of float) -0:? '__anon__0' (layout(stream=0 ) out block{gl_PointSize,gl_ClipDistance}) +0:? '__anon__0' (layout(stream=0 ) out block{layout(stream=0 ) gl_PointSize float gl_PointSize, layout(stream=0 ) unsized array of float gl_ClipDistance}) Linked geometry stage: diff --git a/Test/baseResults/420.vert.out b/Test/baseResults/420.vert.out index 1ef919fab..fceb116d4 100644 --- a/Test/baseResults/420.vert.out +++ b/Test/baseResults/420.vert.out @@ -124,16 +124,16 @@ ERROR: node is still EOpNull! 0:? 4.200000 0:? 'dx' (const float) 0:? 4.200000 -0:? 'boundInst' (layout(binding=3 column_major shared ) uniform block{aoeu}) -0:? '__anon__0' (layout(binding=7 column_major shared ) uniform block{aoeu}) -0:? '__anon__1' (layout(binding=1 ) in block{aoeua}) -0:? '__anon__2' (layout(column_major shared ) uniform block{aooeu}) +0:? 'boundInst' (layout(binding=3 column_major shared ) uniform block{layout(binding=3 column_major shared ) int aoeu}) +0:? '__anon__0' (layout(binding=7 column_major shared ) uniform block{layout(binding=7 column_major shared ) int aoeu}) +0:? '__anon__1' (layout(binding=1 ) in block{layout(binding=1 ) int aoeua}) +0:? '__anon__2' (layout(column_major shared ) uniform block{layout(column_major shared ) int aooeu}) 0:? 'sampb1' (layout(binding=4 ) uniform sampler2D) 0:? 'sampb2' (layout(binding=5 ) uniform 10-element array of sampler2D) 0:? 'sampb3' (layout(binding=80 ) uniform sampler2D) 0:? 'sampb4' (layout(binding=31 ) uniform sampler2D) 0:? 'sampb5' (layout(binding=79 ) uniform 2-element array of sampler2D) -0:? '__anon__3' (out block{gl_ClipDistance,}) +0:? '__anon__3' (out block{unsized array of float gl_ClipDistance, }) 0:? 'patchIn' (patch in 4-component vector of float) 0:? 'patchOut' (smooth patch out 4-component vector of float) 0:? 'gl_VertexID' (gl_VertexId int) diff --git a/Test/baseResults/420_size_gl_in.geom.out b/Test/baseResults/420_size_gl_in.geom.out index 091586863..569d5cd4b 100644 --- a/Test/baseResults/420_size_gl_in.geom.out +++ b/Test/baseResults/420_size_gl_in.geom.out @@ -15,8 +15,8 @@ ERROR: node is still EOpNull! 0:13 Constant: 0:13 3 (const int) 0:14 gl_Position: direct index for structure (4-component vector of float) -0:14 direct index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:14 'gl_in' (in 3-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:14 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:14 'gl_in' (in 3-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:14 Constant: 0:14 1 (const int) 0:14 Constant: @@ -24,8 +24,8 @@ ERROR: node is still EOpNull! 0:15 Constant: 0:15 3 (const int) 0:16 gl_Position: direct index for structure (4-component vector of float) -0:16 indirect index (block{gl_Position,gl_PointSize,gl_ClipDistance}) -0:16 'gl_in' (in 3-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:16 indirect index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) +0:16 'gl_in' (in 3-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) 0:16 'i' (int) 0:16 Constant: 0:16 0 (const int) @@ -33,7 +33,7 @@ ERROR: node is still EOpNull! 0:? 'i' (int) 0:? 'colorun' (in 3-element array of 4-component vector of float) 0:? 'color3' (in 3-element array of 4-component vector of float) -0:? 'gl_in' (in 3-element array of block{gl_Position,gl_PointSize,gl_ClipDistance}) +0:? 'gl_in' (in 3-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance}) Linked geometry stage: diff --git a/Test/baseResults/430.vert.out b/Test/baseResults/430.vert.out index 3b347df53..18a7b3a77 100644 --- a/Test/baseResults/430.vert.out +++ b/Test/baseResults/430.vert.out @@ -1,8 +1,8 @@ 430.vert Warning, version 430 is not yet complete; some version-specific features are present, but many are missing. ERROR: 0:3: 'v4' : location qualifiers only appy to uniform, buffer, in, or out storage qualifiers -ERROR: 0:7: 'location qualifier on input block' : not supported for this version or the enabled extensions -ERROR: 0:8: 'location qualifier on output block' : not supported for this version or the enabled extensions +ERROR: 0:7: 'location qualifier on in/out block' : not supported for this version or the enabled extensions +ERROR: 0:8: 'location qualifier on in/out block' : not supported for this version or the enabled extensions ERROR: 0:21: 'g' : cannot use storage or interpolation qualifiers on structure members ERROR: 0:22: 'h' : cannot use storage or interpolation qualifiers on structure members ERROR: 0:23: 'i' : cannot use invariant qualifier on structure members @@ -23,7 +23,7 @@ ERROR: node is still EOpNull! 0:16 move second child to first child (float) 0:16 direct index (float) 0:16 gl_ClipDistance: direct index for structure (17-element array of float) -0:16 '__anon__0' (out block{gl_ClipDistance,}) +0:16 '__anon__0' (out block{17-element array of float gl_ClipDistance, }) 0:16 Constant: 0:16 2 (const uint) 0:16 Constant: @@ -39,10 +39,10 @@ ERROR: node is still EOpNull! 0:? Linker Objects 0:? 'v4' (layout(location=3 ) 4-component vector of float) 0:? 'uv4' (layout(location=4 ) uniform 4-component vector of float) -0:? 'b1' (layout(location=2 ) in block{v}) -0:? 'b2' (layout(location=2 ) out block{v}) -0:? '__anon__0' (out block{gl_ClipDistance,}) -0:? 'cs' (layout(location=10 ) smooth out 2-element array of structure{m,f}) +0:? 'b1' (layout(location=2 ) in block{layout(location=2 ) 4-component vector of float v}) +0:? 'b2' (layout(location=2 ) out block{layout(location=2 ) 4-component vector of float v}) +0:? '__anon__0' (out block{17-element array of float gl_ClipDistance, }) +0:? 'cs' (layout(location=10 ) smooth out 2-element array of structure{7-element array of 3X2 matrix of float m, float f}) 0:? 'cf' (layout(location=54 ) smooth out float) 0:? 'cg' (layout(location=53 ) smooth out float) 0:? 'alias1' (layout(location=10 ) in 4-component vector of float) diff --git a/Test/baseResults/430scope.vert.out b/Test/baseResults/430scope.vert.out index 8c56d416d..65ab45507 100644 --- a/Test/baseResults/430scope.vert.out +++ b/Test/baseResults/430scope.vert.out @@ -63,7 +63,7 @@ ERROR: node is still EOpNull! 0:47 3.000000 0:49 move second child to first child (4-component vector of float) 0:49 gl_Position: direct index for structure (invariant gl_Position 4-component vector of float) -0:49 '__anon__0' (out block{gl_Position,gl_PointSize,gl_ClipDistance,gl_ClipVertex,gl_FrontColor,gl_BackColor,gl_FrontSecondaryColor,gl_BackSecondaryColor,gl_TexCoord,gl_FogFragCoord}) +0:49 '__anon__0' (out block{invariant gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance, gl_ClipVertex 4-component vector of float gl_ClipVertex, 4-component vector of float gl_FrontColor, 4-component vector of float gl_BackColor, 4-component vector of float gl_FrontSecondaryColor, 4-component vector of float gl_BackSecondaryColor, unsized array of 4-component vector of float gl_TexCoord, float gl_FogFragCoord}) 0:49 Constant: 0:49 0 (const uint) 0:49 Construct vec4 (4-component vector of float) @@ -107,12 +107,12 @@ ERROR: node is still EOpNull! 0:60 'x' (int) 0:68 Sequence 0:68 Sequence -0:68 move second child to first child (structure{x}) -0:68 'S' (structure{x}) +0:68 move second child to first child (structure{int x}) +0:68 'S' (structure{int x}) 0:68 Constant: 0:68 0 (const int) 0:69 x: direct index for structure (int) -0:69 'S' (structure{x}) +0:69 'S' (structure{int x}) 0:69 Constant: 0:69 0 (const int) 0:73 Constant: diff --git a/Test/baseResults/aggOps.frag.out b/Test/baseResults/aggOps.frag.out index 711982cbe..57b402f3a 100644 --- a/Test/baseResults/aggOps.frag.out +++ b/Test/baseResults/aggOps.frag.out @@ -7,10 +7,10 @@ WARNING: 0:6: varying deprecated in version 130; may be removed in future releas 0:23 Function Definition: main( (void) 0:23 Function Parameters: 0:? Sequence -0:27 move second child to first child (3-element array of structure{i,f}) -0:27 'a' (3-element array of structure{i,f}) -0:27 Construct structure (3-element array of structure{i,f}) -0:27 Construct structure (structure{i,f}) +0:27 move second child to first child (3-element array of structure{int i, float f}) +0:27 'a' (3-element array of structure{int i, float f}) +0:27 Construct structure (3-element array of structure{int i, float f}) +0:27 Construct structure (structure{int i, float f}) 0:27 Convert float to int (int) 0:27 direct index (float) 0:27 'u' (smooth in 4-component vector of float) @@ -20,7 +20,7 @@ WARNING: 0:6: varying deprecated in version 130; may be removed in future releas 0:27 'u' (smooth in 4-component vector of float) 0:27 Constant: 0:27 1 (const int) -0:27 Construct structure (structure{i,f}) +0:27 Construct structure (structure{int i, float f}) 0:27 Convert float to int (int) 0:27 direct index (float) 0:27 'u' (smooth in 4-component vector of float) @@ -33,13 +33,13 @@ WARNING: 0:6: varying deprecated in version 130; may be removed in future releas 0:27 Constant: 0:27 14 (const int) 0:27 14.000000 -0:28 move second child to first child (3-element array of structure{i,f}) -0:28 'b' (3-element array of structure{i,f}) -0:28 Construct structure (3-element array of structure{i,f}) +0:28 move second child to first child (3-element array of structure{int i, float f}) +0:28 'b' (3-element array of structure{int i, float f}) +0:28 Construct structure (3-element array of structure{int i, float f}) 0:28 Constant: 0:28 17 (const int) 0:28 17.000000 -0:28 Construct structure (structure{i,f}) +0:28 Construct structure (structure{int i, float f}) 0:28 Convert float to int (int) 0:28 direct index (float) 0:28 'w' (smooth in 4-component vector of float) @@ -49,7 +49,7 @@ WARNING: 0:6: varying deprecated in version 130; may be removed in future releas 0:28 'w' (smooth in 4-component vector of float) 0:28 Constant: 0:28 1 (const int) -0:28 Construct structure (structure{i,f}) +0:28 Construct structure (structure{int i, float f}) 0:28 Convert float to int (int) 0:28 direct index (float) 0:28 'w' (smooth in 4-component vector of float) @@ -62,8 +62,8 @@ WARNING: 0:6: varying deprecated in version 130; may be removed in future releas 0:30 Test condition and select (void) 0:30 Condition 0:30 Compare Equal (bool) -0:30 'foo2a' (uniform structure{i,f,s1_1}) -0:30 'foo2b' (uniform structure{i,f,s1_1}) +0:30 'foo2a' (uniform structure{int i, float f, structure{int i, float f} s1_1}) +0:30 'foo2b' (uniform structure{int i, float f, structure{int i, float f} s1_1}) 0:30 true case 0:31 move second child to first child (4-component vector of float) 0:31 'v' (4-component vector of float) @@ -118,8 +118,8 @@ WARNING: 0:6: varying deprecated in version 130; may be removed in future releas 0:44 Test condition and select (void) 0:44 Condition 0:44 Compare Equal (bool) -0:44 'a' (3-element array of structure{i,f}) -0:44 'b' (3-element array of structure{i,f}) +0:44 'a' (3-element array of structure{int i, float f}) +0:44 'b' (3-element array of structure{int i, float f}) 0:44 true case 0:45 vector scale second child into first child (4-component vector of float) 0:45 'v' (4-component vector of float) @@ -128,8 +128,8 @@ WARNING: 0:6: varying deprecated in version 130; may be removed in future releas 0:47 Test condition and select (void) 0:47 Condition 0:47 Compare Not Equal (bool) -0:47 'a' (3-element array of structure{i,f}) -0:47 'b' (3-element array of structure{i,f}) +0:47 'a' (3-element array of structure{int i, float f}) +0:47 'b' (3-element array of structure{int i, float f}) 0:47 true case 0:48 vector scale second child into first child (4-component vector of float) 0:48 'v' (4-component vector of float) @@ -143,9 +143,9 @@ WARNING: 0:6: varying deprecated in version 130; may be removed in future releas 0:? 'coord' (smooth in 2-component vector of float) 0:? 'u' (smooth in 4-component vector of float) 0:? 'w' (smooth in 4-component vector of float) -0:? 'foo1' (uniform structure{i,f}) -0:? 'foo2a' (uniform structure{i,f,s1_1}) -0:? 'foo2b' (uniform structure{i,f,s1_1}) +0:? 'foo1' (uniform structure{int i, float f}) +0:? 'foo2a' (uniform structure{int i, float f, structure{int i, float f} s1_1}) +0:? 'foo2b' (uniform structure{int i, float f, structure{int i, float f} s1_1}) Linked fragment stage: diff --git a/Test/baseResults/array100.frag.out b/Test/baseResults/array100.frag.out index 5e12a74f8..835332a48 100644 --- a/Test/baseResults/array100.frag.out +++ b/Test/baseResults/array100.frag.out @@ -127,29 +127,29 @@ ERROR: node is still EOpNull! 0:40 1.000000 0:40 1.000000 0:40 1.000000 -0:53 Function Definition: bar9( (structure{v4,sa}) +0:53 Function Definition: bar9( (structure{mediump 4-component vector of float v4, structure{mediump 3-component vector of float v3, 4-element array of mediump 2-component vector of float v2} sa}) 0:53 Function Parameters: 0:? Sequence 0:56 Branch: Return with expression -0:56 's' (structure{v4,sa}) +0:56 's' (structure{mediump 4-component vector of float v4, structure{mediump 3-component vector of float v3, 4-element array of mediump 2-component vector of float v2} sa}) 0:59 Function Definition: bar10(struct-SB-vf4-struct-SA-vf3-vf2[4]11; (void) 0:59 Function Parameters: -0:59 's' (in structure{v4,sa}) +0:59 's' (in structure{mediump 4-component vector of float v4, structure{mediump 3-component vector of float v3, 4-element array of mediump 2-component vector of float v2} sa}) 0:63 Function Definition: bar11( (void) 0:63 Function Parameters: 0:? Sequence -0:66 move second child to first child (structure{v4,sa}) -0:66 's1' (structure{v4,sa}) -0:66 's2' (structure{v4,sa}) +0:66 move second child to first child (structure{mediump 4-component vector of float v4, structure{mediump 3-component vector of float v3, 4-element array of mediump 2-component vector of float v2} sa}) +0:66 's1' (structure{mediump 4-component vector of float v4, structure{mediump 3-component vector of float v3, 4-element array of mediump 2-component vector of float v2} sa}) +0:66 's2' (structure{mediump 4-component vector of float v4, structure{mediump 3-component vector of float v3, 4-element array of mediump 2-component vector of float v2} sa}) 0:67 Function Call: bar10(struct-SB-vf4-struct-SA-vf3-vf2[4]11; (void) -0:67 's1' (structure{v4,sa}) -0:68 move second child to first child (structure{v4,sa}) -0:68 's2' (structure{v4,sa}) -0:68 Function Call: bar9( (structure{v4,sa}) +0:67 's1' (structure{mediump 4-component vector of float v4, structure{mediump 3-component vector of float v3, 4-element array of mediump 2-component vector of float v2} sa}) +0:68 move second child to first child (structure{mediump 4-component vector of float v4, structure{mediump 3-component vector of float v3, 4-element array of mediump 2-component vector of float v2} sa}) +0:68 's2' (structure{mediump 4-component vector of float v4, structure{mediump 3-component vector of float v3, 4-element array of mediump 2-component vector of float v2} sa}) +0:68 Function Call: bar9( (structure{mediump 4-component vector of float v4, structure{mediump 3-component vector of float v3, 4-element array of mediump 2-component vector of float v2} sa}) 0:69 Sequence -0:69 move second child to first child (structure{v4,sa}) -0:69 'initSb' (structure{v4,sa}) -0:69 's1' (structure{v4,sa}) +0:69 move second child to first child (structure{mediump 4-component vector of float v4, structure{mediump 3-component vector of float v3, 4-element array of mediump 2-component vector of float v2} sa}) +0:69 'initSb' (structure{mediump 4-component vector of float v4, structure{mediump 3-component vector of float v3, 4-element array of mediump 2-component vector of float v2} sa}) +0:69 's1' (structure{mediump 4-component vector of float v4, structure{mediump 3-component vector of float v3, 4-element array of mediump 2-component vector of float v2} sa}) 0:? Linker Objects 0:? 'gu' (unsized array of mediump float) 0:? 'g4' (4-element array of mediump float) diff --git a/Test/baseResults/constErrors.frag.out b/Test/baseResults/constErrors.frag.out index 21e394a06..d62d4aad8 100644 --- a/Test/baseResults/constErrors.frag.out +++ b/Test/baseResults/constErrors.frag.out @@ -7,8 +7,8 @@ ERROR: 0:18: '' : constant expression required ERROR: 0:18: '' : array size must be a constant integer expression ERROR: 0:19: '' : constant expression required ERROR: 0:19: '' : array size must be a constant integer expression -ERROR: 0:27: '=' : global const initializers must be constant 'const structure{v3,iv2}' -ERROR: 0:33: '=' : global const initializers must be constant 'const structure{v3,iv2,m}' +ERROR: 0:27: '=' : global const initializers must be constant 'const structure{3-component vector of float v3, 2-component vector of int iv2}' +ERROR: 0:33: '=' : global const initializers must be constant 'const structure{3-component vector of float v3, 2-component vector of int iv2, 2X4 matrix of float m}' ERROR: 9 compilation errors. No code generated. @@ -26,8 +26,8 @@ ERROR: node is still EOpNull! 0:? 'constInt' (const int) 0:? 3 (const int) 0:? 'uniformInt' (uniform int) -0:? 's' (structure{v3,iv2}) -0:? 's2' (structure{v3,iv2,m}) +0:? 's' (structure{3-component vector of float v3, 2-component vector of int iv2}) +0:? 's2' (structure{3-component vector of float v3, 2-component vector of int iv2, 2X4 matrix of float m}) 0:? 'f' (const float) 0:? 3.000000 diff --git a/Test/baseResults/constFold.frag.out b/Test/baseResults/constFold.frag.out index c2fb5803e..28306e0b8 100644 --- a/Test/baseResults/constFold.frag.out +++ b/Test/baseResults/constFold.frag.out @@ -262,7 +262,7 @@ ERROR: node is still EOpNull! 0:? 'out11' (out 4-component vector of float) 0:? 'out12' (out 2-component vector of int) 0:? 'out13' (out 3-component vector of uint) -0:? 's' (const structure{v3,iv2,m}) +0:? 's' (const structure{3-component vector of float v3, 2-component vector of int iv2, 2X4 matrix of float m}) 0:? 3.000000 0:? 3.000000 0:? 3.000000 diff --git a/Test/baseResults/cppSimple.vert.out b/Test/baseResults/cppSimple.vert.out index bcd1e7781..34495c0a7 100644 --- a/Test/baseResults/cppSimple.vert.out +++ b/Test/baseResults/cppSimple.vert.out @@ -125,7 +125,7 @@ ERROR: node is still EOpNull! 0:65 0.050000 0:69 move second child to first child (4-component vector of float) 0:69 gl_Position: direct index for structure (gl_Position 4-component vector of float) -0:69 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance,gl_ClipVertex,gl_FrontColor,gl_BackColor,gl_FrontSecondaryColor,gl_BackSecondaryColor,gl_TexCoord,gl_FogFragCoord}) +0:69 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance, gl_ClipVertex 4-component vector of float gl_ClipVertex, 4-component vector of float gl_FrontColor, 4-component vector of float gl_BackColor, 4-component vector of float gl_FrontSecondaryColor, 4-component vector of float gl_BackSecondaryColor, unsized array of 4-component vector of float gl_TexCoord, float gl_FogFragCoord}) 0:69 Constant: 0:69 0 (const uint) 0:69 Construct vec4 (4-component vector of float) @@ -165,7 +165,7 @@ ERROR: node is still EOpNull! 12:20034 Sequence 12:20034 move second child to first child (4-component vector of float) 12:20034 gl_Position: direct index for structure (gl_Position 4-component vector of float) -12:20034 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance,gl_ClipVertex,gl_FrontColor,gl_BackColor,gl_FrontSecondaryColor,gl_BackSecondaryColor,gl_TexCoord,gl_FogFragCoord}) +12:20034 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance, gl_ClipVertex 4-component vector of float gl_ClipVertex, 4-component vector of float gl_FrontColor, 4-component vector of float gl_BackColor, 4-component vector of float gl_FrontSecondaryColor, 4-component vector of float gl_BackSecondaryColor, unsized array of 4-component vector of float gl_TexCoord, float gl_FogFragCoord}) 12:20034 Constant: 12:20034 0 (const uint) 12:20034 Constant: diff --git a/Test/baseResults/deepRvalue.frag.out b/Test/baseResults/deepRvalue.frag.out index b9f1f909d..0bbb5b27a 100644 --- a/Test/baseResults/deepRvalue.frag.out +++ b/Test/baseResults/deepRvalue.frag.out @@ -108,8 +108,8 @@ 0:33 direct index (float) 0:33 direct index (2-component vector of float) 0:33 b: direct index for structure (3-element array of 2-component vector of float) -0:33 move second child to first child (structure{a,b,c}) -0:33 't' (structure{a,b,c}) +0:33 move second child to first child (structure{int a, 3-element array of 2-component vector of float b, bool c}) +0:33 't' (structure{int a, 3-element array of 2-component vector of float b, bool c}) 0:33 Constant: 0:33 1 (const int) 0:33 2.000000 diff --git a/Test/baseResults/functionSemantics.frag.out b/Test/baseResults/functionSemantics.frag.out index 45678706d..f164916b9 100644 --- a/Test/baseResults/functionSemantics.frag.out +++ b/Test/baseResults/functionSemantics.frag.out @@ -70,7 +70,7 @@ 0:28 move second child to first child (mediump int) 0:28 direct index (mediump int) 0:28 t: direct index for structure (mediump 4-component vector of int) -0:28 'f' (structure{t}) +0:28 'f' (structure{mediump 4-component vector of int t}) 0:28 Constant: 0:28 0 (const int) 0:28 Constant: @@ -93,7 +93,7 @@ 0:30 'e' (mediump int) 0:30 direct index (mediump int) 0:30 t: direct index for structure (mediump 4-component vector of int) -0:30 'f' (structure{t}) +0:30 'f' (structure{mediump 4-component vector of int t}) 0:30 Constant: 0:30 0 (const int) 0:30 Constant: @@ -107,7 +107,7 @@ 0:32 'e' (mediump int) 0:32 direct index (mediump int) 0:32 t: direct index for structure (mediump 4-component vector of int) -0:32 'f' (structure{t}) +0:32 'f' (structure{mediump 4-component vector of int t}) 0:32 Constant: 0:32 0 (const int) 0:32 Constant: diff --git a/Test/baseResults/link1.frag.out b/Test/baseResults/link1.frag.out index 65c7fc6c1..693be9876 100644 --- a/Test/baseResults/link1.frag.out +++ b/Test/baseResults/link1.frag.out @@ -71,11 +71,11 @@ Warning, version 130 is not yet complete; most features are present, but a few a 0:? 0.000000 0:? 0.000000 0:? 4.000000 -0:? 's' (uniform structure{a,b}) +0:? 's' (uniform structure{int a, float b}) 0:? 82 (const int) 0:? 3.900000 -0:? 'sn' (uniform structure{a,b}) -0:? 'se' (uniform structure{a,b}) +0:? 'sn' (uniform structure{int a, float b}) +0:? 'se' (uniform structure{int a, float b}) 0:? 82 (const int) 0:? 3.900000 @@ -139,13 +139,13 @@ Warning, version 130 is not yet complete; most features are present, but a few a 0:? 0.000000 0:? 0.000000 0:? 3.000000 -0:? 's' (uniform structure{a,b}) +0:? 's' (uniform structure{int a, float b}) 0:? 82 (const int) 0:? 3.900000 -0:? 'sn' (uniform structure{a,b}) +0:? 'sn' (uniform structure{int a, float b}) 0:? 82 (const int) 0:? 3.900000 -0:? 'se' (uniform structure{a,b}) +0:? 'se' (uniform structure{int a, float b}) 0:? 81 (const int) 0:? 3.900000 @@ -271,13 +271,13 @@ ERROR: Linking fragment stage: Precision qualifiers must match: 0:? 0.000000 0:? 0.000000 0:? 4.000000 -0:? 's' (uniform structure{a,b}) +0:? 's' (uniform structure{int a, float b}) 0:? 82 (const int) 0:? 3.900000 -0:? 'sn' (uniform structure{a,b}) +0:? 'sn' (uniform structure{int a, float b}) 0:? 82 (const int) 0:? 3.900000 -0:? 'se' (uniform structure{a,b}) +0:? 'se' (uniform structure{int a, float b}) 0:? 82 (const int) 0:? 3.900000 0:? 'd' (4-component vector of float) diff --git a/Test/baseResults/localAggregates.frag.out b/Test/baseResults/localAggregates.frag.out index 95e46f659..95f72bb03 100644 --- a/Test/baseResults/localAggregates.frag.out +++ b/Test/baseResults/localAggregates.frag.out @@ -7,18 +7,18 @@ WARNING: 0:5: varying deprecated in version 130; may be removed in future releas 0:34 Function Definition: main( (void) 0:34 Function Parameters: 0:? Sequence -0:41 move second child to first child (structure{i,f,s1_1,bleh}) -0:41 'locals2' (structure{i,f,s1_1,bleh}) -0:41 s2_1: direct index for structure (structure{i,f,s1_1,bleh}) -0:41 'foo3' (uniform structure{s2_1,i,f,s1_1}) +0:41 move second child to first child (structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh}) +0:41 'locals2' (structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh}) +0:41 s2_1: direct index for structure (structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh}) +0:41 'foo3' (uniform structure{structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh} s2_1, int i, float f, structure{int i, float f} s1_1}) 0:41 Constant: 0:41 0 (const int) 0:43 Test condition and select (void) 0:43 Condition 0:43 Compare Greater Than (bool) 0:43 i: direct index for structure (int) -0:43 s2_1: direct index for structure (structure{i,f,s1_1,bleh}) -0:43 'foo3' (uniform structure{s2_1,i,f,s1_1}) +0:43 s2_1: direct index for structure (structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh}) +0:43 'foo3' (uniform structure{structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh} s2_1, int i, float f, structure{int i, float f} s1_1}) 0:43 Constant: 0:43 0 (const int) 0:43 Constant: @@ -29,8 +29,8 @@ WARNING: 0:5: varying deprecated in version 130; may be removed in future releas 0:44 Sequence 0:44 move second child to first child (float) 0:44 f: direct index for structure (float) -0:44 s1_1: direct index for structure (structure{i,f}) -0:44 'locals2' (structure{i,f,s1_1,bleh}) +0:44 s1_1: direct index for structure (structure{int i, float f}) +0:44 'locals2' (structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh}) 0:44 Constant: 0:44 2 (const int) 0:44 Constant: @@ -52,8 +52,8 @@ WARNING: 0:5: varying deprecated in version 130; may be removed in future releas 0:46 Constant: 0:46 2 (const int) 0:46 i: direct index for structure (int) -0:46 s2_1: direct index for structure (structure{i,f,s1_1,bleh}) -0:46 'foo3' (uniform structure{s2_1,i,f,s1_1}) +0:46 s2_1: direct index for structure (structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh}) +0:46 'foo3' (uniform structure{structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh} s2_1, int i, float f, structure{int i, float f} s1_1}) 0:46 Constant: 0:46 0 (const int) 0:46 Constant: @@ -62,8 +62,8 @@ WARNING: 0:5: varying deprecated in version 130; may be removed in future releas 0:48 Sequence 0:48 move second child to first child (float) 0:48 f: direct index for structure (float) -0:48 s1_1: direct index for structure (structure{i,f}) -0:48 'locals2' (structure{i,f,s1_1,bleh}) +0:48 s1_1: direct index for structure (structure{int i, float f}) +0:48 'locals2' (structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh}) 0:48 Constant: 0:48 2 (const int) 0:48 Constant: @@ -148,14 +148,14 @@ WARNING: 0:5: varying deprecated in version 130; may be removed in future releas 0:66 'localArray' (16-element array of float) 0:68 move second child to first child (4-component vector of float) 0:68 bleh: direct index for structure (4-component vector of float) -0:68 'locals2' (structure{i,f,s1_1,bleh}) +0:68 'locals2' (structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh}) 0:68 Constant: 0:68 3 (const int) 0:68 'color' (smooth in 4-component vector of float) 0:69 move second child to first child (float) 0:69 direct index (float) 0:69 bleh: direct index for structure (4-component vector of float) -0:69 'locals2' (structure{i,f,s1_1,bleh}) +0:69 'locals2' (structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh}) 0:69 Constant: 0:69 3 (const int) 0:69 Constant: @@ -169,7 +169,7 @@ WARNING: 0:5: varying deprecated in version 130; may be removed in future releas 0:71 component-wise multiply (4-component vector of float) 0:71 vector-scale (4-component vector of float) 0:71 bleh: direct index for structure (4-component vector of float) -0:71 'locals2' (structure{i,f,s1_1,bleh}) +0:71 'locals2' (structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh}) 0:71 Constant: 0:71 3 (const int) 0:71 add (float) @@ -180,8 +180,8 @@ WARNING: 0:5: varying deprecated in version 130; may be removed in future releas 0:71 Constant: 0:71 4 (const int) 0:71 f: direct index for structure (float) -0:71 s1_1: direct index for structure (structure{i,f}) -0:71 'locals2' (structure{i,f,s1_1,bleh}) +0:71 s1_1: direct index for structure (structure{int i, float f}) +0:71 'locals2' (structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh}) 0:71 Constant: 0:71 2 (const int) 0:71 Constant: @@ -199,9 +199,9 @@ WARNING: 0:5: varying deprecated in version 130; may be removed in future releas 0:? 'sampler' (uniform sampler2D) 0:? 'coord' (smooth in 2-component vector of float) 0:? 'color' (smooth in 4-component vector of float) -0:? 'foo' (uniform structure{i,f}) -0:? 'foo2' (uniform structure{i,f,s1_1,bleh}) -0:? 'foo3' (uniform structure{s2_1,i,f,s1_1}) +0:? 'foo' (uniform structure{int i, float f}) +0:? 'foo2' (uniform structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh}) +0:? 'foo3' (uniform structure{structure{int i, float f, structure{int i, float f} s1_1, 4-component vector of float bleh} s2_1, int i, float f, structure{int i, float f} s1_1}) 0:? 'uFloatArray' (uniform 16-element array of float) 0:? 'condition' (uniform int) diff --git a/Test/baseResults/prepost.frag.out b/Test/baseResults/prepost.frag.out index 78fc83b7b..daaacfb4b 100644 --- a/Test/baseResults/prepost.frag.out +++ b/Test/baseResults/prepost.frag.out @@ -13,7 +13,7 @@ Warning, version 140 is not yet complete; most features are present, but a few a 0:12 move second child to first child (float) 0:12 direct index (float) 0:12 y: direct index for structure (5-element array of float) -0:12 'str' (structure{y}) +0:12 'str' (structure{5-element array of float y}) 0:12 Constant: 0:12 0 (const int) 0:12 Constant: @@ -25,7 +25,7 @@ Warning, version 140 is not yet complete; most features are present, but a few a 0:13 Pre-Increment (float) 0:13 indirect index (float) 0:13 y: direct index for structure (5-element array of float) -0:13 'str' (structure{y}) +0:13 'str' (structure{5-element array of float y}) 0:13 Constant: 0:13 0 (const int) 0:13 Pre-Decrement (int) @@ -33,7 +33,7 @@ Warning, version 140 is not yet complete; most features are present, but a few a 0:14 add second child into first child (float) 0:14 direct index (float) 0:14 y: direct index for structure (5-element array of float) -0:14 'str' (structure{y}) +0:14 'str' (structure{5-element array of float y}) 0:14 Constant: 0:14 0 (const int) 0:14 Constant: @@ -44,7 +44,7 @@ Warning, version 140 is not yet complete; most features are present, but a few a 0:15 Post-Decrement (float) 0:15 direct index (float) 0:15 y: direct index for structure (5-element array of float) -0:15 'str' (structure{y}) +0:15 'str' (structure{5-element array of float y}) 0:15 Constant: 0:15 0 (const int) 0:15 Constant: @@ -52,7 +52,7 @@ Warning, version 140 is not yet complete; most features are present, but a few a 0:16 add second child into first child (float) 0:16 indirect index (float) 0:16 y: direct index for structure (5-element array of float) -0:16 'str' (structure{y}) +0:16 'str' (structure{5-element array of float y}) 0:16 Constant: 0:16 0 (const int) 0:16 Post-Increment (int) @@ -61,7 +61,7 @@ Warning, version 140 is not yet complete; most features are present, but a few a 0:17 Pre-Decrement (float) 0:17 indirect index (float) 0:17 y: direct index for structure (5-element array of float) -0:17 'str' (structure{y}) +0:17 'str' (structure{5-element array of float y}) 0:17 Constant: 0:17 0 (const int) 0:17 Pre-Decrement (int) @@ -71,7 +71,7 @@ Warning, version 140 is not yet complete; most features are present, but a few a 0:19 'x' (float) 0:19 direct index (float) 0:19 y: direct index for structure (5-element array of float) -0:19 'str' (structure{y}) +0:19 'str' (structure{5-element array of float y}) 0:19 Constant: 0:19 0 (const int) 0:19 Constant: diff --git a/Test/baseResults/specExamples.frag.out b/Test/baseResults/specExamples.frag.out index 95be7c958..b1a03e2d8 100644 --- a/Test/baseResults/specExamples.frag.out +++ b/Test/baseResults/specExamples.frag.out @@ -200,8 +200,8 @@ ERROR: node is still EOpNull! 0:178 Constant: 0:178 0.000000 0:193 Sequence -0:193 move second child to first child (structure{a,b}) -0:193 'e' (structure{a,b}) +0:193 move second child to first child (structure{float a, int b}) +0:193 'e' (structure{float a, int b}) 0:193 Constant: 0:193 1.200000 0:193 2 (const int) @@ -270,10 +270,10 @@ ERROR: node is still EOpNull! 0:? 'm' (3X2 matrix of float) 0:? 'highPrecisionMVP' (4X4 matrix of double) 0:? 'dm' (2X4 matrix of double) -0:? 'lightVar' (structure{intensity,position}) +0:? 'lightVar' (structure{float intensity, 3-component vector of float position}) 0:? 'frequencies' (3-element array of float) 0:? 'lightPosition' (uniform 4-element array of 4-component vector of float) -0:? 'lights' (2-element array of structure{intensity,position}) +0:? 'lights' (2-element array of structure{float intensity, 3-component vector of float position}) 0:? 'numLights' (const int) 0:? 2 (const int) 0:? 'normal' (smooth in 3-component vector of float) @@ -286,17 +286,17 @@ ERROR: node is still EOpNull! 0:? 0.700000 0:? 0.700000 0:? 0.200000 -0:? '__anon__0' (in block{Color1,Color2,TexCoordA,Atten}) -0:? '__anon__1' (in block{LightPos,LightColor}) -0:? 'Materiala' (in block{Color,TexCoord}) +0:? '__anon__0' (in block{smooth in 4-component vector of float Color1, smooth 4-component vector of float Color2, 2-component vector of float TexCoordA, uniform float Atten}) +0:? '__anon__1' (in block{4-component vector of float LightPos, 3-component vector of float LightColor}) +0:? 'Materiala' (in block{4-component vector of float Color, 2-component vector of float TexCoord}) 0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float) 0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float) 0:? 'factor' (layout(location=3 ) out 4-component vector of float) 0:? 'colors' (layout(location=2 ) out 3-element array of 4-component vector of float) 0:? 'gl_FragDepth' (gl_FragDepth float) 0:? 'gl_FragDepth' (gl_FragDepth float) -0:? '__anon__2' (in block{gl_FogFragCoord,gl_TexCoord,gl_Color,gl_SecondaryColor}) -0:? '__anon__2' (in block{gl_FogFragCoord,gl_TexCoord,gl_Color,gl_SecondaryColor}) +0:? '__anon__2' (in block{in float gl_FogFragCoord, in unsized array of 4-component vector of float gl_TexCoord, flat in 4-component vector of float gl_Color, in 4-component vector of float gl_SecondaryColor}) +0:? '__anon__2' (in block{in float gl_FogFragCoord, in unsized array of 4-component vector of float gl_TexCoord, flat in 4-component vector of float gl_Color, in 4-component vector of float gl_SecondaryColor}) Linked fragment stage: diff --git a/Test/baseResults/specExamples.vert.out b/Test/baseResults/specExamples.vert.out index f7aa45cc0..2a4fefbb3 100644 --- a/Test/baseResults/specExamples.vert.out +++ b/Test/baseResults/specExamples.vert.out @@ -227,8 +227,8 @@ ERROR: node is still EOpNull! 0:170 'img2' (coherent uniform image2D) 0:? Sequence 0:178 Sequence -0:178 move second child to first child (structure{intensity,position}) -0:178 'lightVar' (structure{intensity,position}) +0:178 move second child to first child (structure{float intensity, 3-component vector of float position}) +0:178 'lightVar' (structure{float intensity, 3-component vector of float position}) 0:178 Constant: 0:178 3.000000 0:178 1.000000 @@ -278,27 +278,27 @@ ERROR: node is still EOpNull! 0:194 Constant: 0:194 0.000000 0:? Linker Objects -0:? 'Coords' (out block{Position,Texture}) -0:? '__anon__0' (out block{Color}) -0:? 'transforms' (layout(column_major shared ) uniform 4-element array of block{ModelViewMatrix,ModelViewProjectionMatrix,a,Deformation}) +0:? 'Coords' (out block{4-component vector of float Position, 2-component vector of float Texture}) +0:? '__anon__0' (out block{4-component vector of float Color}) +0:? 'transforms' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) 4X4 matrix of float ModelViewMatrix, layout(column_major shared ) 4X4 matrix of float ModelViewProjectionMatrix, layout(column_major shared ) unsized array of 4-component vector of float a, layout(column_major shared ) float Deformation}) 0:? 'normal' (layout(location=3 ) in 4-component vector of float) 0:? 'colors' (layout(location=6 ) in 3-element array of 4-component vector of float) -0:? 's' (layout(location=3 ) structure{a1,b,c}) +0:? 's' (layout(location=3 ) structure{3-component vector of float a1, 2X2 matrix of float b, 2-element array of 4-component vector of float c}) 0:? 'var1' (smooth out 4-component vector of float) -0:? '__anon__1' (out block{var2,var3,var4}) +0:? '__anon__1' (out block{4-component vector of float var2, 2-component vector of float var3, 3-component vector of float var4}) 0:? 'var5' (smooth out 4-component vector of float) -0:? '__anon__2' (out block{var6}) +0:? '__anon__2' (out block{4-component vector of float var6}) 0:? 'var7' (smooth out 4-component vector of float) -0:? '__anon__3' (layout(row_major std140 ) uniform block{M1,M2,N1}) -0:? '__anon__4' (layout(column_major shared ) uniform block{M13,m14,N12}) +0:? '__anon__3' (layout(row_major std140 ) uniform block{layout(row_major std140 ) 4X4 matrix of float M1, layout(column_major std140 ) 4X4 matrix of float M2, layout(row_major std140 ) 3X3 matrix of float N1}) +0:? '__anon__4' (layout(column_major shared ) uniform block{layout(column_major shared ) 4X4 matrix of float M13, layout(row_major shared ) 4X4 matrix of float m14, layout(column_major shared ) 3X3 matrix of float N12}) 0:? 's17' (layout(binding=3 ) uniform sampler2D) 0:? 'a2' (layout(binding=2 ) uniform int) 0:? 'bar' (layout(binding=2 ) uniform int) 0:? 'b2' (layout(binding=2 ) uniform int) 0:? 'c2' (layout(binding=3 ) uniform int) 0:? 'd2' (layout(binding=2 ) uniform int) -0:? '__anon__5' (out block{gl_Position,gl_PointSize,gl_ClipDistance,gl_ClipVertex,gl_FrontColor,gl_BackColor,gl_FrontSecondaryColor,gl_BackSecondaryColor,gl_TexCoord,gl_FogFragCoord}) -0:? '__anon__5' (out block{gl_Position,gl_PointSize,gl_ClipDistance,gl_ClipVertex,gl_FrontColor,gl_BackColor,gl_FrontSecondaryColor,gl_BackSecondaryColor,gl_TexCoord,gl_FogFragCoord}) +0:? '__anon__5' (out block{invariant gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance, gl_ClipVertex 4-component vector of float gl_ClipVertex, flat 4-component vector of float gl_FrontColor, 4-component vector of float gl_BackColor, 4-component vector of float gl_FrontSecondaryColor, 4-component vector of float gl_BackSecondaryColor, unsized array of 4-component vector of float gl_TexCoord, float gl_FogFragCoord}) +0:? '__anon__5' (out block{invariant gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance, gl_ClipVertex 4-component vector of float gl_ClipVertex, flat 4-component vector of float gl_FrontColor, 4-component vector of float gl_BackColor, 4-component vector of float gl_FrontSecondaryColor, 4-component vector of float gl_BackSecondaryColor, unsized array of 4-component vector of float gl_TexCoord, float gl_FogFragCoord}) 0:? 'ColorInv' (smooth out 3-component vector of float) 0:? 'Color4' (invariant centroid smooth out 3-component vector of float) 0:? 'position' (smooth out 4-component vector of float) @@ -308,8 +308,8 @@ ERROR: node is still EOpNull! 0:? 'c' (in 4-component vector of float) 0:? 'd' (in 4-component vector of float) 0:? 'v' (smooth out 4-component vector of float) -0:? '__anon__6' (layout(row_major shared ) coherent uniform block{member1,member2}) -0:? '__anon__7' (layout(row_major shared ) uniform block{member1A,member2A}) +0:? '__anon__6' (layout(row_major shared ) coherent uniform block{layout(row_major shared ) readonly 4-component vector of float member1, layout(row_major shared ) 4-component vector of float member2}) +0:? '__anon__7' (layout(row_major shared ) uniform block{layout(row_major shared ) coherent readonly 4-component vector of float member1A, layout(row_major shared ) coherent 4-component vector of float member2A}) 0:? 'shv' (shared 4-component vector of float) 0:? 'img1' (uniform image2D) 0:? 'img2' (coherent uniform image2D) diff --git a/Test/baseResults/structAssignment.frag.out b/Test/baseResults/structAssignment.frag.out index 39d110b4f..4cf5d3e20 100644 --- a/Test/baseResults/structAssignment.frag.out +++ b/Test/baseResults/structAssignment.frag.out @@ -10,8 +10,8 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas 0:33 Condition 0:33 Compare Greater Than (bool) 0:33 i: direct index for structure (int) -0:33 s2_1: direct index for structure (structure{i,f,s1_1}) -0:33 'foo3' (uniform structure{s2_1,i,f,s1_1}) +0:33 s2_1: direct index for structure (structure{int i, float f, structure{int i, float f} s1_1}) +0:33 'foo3' (uniform structure{structure{int i, float f, structure{int i, float f} s1_1} s2_1, int i, float f, structure{int i, float f} s1_1}) 0:33 Constant: 0:33 0 (const int) 0:33 Constant: @@ -19,22 +19,22 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas 0:33 Constant: 0:33 0 (const int) 0:33 true case -0:34 move second child to first child (structure{i,f,s1_1}) -0:34 'locals2' (structure{i,f,s1_1}) -0:34 s2_1: direct index for structure (structure{i,f,s1_1}) -0:34 'foo3' (uniform structure{s2_1,i,f,s1_1}) +0:34 move second child to first child (structure{int i, float f, structure{int i, float f} s1_1}) +0:34 'locals2' (structure{int i, float f, structure{int i, float f} s1_1}) +0:34 s2_1: direct index for structure (structure{int i, float f, structure{int i, float f} s1_1}) +0:34 'foo3' (uniform structure{structure{int i, float f, structure{int i, float f} s1_1} s2_1, int i, float f, structure{int i, float f} s1_1}) 0:34 Constant: 0:34 0 (const int) 0:33 false case -0:36 move second child to first child (structure{i,f,s1_1}) -0:36 'locals2' (structure{i,f,s1_1}) -0:36 'foo2' (uniform structure{i,f,s1_1}) +0:36 move second child to first child (structure{int i, float f, structure{int i, float f} s1_1}) +0:36 'locals2' (structure{int i, float f, structure{int i, float f} s1_1}) +0:36 'foo2' (uniform structure{int i, float f, structure{int i, float f} s1_1}) 0:38 move second child to first child (4-component vector of float) 0:38 'gl_FragColor' (fragColor 4-component vector of float) 0:38 vector-scale (4-component vector of float) 0:38 f: direct index for structure (float) -0:38 s1_1: direct index for structure (structure{i,f}) -0:38 'locals2' (structure{i,f,s1_1}) +0:38 s1_1: direct index for structure (structure{int i, float f}) +0:38 'locals2' (structure{int i, float f, structure{int i, float f} s1_1}) 0:38 Constant: 0:38 2 (const int) 0:38 Constant: @@ -45,9 +45,9 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas 0:? Linker Objects 0:? 'sampler' (uniform sampler2D) 0:? 'coord' (smooth in 2-component vector of float) -0:? 'foo' (uniform structure{i,f}) -0:? 'foo2' (uniform structure{i,f,s1_1}) -0:? 'foo3' (uniform structure{s2_1,i,f,s1_1}) +0:? 'foo' (uniform structure{int i, float f}) +0:? 'foo2' (uniform structure{int i, float f, structure{int i, float f} s1_1}) +0:? 'foo3' (uniform structure{structure{int i, float f, structure{int i, float f} s1_1} s2_1, int i, float f, structure{int i, float f} s1_1}) Linked fragment stage: diff --git a/Test/baseResults/structDeref.frag.out b/Test/baseResults/structDeref.frag.out index 46b0e4145..c646d58b6 100644 --- a/Test/baseResults/structDeref.frag.out +++ b/Test/baseResults/structDeref.frag.out @@ -10,9 +10,9 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas 0:51 Condition 0:51 Compare Greater Than (bool) 0:51 i: direct index for structure (int) -0:51 direct index (structure{i,f,s1_1}) -0:51 s2_1: direct index for structure (12-element array of structure{i,f,s1_1}) -0:51 'foo3' (uniform structure{s2_1,i,f,s1_1}) +0:51 direct index (structure{int i, float f, structure{int i, float f, structure{int i} s0_1} s1_1}) +0:51 s2_1: direct index for structure (12-element array of structure{int i, float f, structure{int i, float f, structure{int i} s0_1} s1_1}) +0:51 'foo3' (uniform structure{12-element array of structure{int i, float f, structure{int i, float f, structure{int i} s0_1} s1_1} s2_1, int i, float f, structure{int i, float f, structure{int i} s0_1} s1_1}) 0:51 Constant: 0:51 0 (const int) 0:51 Constant: @@ -25,14 +25,14 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas 0:52 Sequence 0:52 move second child to first child (float) 0:52 f: direct index for structure (float) -0:52 'locals2' (structure{i,f,s1_1}) +0:52 'locals2' (structure{int i, float f, structure{int i, float f, structure{int i} s0_1} s1_1}) 0:52 Constant: 0:52 1 (const int) 0:52 Constant: 0:52 1.000000 -0:53 move second child to first child (structure{i,f,s0_1}) -0:53 s1_1: direct index for structure (structure{i,f,s0_1}) -0:53 'locals2' (structure{i,f,s1_1}) +0:53 move second child to first child (structure{int i, float f, structure{int i} s0_1}) +0:53 s1_1: direct index for structure (structure{int i, float f, structure{int i} s0_1}) +0:53 'locals2' (structure{int i, float f, structure{int i, float f, structure{int i} s0_1} s1_1}) 0:53 Constant: 0:53 2 (const int) 0:53 Constant: @@ -48,44 +48,44 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas 0:54 0.000000 0:54 0.000000 0:54 0.000000 -0:55 move second child to first child (structure{i,f,s0_1}) -0:55 direct index (structure{i,f,s0_1}) -0:55 'locals1Array' (10-element array of structure{i,f,s0_1}) +0:55 move second child to first child (structure{int i, float f, structure{int i} s0_1}) +0:55 direct index (structure{int i, float f, structure{int i} s0_1}) +0:55 'locals1Array' (10-element array of structure{int i, float f, structure{int i} s0_1}) 0:55 Constant: 0:55 6 (const int) -0:55 'foo1' (uniform structure{i,f,s0_1}) -0:56 move second child to first child (structure{i}) -0:56 'locals0' (structure{i}) +0:55 'foo1' (uniform structure{int i, float f, structure{int i} s0_1}) +0:56 move second child to first child (structure{int i}) +0:56 'locals0' (structure{int i}) 0:56 Constant: 0:56 0 (const int) -0:57 move second child to first child (structure{s0_0}) -0:57 'locals00' (structure{s0_0}) +0:57 move second child to first child (structure{structure{int i} s0_0}) +0:57 'locals00' (structure{structure{int i} s0_0}) 0:57 Constant: 0:57 0 (const int) 0:51 false case 0:59 Sequence 0:59 move second child to first child (float) 0:59 f: direct index for structure (float) -0:59 'locals2' (structure{i,f,s1_1}) +0:59 'locals2' (structure{int i, float f, structure{int i, float f, structure{int i} s0_1} s1_1}) 0:59 Constant: 0:59 1 (const int) 0:59 direct index (float) 0:59 'coord' (smooth in 2-component vector of float) 0:59 Constant: 0:59 0 (const int) -0:60 move second child to first child (structure{i,f,s0_1}) -0:60 s1_1: direct index for structure (structure{i,f,s0_1}) -0:60 'locals2' (structure{i,f,s1_1}) +0:60 move second child to first child (structure{int i, float f, structure{int i} s0_1}) +0:60 s1_1: direct index for structure (structure{int i, float f, structure{int i} s0_1}) +0:60 'locals2' (structure{int i, float f, structure{int i, float f, structure{int i} s0_1} s1_1}) 0:60 Constant: 0:60 2 (const int) -0:60 Construct structure (structure{i,f,s0_1}) +0:60 Construct structure (structure{int i, float f, structure{int i} s0_1}) 0:60 Constant: 0:60 1 (const int) 0:60 direct index (float) 0:60 'coord' (smooth in 2-component vector of float) 0:60 Constant: 0:60 1 (const int) -0:60 'foo0' (uniform structure{i}) +0:60 'foo0' (uniform structure{int i}) 0:61 move second child to first child (6-element array of float) 0:61 'fArray' (6-element array of float) 0:61 Constant: @@ -95,38 +95,38 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas 0:61 3.000000 0:61 4.000000 0:61 5.000000 -0:62 move second child to first child (structure{i,f,s0_1}) -0:62 direct index (structure{i,f,s0_1}) -0:62 'locals1Array' (10-element array of structure{i,f,s0_1}) +0:62 move second child to first child (structure{int i, float f, structure{int i} s0_1}) +0:62 direct index (structure{int i, float f, structure{int i} s0_1}) +0:62 'locals1Array' (10-element array of structure{int i, float f, structure{int i} s0_1}) 0:62 Constant: 0:62 6 (const int) -0:62 s1_1: direct index for structure (structure{i,f,s0_1}) -0:62 'locals2' (structure{i,f,s1_1}) +0:62 s1_1: direct index for structure (structure{int i, float f, structure{int i} s0_1}) +0:62 'locals2' (structure{int i, float f, structure{int i, float f, structure{int i} s0_1} s1_1}) 0:62 Constant: 0:62 2 (const int) -0:63 move second child to first child (structure{i}) -0:63 'locals0' (structure{i}) -0:63 s0_1: direct index for structure (structure{i}) -0:63 'foo1' (uniform structure{i,f,s0_1}) +0:63 move second child to first child (structure{int i}) +0:63 'locals0' (structure{int i}) +0:63 s0_1: direct index for structure (structure{int i}) +0:63 'foo1' (uniform structure{int i, float f, structure{int i} s0_1}) 0:63 Constant: 0:63 2 (const int) -0:64 move second child to first child (structure{s0_0}) -0:64 'locals00' (structure{s0_0}) -0:64 'foo00' (uniform structure{s0_0}) +0:64 move second child to first child (structure{structure{int i} s0_0}) +0:64 'locals00' (structure{structure{int i} s0_0}) +0:64 'foo00' (uniform structure{structure{int i} s0_0}) 0:67 Test condition and select (void) 0:67 Condition 0:67 Compare Greater Than (bool) 0:67 i: direct index for structure (int) -0:67 'locals0' (structure{i}) +0:67 'locals0' (structure{int i}) 0:67 Constant: 0:67 0 (const int) 0:67 Constant: 0:67 5 (const int) 0:67 true case -0:68 move second child to first child (structure{i}) -0:68 'locals0' (structure{i}) -0:68 s0_0: direct index for structure (structure{i}) -0:68 'locals00' (structure{s0_0}) +0:68 move second child to first child (structure{int i}) +0:68 'locals0' (structure{int i}) +0:68 s0_0: direct index for structure (structure{int i}) +0:68 'locals00' (structure{structure{int i} s0_0}) 0:68 Constant: 0:68 0 (const int) 0:70 move second child to first child (4-component vector of float) @@ -137,12 +137,12 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas 0:70 add (float) 0:70 Convert int to float (float) 0:70 i: direct index for structure (int) -0:70 'locals0' (structure{i}) +0:70 'locals0' (structure{int i}) 0:70 Constant: 0:70 0 (const int) 0:70 f: direct index for structure (float) -0:70 direct index (structure{i,f,s0_1}) -0:70 'locals1Array' (10-element array of structure{i,f,s0_1}) +0:70 direct index (structure{int i, float f, structure{int i} s0_1}) +0:70 'locals1Array' (10-element array of structure{int i, float f, structure{int i} s0_1}) 0:70 Constant: 0:70 6 (const int) 0:70 Constant: @@ -152,8 +152,8 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas 0:70 Constant: 0:70 3 (const int) 0:70 f: direct index for structure (float) -0:70 s1_1: direct index for structure (structure{i,f,s0_1}) -0:70 'locals2' (structure{i,f,s1_1}) +0:70 s1_1: direct index for structure (structure{int i, float f, structure{int i} s0_1}) +0:70 'locals2' (structure{int i, float f, structure{int i, float f, structure{int i} s0_1} s1_1}) 0:70 Constant: 0:70 2 (const int) 0:70 Constant: @@ -164,11 +164,11 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas 0:? Linker Objects 0:? 'sampler' (uniform sampler2D) 0:? 'coord' (smooth in 2-component vector of float) -0:? 'foo0' (uniform structure{i}) -0:? 'foo1' (uniform structure{i,f,s0_1}) -0:? 'foo2' (uniform structure{i,f,s1_1}) -0:? 'foo3' (uniform structure{s2_1,i,f,s1_1}) -0:? 'foo00' (uniform structure{s0_0}) +0:? 'foo0' (uniform structure{int i}) +0:? 'foo1' (uniform structure{int i, float f, structure{int i} s0_1}) +0:? 'foo2' (uniform structure{int i, float f, structure{int i, float f, structure{int i} s0_1} s1_1}) +0:? 'foo3' (uniform structure{12-element array of structure{int i, float f, structure{int i, float f, structure{int i} s0_1} s1_1} s2_1, int i, float f, structure{int i, float f, structure{int i} s0_1} s1_1}) +0:? 'foo00' (uniform structure{structure{int i} s0_0}) Linked fragment stage: diff --git a/Test/baseResults/structure.frag.out b/Test/baseResults/structure.frag.out index 5e1936f7f..735e0e0bb 100644 --- a/Test/baseResults/structure.frag.out +++ b/Test/baseResults/structure.frag.out @@ -16,8 +16,8 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas 0:24 Compare Greater Than (bool) 0:24 direct index (int) 0:24 i: direct index for structure (5-element array of int) -0:24 direct index (structure{i,f,s1_1}) -0:24 'foo2' (uniform 5-element array of structure{i,f,s1_1}) +0:24 direct index (structure{5-element array of int i, float f, 7-element array of structure{int i, 4-element array of float f, 5-element array of 4-component vector of float color} s1_1}) +0:24 'foo2' (uniform 5-element array of structure{5-element array of int i, float f, 7-element array of structure{int i, 4-element array of float f, 5-element array of 4-component vector of float color} s1_1}) 0:24 Constant: 0:24 3 (const int) 0:24 Constant: @@ -32,10 +32,10 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas 0:25 direct index (float) 0:25 direct index (4-component vector of float) 0:25 color: direct index for structure (5-element array of 4-component vector of float) -0:25 direct index (structure{i,f,color}) -0:25 s1_1: direct index for structure (7-element array of structure{i,f,color}) -0:25 direct index (structure{i,f,s1_1}) -0:25 'foo2' (uniform 5-element array of structure{i,f,s1_1}) +0:25 direct index (structure{int i, 4-element array of float f, 5-element array of 4-component vector of float color}) +0:25 s1_1: direct index for structure (7-element array of structure{int i, 4-element array of float f, 5-element array of 4-component vector of float color}) +0:25 direct index (structure{5-element array of int i, float f, 7-element array of structure{int i, 4-element array of float f, 5-element array of 4-component vector of float color} s1_1}) +0:25 'foo2' (uniform 5-element array of structure{5-element array of int i, float f, 7-element array of structure{int i, 4-element array of float f, 5-element array of 4-component vector of float color} s1_1}) 0:25 Constant: 0:25 3 (const int) 0:25 Constant: @@ -53,10 +53,10 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas 0:27 'scale' (float) 0:27 direct index (float) 0:27 f: direct index for structure (4-element array of float) -0:27 direct index (structure{i,f,color}) -0:27 s1_1: direct index for structure (7-element array of structure{i,f,color}) -0:27 direct index (structure{i,f,s1_1}) -0:27 'foo2' (uniform 5-element array of structure{i,f,s1_1}) +0:27 direct index (structure{int i, 4-element array of float f, 5-element array of 4-component vector of float color}) +0:27 s1_1: direct index for structure (7-element array of structure{int i, 4-element array of float f, 5-element array of 4-component vector of float color}) +0:27 direct index (structure{5-element array of int i, float f, 7-element array of structure{int i, 4-element array of float f, 5-element array of 4-component vector of float color} s1_1}) +0:27 'foo2' (uniform 5-element array of structure{5-element array of int i, float f, 7-element array of structure{int i, 4-element array of float f, 5-element array of 4-component vector of float color} s1_1}) 0:27 Constant: 0:27 3 (const int) 0:27 Constant: @@ -77,8 +77,8 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas 0:? Linker Objects 0:? 'sampler' (uniform sampler2D) 0:? 'coord' (smooth in 2-component vector of float) -0:? 'foo' (uniform structure{i,f,color}) -0:? 'foo2' (uniform 5-element array of structure{i,f,s1_1}) +0:? 'foo' (uniform structure{int i, 4-element array of float f, 5-element array of 4-component vector of float color}) +0:? 'foo2' (uniform 5-element array of structure{5-element array of int i, float f, 7-element array of structure{int i, 4-element array of float f, 5-element array of 4-component vector of float color} s1_1}) Linked fragment stage: diff --git a/Test/baseResults/variableArrayIndex.frag.out b/Test/baseResults/variableArrayIndex.frag.out index cbe8d05f8..565373edb 100644 --- a/Test/baseResults/variableArrayIndex.frag.out +++ b/Test/baseResults/variableArrayIndex.frag.out @@ -14,9 +14,9 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas 0:34 Condition 0:34 Compare Greater Than (bool) 0:34 i: direct index for structure (int) -0:34 direct index (structure{i,f,s1_1}) -0:34 s2_1: direct index for structure (3-element array of structure{i,f,s1_1}) -0:34 'foo3' (uniform structure{s2_1,i,f,s1_1}) +0:34 direct index (structure{int i, float f, structure{int i, float f} s1_1}) +0:34 s2_1: direct index for structure (3-element array of structure{int i, float f, structure{int i, float f} s1_1}) +0:34 'foo3' (uniform structure{3-element array of structure{int i, float f, structure{int i, float f} s1_1} s2_1, int i, float f, structure{int i, float f} s1_1}) 0:34 Constant: 0:34 0 (const int) 0:34 Constant: @@ -29,19 +29,19 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas 0:35 move second child to first child (float) 0:35 'scale' (float) 0:35 f: direct index for structure (float) -0:35 s1_1: direct index for structure (structure{i,f}) -0:35 indirect index (structure{i,f,s1_1}) -0:35 'foo2' (uniform 5-element array of structure{i,f,s1_1}) +0:35 s1_1: direct index for structure (structure{int i, float f}) +0:35 indirect index (structure{int i, float f, structure{int i, float f} s1_1}) +0:35 'foo2' (uniform 5-element array of structure{int i, float f, structure{int i, float f} s1_1}) 0:35 add (int) 0:35 add (int) 0:35 i: direct index for structure (int) -0:35 indirect index (structure{i,f,s1_1}) -0:35 s2_1: direct index for structure (3-element array of structure{i,f,s1_1}) -0:35 'foo3' (uniform structure{s2_1,i,f,s1_1}) +0:35 indirect index (structure{int i, float f, structure{int i, float f} s1_1}) +0:35 s2_1: direct index for structure (3-element array of structure{int i, float f, structure{int i, float f} s1_1}) +0:35 'foo3' (uniform structure{3-element array of structure{int i, float f, structure{int i, float f} s1_1} s2_1, int i, float f, structure{int i, float f} s1_1}) 0:35 Constant: 0:35 0 (const int) 0:35 i: direct index for structure (int) -0:35 'foo' (uniform structure{i,f}) +0:35 'foo' (uniform structure{int i, float f}) 0:35 Constant: 0:35 0 (const int) 0:35 Constant: @@ -58,10 +58,10 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas 0:37 move second child to first child (float) 0:37 'scale' (float) 0:37 f: direct index for structure (float) -0:37 s1_1: direct index for structure (structure{i,f}) -0:37 direct index (structure{i,f,s1_1}) -0:37 s2_1: direct index for structure (3-element array of structure{i,f,s1_1}) -0:37 'foo3' (uniform structure{s2_1,i,f,s1_1}) +0:37 s1_1: direct index for structure (structure{int i, float f}) +0:37 direct index (structure{int i, float f, structure{int i, float f} s1_1}) +0:37 s2_1: direct index for structure (3-element array of structure{int i, float f, structure{int i, float f} s1_1}) +0:37 'foo3' (uniform structure{3-element array of structure{int i, float f, structure{int i, float f} s1_1} s2_1, int i, float f, structure{int i, float f} s1_1}) 0:37 Constant: 0:37 0 (const int) 0:37 Constant: @@ -93,21 +93,21 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas 0:46 indirect index (2-component vector of float) 0:46 'constructed' (3-element array of 2-component vector of float) 0:46 i: direct index for structure (int) -0:46 'foo' (uniform structure{i,f}) +0:46 'foo' (uniform structure{int i, float f}) 0:46 Constant: 0:46 0 (const int) 0:46 indirect index (2-component vector of float) 0:46 'constructed' (3-element array of 2-component vector of float) 0:46 i: direct index for structure (int) -0:46 'foo' (uniform structure{i,f}) +0:46 'foo' (uniform structure{int i, float f}) 0:46 Constant: 0:46 0 (const int) 0:? Linker Objects 0:? 'sampler' (uniform sampler2D) 0:? 'coord' (smooth in 2-component vector of float) -0:? 'foo' (uniform structure{i,f}) -0:? 'foo2' (uniform 5-element array of structure{i,f,s1_1}) -0:? 'foo3' (uniform structure{s2_1,i,f,s1_1}) +0:? 'foo' (uniform structure{int i, float f}) +0:? 'foo2' (uniform 5-element array of structure{int i, float f, structure{int i, float f} s1_1}) +0:? 'foo3' (uniform structure{3-element array of structure{int i, float f, structure{int i, float f} s1_1} s2_1, int i, float f, structure{int i, float f} s1_1}) 0:? 'Count' (uniform int) diff --git a/Test/baseResults/versionsClean.vert.out b/Test/baseResults/versionsClean.vert.out index b996b2d6e..bd1e8a0ff 100644 --- a/Test/baseResults/versionsClean.vert.out +++ b/Test/baseResults/versionsClean.vert.out @@ -7,7 +7,7 @@ Warning, version 420 is not yet complete; some version-specific features are pre 0:42 Sequence 0:42 move second child to first child (4-component vector of float) 0:42 gl_Position: direct index for structure (gl_Position 4-component vector of float) -0:42 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance,gl_ClipVertex,gl_FrontColor,gl_BackColor,gl_FrontSecondaryColor,gl_BackSecondaryColor,gl_TexCoord,gl_FogFragCoord}) +0:42 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance, gl_ClipVertex 4-component vector of float gl_ClipVertex, 4-component vector of float gl_FrontColor, 4-component vector of float gl_BackColor, 4-component vector of float gl_FrontSecondaryColor, 4-component vector of float gl_BackSecondaryColor, unsized array of 4-component vector of float gl_TexCoord, float gl_FogFragCoord}) 0:42 Constant: 0:42 0 (const uint) 0:42 Construct vec4 (4-component vector of float) diff --git a/Test/baseResults/versionsErrors.vert.out b/Test/baseResults/versionsErrors.vert.out index f3f51f5d1..d57570118 100644 --- a/Test/baseResults/versionsErrors.vert.out +++ b/Test/baseResults/versionsErrors.vert.out @@ -12,7 +12,7 @@ ERROR: node is still EOpNull! 0:44 Sequence 0:44 move second child to first child (4-component vector of float) 0:44 gl_Position: direct index for structure (gl_Position 4-component vector of float) -0:44 '__anon__1' (out block{gl_Position,gl_PointSize,gl_ClipDistance,gl_ClipVertex,gl_FrontColor,gl_BackColor,gl_FrontSecondaryColor,gl_BackSecondaryColor,gl_TexCoord,gl_FogFragCoord}) +0:44 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, unsized array of float gl_ClipDistance, gl_ClipVertex 4-component vector of float gl_ClipVertex, 4-component vector of float gl_FrontColor, 4-component vector of float gl_BackColor, 4-component vector of float gl_FrontSecondaryColor, 4-component vector of float gl_BackSecondaryColor, unsized array of 4-component vector of float gl_TexCoord, float gl_FogFragCoord}) 0:44 Constant: 0:44 0 (const uint) 0:44 Construct vec4 (4-component vector of float) diff --git a/glslang/Include/Types.h b/glslang/Include/Types.h index 83e5105b8..67ebfd58d 100644 --- a/glslang/Include/Types.h +++ b/glslang/Include/Types.h @@ -353,7 +353,7 @@ public: { layoutMatrix = ElmNone; layoutPacking = ElpNone; - layoutSlotLocation = layoutLocationEnd; + layoutLocation = layoutLocationEnd; layoutBinding = layoutBindingEnd; layoutStream = layoutStreamEnd; } @@ -367,7 +367,7 @@ public: } TLayoutMatrix layoutMatrix : 3; TLayoutPacking layoutPacking : 4; - unsigned int layoutSlotLocation : 7; // ins/outs should have small numbers, buffer offsets could be large + unsigned int layoutLocation : 7; // ins/outs should have small numbers, buffer offsets could be large static const unsigned int layoutLocationEnd = 0x3F; unsigned int layoutBinding : 8; static const unsigned int layoutBindingEnd = 0xFF; @@ -375,7 +375,7 @@ public: static const unsigned int layoutStreamEnd = 0xFF; bool hasLocation() const { - return layoutSlotLocation != layoutLocationEnd; + return layoutLocation != layoutLocationEnd; } bool hasBinding() const { @@ -825,7 +825,7 @@ public: if (qualifier.hasLayout()) { p += snprintf(p, end - p, "layout("); if (qualifier.hasLocation()) - p += snprintf(p, end - p, "location=%d ", qualifier.layoutSlotLocation); + p += snprintf(p, end - p, "location=%d ", qualifier.layoutLocation); if (qualifier.hasBinding()) p += snprintf(p, end - p, "binding=%d ", qualifier.layoutBinding); if (qualifier.hasStream()) @@ -887,9 +887,11 @@ public: s.append("{"); for (size_t i = 0; i < structure->size(); ++i) { if ((*structure)[i].type->getBasicType() != EbtVoid) { + s.append((*structure)[i].type->getCompleteString()); + s.append(" "); s.append((*structure)[i].type->getFieldName()); if (i < structure->size() - 1) - s.append(","); + s.append(", "); } } s.append("}"); diff --git a/glslang/Include/intermediate.h b/glslang/Include/intermediate.h index 6b8a7cda7..6b0570a29 100644 --- a/glslang/Include/intermediate.h +++ b/glslang/Include/intermediate.h @@ -343,17 +343,29 @@ public: virtual glslang::TSourceLoc getLoc() const { return loc; } virtual void setLoc(glslang::TSourceLoc l) { loc = l; } virtual void traverse(glslang::TIntermTraverser*) = 0; - virtual glslang::TIntermTyped* getAsTyped() { return 0; } - virtual glslang::TIntermOperator* getAsOperator() { return 0; } - virtual glslang::TIntermConstantUnion* getAsConstantUnion() { return 0; } - virtual glslang::TIntermAggregate* getAsAggregate() { return 0; } - virtual glslang::TIntermUnary* getAsUnaryNode() { return 0; } - virtual glslang::TIntermBinary* getAsBinaryNode() { return 0; } - virtual glslang::TIntermSelection* getAsSelectionNode() { return 0; } - virtual glslang::TIntermSwitch* getAsSwitchNode() { return 0; } - virtual glslang::TIntermMethod* getAsMethodNode() { return 0; } - virtual glslang::TIntermSymbol* getAsSymbolNode() { return 0; } - virtual glslang::TIntermBranch* getAsBranchNode() { return 0; } + virtual glslang::TIntermTyped* getAsTyped() { return 0; } + virtual glslang::TIntermOperator* getAsOperator() { return 0; } + virtual glslang::TIntermConstantUnion* getAsConstantUnion() { return 0; } + virtual glslang::TIntermAggregate* getAsAggregate() { return 0; } + virtual glslang::TIntermUnary* getAsUnaryNode() { return 0; } + virtual glslang::TIntermBinary* getAsBinaryNode() { return 0; } + virtual glslang::TIntermSelection* getAsSelectionNode() { return 0; } + virtual glslang::TIntermSwitch* getAsSwitchNode() { return 0; } + virtual glslang::TIntermMethod* getAsMethodNode() { return 0; } + virtual glslang::TIntermSymbol* getAsSymbolNode() { return 0; } + virtual glslang::TIntermBranch* getAsBranchNode() { return 0; } + + virtual const glslang::TIntermTyped* getAsTyped() const { return 0; } + virtual const glslang::TIntermOperator* getAsOperator() const { return 0; } + virtual const glslang::TIntermConstantUnion* getAsConstantUnion() const { return 0; } + virtual const glslang::TIntermAggregate* getAsAggregate() const { return 0; } + virtual const glslang::TIntermUnary* getAsUnaryNode() const { return 0; } + virtual const glslang::TIntermBinary* getAsBinaryNode() const { return 0; } + virtual const glslang::TIntermSelection* getAsSelectionNode() const { return 0; } + virtual const glslang::TIntermSwitch* getAsSwitchNode() const { return 0; } + virtual const glslang::TIntermMethod* getAsMethodNode() const { return 0; } + virtual const glslang::TIntermSymbol* getAsSymbolNode() const { return 0; } + virtual const glslang::TIntermBranch* getAsBranchNode() const { return 0; } virtual ~TIntermNode() { } protected: glslang::TSourceLoc loc; @@ -375,7 +387,8 @@ struct TIntermNodePair { class TIntermTyped : public TIntermNode { public: TIntermTyped(const TType& t) { type.shallowCopy(t); } - virtual TIntermTyped* getAsTyped() { return this; } + virtual TIntermTyped* getAsTyped() { return this; } + virtual const TIntermTyped* getAsTyped() const { return this; } virtual void setType(const TType& t) { type.shallowCopy(t); } virtual const TType& getType() const { return type; } virtual TType& getWritableType() { return type; } @@ -428,7 +441,8 @@ public: TIntermBranch(TOperator op, TIntermTyped* e) : flowOp(op), expression(e) { } - virtual TIntermBranch* getAsBranchNode() { return this; } + virtual TIntermBranch* getAsBranchNode() { return this; } + virtual const TIntermBranch* getAsBranchNode() const { return this; } virtual void traverse(TIntermTraverser*); TOperator getFlowOp() { return flowOp; } TIntermTyped* getExpression() { return expression; } @@ -445,7 +459,8 @@ protected: class TIntermMethod : public TIntermTyped { public: TIntermMethod(TIntermTyped* o, const TType& t, const TString& m) : TIntermTyped(t), object(o), method(m) { } - virtual TIntermMethod* getAsMethodNode() { return this; } + virtual TIntermMethod* getAsMethodNode() { return this; } + virtual const TIntermMethod* getAsMethodNode() const { return this; } virtual const TString& getMethodName() const { return method; } virtual TIntermTyped* getObject() const { return object; } virtual void traverse(TIntermTraverser*); @@ -467,7 +482,8 @@ public: virtual int getId() const { return id; } virtual const TString& getName() const { return name; } virtual void traverse(TIntermTraverser*); - virtual TIntermSymbol* getAsSymbolNode() { return this; } + virtual TIntermSymbol* getAsSymbolNode() { return this; } + virtual const TIntermSymbol* getAsSymbolNode() const { return this; } void setConstArray(const TConstUnionArray& c) { unionArray = c; } const TConstUnionArray& getConstArray() const { return unionArray; } protected: @@ -480,10 +496,11 @@ class TIntermConstantUnion : public TIntermTyped { public: TIntermConstantUnion(const TConstUnionArray& ua, const TType& t) : TIntermTyped(t), unionArray(ua) { } const TConstUnionArray& getConstArray() const { return unionArray; } - virtual TIntermConstantUnion* getAsConstantUnion() { return this; } + virtual TIntermConstantUnion* getAsConstantUnion() { return this; } + virtual const TIntermConstantUnion* getAsConstantUnion() const { return this; } virtual void traverse(TIntermTraverser*); - virtual TIntermTyped* fold(TOperator, TIntermTyped*); - virtual TIntermTyped* fold(TOperator, const TType&); + virtual TIntermTyped* fold(TOperator, const TIntermTyped*) const; + virtual TIntermTyped* fold(TOperator, const TType&) const; protected: const TConstUnionArray unionArray; }; @@ -493,7 +510,8 @@ protected: // class TIntermOperator : public TIntermTyped { public: - TIntermOperator* getAsOperator() { return this; } + virtual TIntermOperator* getAsOperator() { return this; } + virtual const TIntermOperator* getAsOperator() const { return this; } TOperator getOp() { return op; } bool modifiesState() const; bool isConstructor() const; @@ -515,7 +533,8 @@ public: virtual void setRight(TIntermTyped* n) { right = n; } virtual TIntermTyped* getLeft() const { return left; } virtual TIntermTyped* getRight() const { return right; } - virtual TIntermBinary* getAsBinaryNode() { return this; } + virtual TIntermBinary* getAsBinaryNode() { return this; } + virtual const TIntermBinary* getAsBinaryNode() const { return this; } virtual bool promote(); virtual void updatePrecision(); protected: @@ -533,7 +552,8 @@ public: virtual void traverse(TIntermTraverser*); virtual void setOperand(TIntermTyped* o) { operand = o; } virtual TIntermTyped* getOperand() { return operand; } - virtual TIntermUnary* getAsUnaryNode() { return this; } + virtual TIntermUnary* getAsUnaryNode() { return this; } + virtual const TIntermUnary* getAsUnaryNode() const { return this; } virtual bool promote(); virtual void updatePrecision(); protected: @@ -550,7 +570,8 @@ public: TIntermAggregate() : TIntermOperator(EOpNull), userDefined(false), pragmaTable(0) { } TIntermAggregate(TOperator o) : TIntermOperator(o), pragmaTable(0) { } ~TIntermAggregate() { delete pragmaTable; } - virtual TIntermAggregate* getAsAggregate() { return this; } + virtual TIntermAggregate* getAsAggregate() { return this; } + virtual const TIntermAggregate* getAsAggregate() const { return this; } virtual void setOperator(TOperator o) { op = o; } virtual TIntermSequence& getSequence() { return sequence; } virtual const TIntermSequence& getSequence() const { return sequence; } @@ -592,7 +613,8 @@ public: virtual TIntermTyped* getCondition() const { return condition; } virtual TIntermNode* getTrueBlock() const { return trueBlock; } virtual TIntermNode* getFalseBlock() const { return falseBlock; } - virtual TIntermSelection* getAsSelectionNode() { return this; } + virtual TIntermSelection* getAsSelectionNode() { return this; } + virtual const TIntermSelection* getAsSelectionNode() const { return this; } protected: TIntermTyped* condition; TIntermNode* trueBlock; @@ -611,7 +633,8 @@ public: virtual void traverse(TIntermTraverser*); virtual TIntermNode* getCondition() const { return condition; } virtual TIntermAggregate* getBody() const { return body; } - virtual TIntermSwitch* getAsSwitchNode() { return this; } + virtual TIntermSwitch* getAsSwitchNode() { return this; } + virtual const TIntermSwitch* getAsSwitchNode() const { return this; } protected: TIntermTyped* condition; TIntermAggregate* body; diff --git a/glslang/Include/revision.h b/glslang/Include/revision.h index 15a63d399..98e45edf8 100644 --- a/glslang/Include/revision.h +++ b/glslang/Include/revision.h @@ -9,5 +9,5 @@ // source have to figure out how to create revision.h just to get a build // going. However, if it is not updated, it can be a version behind. -#define GLSLANG_REVISION "24628" -#define GLSLANG_DATE "2013/12/30 13:44:49" +#define GLSLANG_REVISION "24635" +#define GLSLANG_DATE "2013/12/31 16:02:24" diff --git a/glslang/MachineIndependent/Constant.cpp b/glslang/MachineIndependent/Constant.cpp index 4d0b68590..7e045b6b1 100644 --- a/glslang/MachineIndependent/Constant.cpp +++ b/glslang/MachineIndependent/Constant.cpp @@ -83,7 +83,9 @@ namespace glslang { // // Do folding between a pair of nodes // -TIntermTyped* TIntermConstantUnion::fold(TOperator op, TIntermTyped* constantNode) +// Returns a new node representing the result. +// +TIntermTyped* TIntermConstantUnion::fold(TOperator op, const TIntermTyped* constantNode) const { // For most cases, the return type matches the argument type, so set that // up and just code to exceptions below. @@ -94,7 +96,7 @@ TIntermTyped* TIntermConstantUnion::fold(TOperator op, TIntermTyped* constantNod // A pair of nodes is to be folded together // - TIntermConstantUnion *node = constantNode->getAsConstantUnion(); + const TIntermConstantUnion *node = constantNode->getAsConstantUnion(); TConstUnionArray unionArray = getConstArray(); TConstUnionArray rightUnionArray = node->getConstArray(); @@ -297,7 +299,9 @@ TIntermTyped* TIntermConstantUnion::fold(TOperator op, TIntermTyped* constantNod // // Do single unary node folding // -TIntermTyped* TIntermConstantUnion::fold(TOperator op, const TType& returnType) +// Returns a new node representing the result. +// +TIntermTyped* TIntermConstantUnion::fold(TOperator op, const TType& returnType) const { // First, size the result, which is mostly the same as the argument's size, // but not always, and classify what is componentwise. diff --git a/glslang/MachineIndependent/ParseHelper.cpp b/glslang/MachineIndependent/ParseHelper.cpp index 52d898c09..560f898ab 100644 --- a/glslang/MachineIndependent/ParseHelper.cpp +++ b/glslang/MachineIndependent/ParseHelper.cpp @@ -1455,7 +1455,7 @@ void TParseContext::constantValueCheck(TIntermTyped* node, const char* token) // Both test, and if necessary spit out an error, to see if the node is really // an integer. // -void TParseContext::integerCheck(TIntermTyped* node, const char* token) +void TParseContext::integerCheck(const TIntermTyped* node, const char* token) { if ((node->getBasicType() == EbtInt || node->getBasicType() == EbtUint) && node->isScalar()) return; @@ -2820,7 +2820,7 @@ void TParseContext::setLayoutQualifier(TSourceLoc loc, TPublicType& publicType, if ((unsigned int)value >= TQualifier::layoutLocationEnd) error(loc, "location is too large", id.c_str(), ""); else - publicType.qualifier.layoutSlotLocation = value; + publicType.qualifier.layoutLocation = value; return; } if (id == "binding") { @@ -2882,12 +2882,11 @@ void TParseContext::mergeObjectLayoutQualifiers(TSourceLoc loc, TQualifier& dst, { if (src.layoutMatrix != ElmNone) dst.layoutMatrix = src.layoutMatrix; - if (src.layoutPacking != ElpNone) dst.layoutPacking = src.layoutPacking; if (src.hasLocation()) - dst.layoutSlotLocation = src.layoutSlotLocation; + dst.layoutLocation = src.layoutLocation; if (src.hasBinding()) dst.layoutBinding = src.layoutBinding; @@ -2910,17 +2909,10 @@ void TParseContext::layoutTypeCheck(TSourceLoc loc, const TSymbol& symbol) if (qualifier.hasLocation()) { switch (qualifier.storage) { case EvqVaryingIn: - { - if (type.getBasicType() == EbtBlock) - profileRequires(loc, ECoreProfile | ECompatibilityProfile, 440, 0 /* TODO ARB_enhanced_layouts*/, "location qualifier on input block"); - break; - } case EvqVaryingOut: - { if (type.getBasicType() == EbtBlock) - profileRequires(loc, ECoreProfile | ECompatibilityProfile, 440, 0 /* TODO ARB_enhanced_layouts*/, "location qualifier on output block"); + profileRequires(loc, ECoreProfile | ECompatibilityProfile, 440, 0 /* TODO ARB_enhanced_layouts*/, "location qualifier on in/out block"); break; - } case EvqUniform: case EvqBuffer: { diff --git a/glslang/MachineIndependent/ParseHelper.h b/glslang/MachineIndependent/ParseHelper.h index 5978251ef..371ef8552 100644 --- a/glslang/MachineIndependent/ParseHelper.h +++ b/glslang/MachineIndependent/ParseHelper.h @@ -108,7 +108,7 @@ public: void variableCheck(TIntermTyped*& nodePtr); bool lValueErrorCheck(TSourceLoc, const char* op, TIntermTyped*); void constantValueCheck(TIntermTyped* node, const char* token); - void integerCheck(TIntermTyped* node, const char* token); + void integerCheck(const TIntermTyped* node, const char* token); void globalCheck(TSourceLoc, const char* token); bool constructorError(TSourceLoc, TIntermNode*, TFunction&, TOperator, TType&); void arraySizeCheck(TSourceLoc, TIntermTyped* expr, int& size); diff --git a/glslang/MachineIndependent/Versions.cpp b/glslang/MachineIndependent/Versions.cpp index f42c595c8..6fc97f744 100644 --- a/glslang/MachineIndependent/Versions.cpp +++ b/glslang/MachineIndependent/Versions.cpp @@ -183,7 +183,7 @@ const char* TParseContext::getPreamble() "#define GL_ARB_shading_language_420pack 1\n" "#define GL_ARB_texture_gather 1\n" "#define GL_ARB_gpu_shader5 1\n" - "#define GL_ARB_separate_shader_objects 1\n"; + "#define GL_ARB_separate_shader_objects 1\n" "#define GL_ARB_tessellation_shader 1\n"; } } diff --git a/glslang/MachineIndependent/linkValidate.cpp b/glslang/MachineIndependent/linkValidate.cpp index a7b4298ab..e62f84f33 100644 --- a/glslang/MachineIndependent/linkValidate.cpp +++ b/glslang/MachineIndependent/linkValidate.cpp @@ -253,10 +253,10 @@ void TIntermediate::mergeErrorCheck(TInfoSink& infoSink, const TIntermSymbol& sy } // Layouts... - if (symbol.getQualifier().layoutMatrix != unitSymbol.getQualifier().layoutMatrix || - symbol.getQualifier().layoutPacking != unitSymbol.getQualifier().layoutPacking || - symbol.getQualifier().layoutSlotLocation != unitSymbol.getQualifier().layoutSlotLocation || - symbol.getQualifier().layoutBinding != unitSymbol.getQualifier().layoutBinding) { + if (symbol.getQualifier().layoutMatrix != unitSymbol.getQualifier().layoutMatrix || + symbol.getQualifier().layoutPacking != unitSymbol.getQualifier().layoutPacking || + symbol.getQualifier().layoutLocation != unitSymbol.getQualifier().layoutLocation || + symbol.getQualifier().layoutBinding != unitSymbol.getQualifier().layoutBinding) { error(infoSink, "Layout qualification must match:"); writeTypeComparison = true; } @@ -510,7 +510,7 @@ int TIntermediate::addUsedLocation(const TQualifier& qualifier, const TType& typ size = computeTypeLocationSize(type); } - TRange range = { qualifier.layoutSlotLocation, qualifier.layoutSlotLocation + size - 1 }; + TRange range = { qualifier.layoutLocation, qualifier.layoutLocation + size - 1 }; // check for collisions, except for vertex inputs on desktop if (! (profile != EEsProfile && language == EShLangVertex && qualifier.isPipeInput())) { -- GitLab