0:20 move second child to first child (4-component vector of float)\r
0:20 'p' (4-component vector of float)\r
0:20 gl_Position: direct index for structure (in 4-component vector of float)\r
-0:20 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:20 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:20 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:20 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:20 Constant:\r
0:20 1 (const int)\r
0:20 Constant:\r
0:21 move second child to first child (float)\r
0:21 'ps' (float)\r
0:21 gl_PointSize: direct index for structure (in float)\r
-0:21 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:21 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:21 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:21 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:21 Constant:\r
0:21 1 (const int)\r
0:21 Constant:\r
0:22 move second child to first child (float)\r
0:22 'cd' (float)\r
0:22 direct index (float)\r
-0:22 gl_ClipDistance: direct index for structure (in unsized array of float)\r
-0:22 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:22 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:22 gl_ClipDistance: direct index for structure (in implicitly-sized array of float)\r
+0:22 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:22 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:22 Constant:\r
0:22 1 (const int)\r
0:22 Constant:\r
0:26 'gl_InvocationID' (in int)\r
0:28 move second child to first child (4-component vector of float)\r
0:28 gl_Position: direct index for structure (out 4-component vector of float)\r
-0:28 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
-0:28 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:28 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
+0:28 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:28 Constant:\r
0:28 1 (const int)\r
0:28 Constant:\r
0:28 'p' (4-component vector of float)\r
0:29 move second child to first child (float)\r
0:29 gl_PointSize: direct index for structure (out float)\r
-0:29 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
-0:29 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:29 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
+0:29 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:29 Constant:\r
0:29 1 (const int)\r
0:29 Constant:\r
0:29 'ps' (float)\r
0:30 move second child to first child (float)\r
0:30 direct index (float)\r
-0:30 gl_ClipDistance: direct index for structure (out unsized array of float)\r
-0:30 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
-0:30 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:30 gl_ClipDistance: direct index for structure (out implicitly-sized array of float)\r
+0:30 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
+0:30 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:30 Constant:\r
0:30 1 (const int)\r
0:30 Constant:\r
0:? Linker Objects\r
0:? 'outa' (4-element array of int)\r
0:? 'patchOut' (patch out 4-component vector of float)\r
-0:? 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:? 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
\r
150.tese\r
Warning, version 150 is not yet complete; some version-specific features are present, but many are missing.\r
0:22 move second child to first child (4-component vector of float)\r
0:22 'p' (4-component vector of float)\r
0:22 gl_Position: direct index for structure (in 4-component vector of float)\r
-0:22 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:22 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:22 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:22 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:22 Constant:\r
0:22 1 (const int)\r
0:22 Constant:\r
0:23 move second child to first child (float)\r
0:23 'ps' (float)\r
0:23 gl_PointSize: direct index for structure (in float)\r
-0:23 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:23 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:23 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:23 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:23 Constant:\r
0:23 1 (const int)\r
0:23 Constant:\r
0:24 move second child to first child (float)\r
0:24 'cd' (float)\r
0:24 direct index (float)\r
-0:24 gl_ClipDistance: direct index for structure (in unsized array of float)\r
-0:24 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:24 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:24 gl_ClipDistance: direct index for structure (in implicitly-sized array of float)\r
+0:24 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:24 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:24 Constant:\r
0:24 1 (const int)\r
0:24 Constant:\r
0:30 1 (const int)\r
0:32 move second child to first child (4-component vector of float)\r
0:32 gl_Position: direct index for structure (gl_Position 4-component vector of float)\r
-0:32 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:32 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:32 Constant:\r
0:32 0 (const uint)\r
0:32 'p' (4-component vector of float)\r
0:33 move second child to first child (float)\r
0:33 gl_PointSize: direct index for structure (gl_PointSize float)\r
-0:33 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:33 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:33 Constant:\r
0:33 1 (const uint)\r
0:33 'ps' (float)\r
0:34 move second child to first child (float)\r
0:34 direct index (float)\r
-0:34 gl_ClipDistance: direct index for structure (out unsized array of float)\r
-0:34 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:34 gl_ClipDistance: direct index for structure (out implicitly-sized array of float)\r
+0:34 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:34 Constant:\r
0:34 2 (const uint)\r
0:34 Constant:\r
ERROR: 0:40: 'vertices' : cannot change previously set layout value \r
ERROR: 0:44: '[' : array index out of range '4'\r
ERROR: 0:47: 'in' : type must be an array: ina\r
-ERROR: 0:49: '[]' : tessellation input array size must be gl_MaxPatchVertices or unsized \r
+ERROR: 0:49: '[]' : tessellation input array size must be gl_MaxPatchVertices or implicitly sized \r
ERROR: 0:56: 'location' : overlapping use of location 4\r
ERROR: 0:60: 'location' : overlapping use of location 4\r
ERROR: 11 compilation errors. No code generated.\r
0:23 move second child to first child (4-component vector of float)\r
0:23 'p' (4-component vector of float)\r
0:23 gl_Position: direct index for structure (in 4-component vector of float)\r
-0:23 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:23 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:23 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:23 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:23 Constant:\r
0:23 1 (const int)\r
0:23 Constant:\r
0:24 move second child to first child (float)\r
0:24 'ps' (float)\r
0:24 gl_PointSize: direct index for structure (in float)\r
-0:24 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:24 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:24 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:24 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:24 Constant:\r
0:24 1 (const int)\r
0:24 Constant:\r
0:25 move second child to first child (float)\r
0:25 'cd' (float)\r
0:25 direct index (float)\r
-0:25 gl_ClipDistance: direct index for structure (in unsized array of float)\r
-0:25 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:25 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:25 gl_ClipDistance: direct index for structure (in implicitly-sized array of float)\r
+0:25 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:25 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:25 Constant:\r
0:25 1 (const int)\r
0:25 Constant:\r
0:29 'gl_InvocationID' (in int)\r
0:31 move second child to first child (4-component vector of float)\r
0:31 gl_Position: direct index for structure (out 4-component vector of float)\r
-0:31 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
-0:31 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:31 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
+0:31 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:31 Constant:\r
0:31 1 (const int)\r
0:31 Constant:\r
0:31 'p' (4-component vector of float)\r
0:32 move second child to first child (float)\r
0:32 gl_PointSize: direct index for structure (out float)\r
-0:32 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
-0:32 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:32 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
+0:32 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:32 Constant:\r
0:32 1 (const int)\r
0:32 Constant:\r
0:32 'ps' (float)\r
0:33 move second child to first child (float)\r
0:33 direct index (float)\r
-0:33 gl_ClipDistance: direct index for structure (out unsized array of float)\r
-0:33 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
-0:33 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:33 gl_ClipDistance: direct index for structure (out implicitly-sized array of float)\r
+0:33 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
+0:33 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:33 Constant:\r
0:33 1 (const int)\r
0:33 Constant:\r
0:42 Function Parameters: \r
0:44 Sequence\r
0:44 gl_PointSize: direct index for structure (out float)\r
-0:44 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
-0:44 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:44 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
+0:44 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:44 Constant:\r
0:44 4 (const int)\r
0:44 Constant:\r
0:? 'outa' (4-element array of int)\r
0:? 'patchIn' (patch in 4-component vector of float)\r
0:? 'patchOut' (patch out 4-component vector of float)\r
-0:? 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:? 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:? 'ina' (in 2-component vector of float)\r
0:? 'inb' (in 32-element array of 2-component vector of float)\r
0:? 'inc' (in 32-element array of 2-component vector of float)\r
ERROR: 0:48: 'patch' : cannot use interpolation qualifiers with patch \r
ERROR: 0:49: 'patch' : cannot use interpolation qualifiers with patch \r
ERROR: 0:50: '' : can only have one auxiliary qualifier (centroid, patch, and sample) \r
-ERROR: 0:54: 'gl_PerVertex' : block already declared with size, can't redeclare as unsized \r
+ERROR: 0:54: 'gl_PerVertex' : block already declared with size, can't redeclare as implicitly-sized \r
ERROR: 0:59: 'gl_PerVertex' : can only redeclare a built-in block once, and before any use \r
ERROR: 0:64: 'quads' : cannot apply to 'out' \r
ERROR: 0:64: 'cw' : can only apply to 'in' \r
ERROR: 0:70: 'fractional_even_spacing' : can only apply to 'in' \r
ERROR: 0:71: 'point_mode' : can only apply to 'in' \r
ERROR: 0:73: 'in' : type must be an array: ina\r
-ERROR: 0:75: '[]' : tessellation input array size must be gl_MaxPatchVertices or unsized \r
+ERROR: 0:75: '[]' : tessellation input array size must be gl_MaxPatchVertices or implicitly sized \r
ERROR: 0:78: 'in' : type must be an array: bla\r
-ERROR: 0:86: '[]' : tessellation input array size must be gl_MaxPatchVertices or unsized \r
+ERROR: 0:86: '[]' : tessellation input array size must be gl_MaxPatchVertices or implicitly sized \r
ERROR: 0:96: 'location' : overlapping use of location 24\r
ERROR: 0:99: 'location' : overlapping use of location 24\r
ERROR: 29 compilation errors. No code generated.\r
0:32 move second child to first child (4-component vector of float)\r
0:32 'p' (4-component vector of float)\r
0:32 gl_Position: direct index for structure (in 4-component vector of float)\r
-0:32 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:32 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:32 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:32 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:32 Constant:\r
0:32 1 (const int)\r
0:32 Constant:\r
0:33 move second child to first child (float)\r
0:33 'ps' (float)\r
0:33 gl_PointSize: direct index for structure (in float)\r
-0:33 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:33 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:33 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:33 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:33 Constant:\r
0:33 1 (const int)\r
0:33 Constant:\r
0:34 move second child to first child (float)\r
0:34 'cd' (float)\r
0:34 direct index (float)\r
-0:34 gl_ClipDistance: direct index for structure (in unsized array of float)\r
-0:34 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:34 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:34 gl_ClipDistance: direct index for structure (in implicitly-sized array of float)\r
+0:34 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:34 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:34 Constant:\r
0:34 1 (const int)\r
0:34 Constant:\r
0:40 1 (const int)\r
0:42 move second child to first child (4-component vector of float)\r
0:42 gl_Position: direct index for structure (gl_Position 4-component vector of float)\r
-0:42 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:42 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:42 Constant:\r
0:42 0 (const uint)\r
0:42 'p' (4-component vector of float)\r
0:43 move second child to first child (float)\r
0:43 gl_PointSize: direct index for structure (gl_PointSize float)\r
-0:43 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:43 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:43 Constant:\r
0:43 1 (const uint)\r
0:43 'ps' (float)\r
0:44 move second child to first child (float)\r
0:44 direct index (float)\r
-0:44 gl_ClipDistance: direct index for structure (out unsized array of float)\r
-0:44 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:44 gl_ClipDistance: direct index for structure (out implicitly-sized array of float)\r
+0:44 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:44 Constant:\r
0:44 2 (const uint)\r
0:44 Constant:\r
0:? 'badp2' (flat patch in 4-component vector of float)\r
0:? 'badp3' (noperspective patch in 4-component vector of float)\r
0:? 'badp4' (patch sample in 3-component vector of float)\r
-0:? 'gl_in' (in 32-element array of block{in unsized array of float gl_ClipDistance})\r
+0:? 'gl_in' (in 32-element array of block{in implicitly-sized array of float gl_ClipDistance})\r
0:? 'ina' (in 2-component vector of float)\r
0:? 'inb' (in 32-element array of 2-component vector of float)\r
0:? 'inc' (in 32-element array of 2-component vector of float)\r
0:17 move second child to first child (4-component vector of float)\r
0:17 'p' (4-component vector of float)\r
0:17 gl_Position: direct index for structure (in 4-component vector of float)\r
-0:17 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:17 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:17 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:17 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:17 Constant:\r
0:17 1 (const int)\r
0:17 Constant:\r
0:18 move second child to first child (float)\r
0:18 'ps' (float)\r
0:18 gl_PointSize: direct index for structure (in float)\r
-0:18 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:18 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:18 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:18 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:18 Constant:\r
0:18 1 (const int)\r
0:18 Constant:\r
0:19 move second child to first child (float)\r
0:19 'cd' (float)\r
0:19 direct index (float)\r
-0:19 gl_ClipDistance: direct index for structure (in unsized array of float)\r
-0:19 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:19 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:19 gl_ClipDistance: direct index for structure (in implicitly-sized array of float)\r
+0:19 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:19 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:19 Constant:\r
0:19 1 (const int)\r
0:19 Constant:\r
0:? 'b3' (2-element array of 4-component vector of float)\r
0:? 'b4' (2-element array of 4-component vector of float)\r
0:? 'c3' (4X2 matrix of float)\r
-0:? 'd2' (unsized array of structure{float s, float t})\r
+0:? 'd2' (implicitly-sized array of structure{float s, float t})\r
0:? 'b5' (5-element array of float)\r
0:? 'constructed' (const structure{2-component vector of uint uv2, 2-element array of structure{float f, 2X3 matrix of float m23} s})\r
0:? 1 (const uint)\r
ERROR: Linking tessellation control stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:\r
main(\r
ERROR: Linking tessellation control stage: Types must match:\r
- gl_out: "out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance}" versus "out 3-element array of block{out 4-component vector of float gl_Position}"\r
+ gl_out: "out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance}" versus "out 3-element array of block{out 4-component vector of float gl_Position}"\r
\r
Linked tessellation evaluation stage:\r
\r
0:20 move second child to first child (4-component vector of float)\r
0:20 'p' (4-component vector of float)\r
0:20 gl_Position: direct index for structure (in 4-component vector of float)\r
-0:20 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:20 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:20 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:20 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:20 Constant:\r
0:20 1 (const int)\r
0:20 Constant:\r
0:21 move second child to first child (float)\r
0:21 'ps' (float)\r
0:21 gl_PointSize: direct index for structure (in float)\r
-0:21 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:21 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:21 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:21 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:21 Constant:\r
0:21 1 (const int)\r
0:21 Constant:\r
0:22 move second child to first child (float)\r
0:22 'cd' (float)\r
0:22 direct index (float)\r
-0:22 gl_ClipDistance: direct index for structure (in unsized array of float)\r
-0:22 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:22 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:22 gl_ClipDistance: direct index for structure (in implicitly-sized array of float)\r
+0:22 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:22 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:22 Constant:\r
0:22 1 (const int)\r
0:22 Constant:\r
0:26 'gl_InvocationID' (in int)\r
0:28 move second child to first child (4-component vector of float)\r
0:28 gl_Position: direct index for structure (out 4-component vector of float)\r
-0:28 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
-0:28 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:28 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
+0:28 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:28 Constant:\r
0:28 1 (const int)\r
0:28 Constant:\r
0:28 'p' (4-component vector of float)\r
0:29 move second child to first child (float)\r
0:29 gl_PointSize: direct index for structure (out float)\r
-0:29 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
-0:29 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:29 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
+0:29 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:29 Constant:\r
0:29 1 (const int)\r
0:29 Constant:\r
0:29 'ps' (float)\r
0:30 move second child to first child (float)\r
0:30 direct index (float)\r
-0:30 gl_ClipDistance: direct index for structure (out unsized array of float)\r
-0:30 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
-0:30 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:30 gl_ClipDistance: direct index for structure (out implicitly-sized array of float)\r
+0:30 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
+0:30 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:30 Constant:\r
0:30 1 (const int)\r
0:30 Constant:\r
0:23 move second child to first child (4-component vector of float)\r
0:23 'p' (4-component vector of float)\r
0:23 gl_Position: direct index for structure (in 4-component vector of float)\r
-0:23 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:23 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:23 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:23 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:23 Constant:\r
0:23 1 (const int)\r
0:23 Constant:\r
0:24 move second child to first child (float)\r
0:24 'ps' (float)\r
0:24 gl_PointSize: direct index for structure (in float)\r
-0:24 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:24 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:24 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:24 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:24 Constant:\r
0:24 1 (const int)\r
0:24 Constant:\r
0:25 move second child to first child (float)\r
0:25 'cd' (float)\r
0:25 direct index (float)\r
-0:25 gl_ClipDistance: direct index for structure (in unsized array of float)\r
-0:25 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:25 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:25 gl_ClipDistance: direct index for structure (in implicitly-sized array of float)\r
+0:25 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:25 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:25 Constant:\r
0:25 1 (const int)\r
0:25 Constant:\r
0:29 'gl_InvocationID' (in int)\r
0:31 move second child to first child (4-component vector of float)\r
0:31 gl_Position: direct index for structure (out 4-component vector of float)\r
-0:31 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
-0:31 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:31 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
+0:31 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:31 Constant:\r
0:31 1 (const int)\r
0:31 Constant:\r
0:31 'p' (4-component vector of float)\r
0:32 move second child to first child (float)\r
0:32 gl_PointSize: direct index for structure (out float)\r
-0:32 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
-0:32 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:32 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
+0:32 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:32 Constant:\r
0:32 1 (const int)\r
0:32 Constant:\r
0:32 'ps' (float)\r
0:33 move second child to first child (float)\r
0:33 direct index (float)\r
-0:33 gl_ClipDistance: direct index for structure (out unsized array of float)\r
-0:33 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
-0:33 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:33 gl_ClipDistance: direct index for structure (out implicitly-sized array of float)\r
+0:33 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
+0:33 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:33 Constant:\r
0:33 1 (const int)\r
0:33 Constant:\r
0:42 Function Parameters: \r
0:44 Sequence\r
0:44 gl_PointSize: direct index for structure (out float)\r
-0:44 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
-0:44 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:44 direct index (block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
+0:44 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:44 Constant:\r
0:44 4 (const int)\r
0:44 Constant:\r
0:17 move second child to first child (4-component vector of float)\r
0:17 'p' (4-component vector of float)\r
0:17 gl_Position: direct index for structure (in 4-component vector of float)\r
-0:17 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:17 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:17 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:17 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:17 Constant:\r
0:17 1 (const int)\r
0:17 Constant:\r
0:18 move second child to first child (float)\r
0:18 'ps' (float)\r
0:18 gl_PointSize: direct index for structure (in float)\r
-0:18 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:18 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:18 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:18 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:18 Constant:\r
0:18 1 (const int)\r
0:18 Constant:\r
0:19 move second child to first child (float)\r
0:19 'cd' (float)\r
0:19 direct index (float)\r
-0:19 gl_ClipDistance: direct index for structure (in unsized array of float)\r
-0:19 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:19 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:19 gl_ClipDistance: direct index for structure (in implicitly-sized array of float)\r
+0:19 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:19 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:19 Constant:\r
0:19 1 (const int)\r
0:19 Constant:\r
0:? Linker Objects\r
0:? 'outa' (4-element array of int)\r
0:? 'patchOut' (patch out 4-component vector of float)\r
-0:? 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:? 'gl_out' (out 4-element array of block{out 4-component vector of float gl_Position, out float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:? 'patchIn' (patch in 4-component vector of float)\r
0:? 'ina' (in 2-component vector of float)\r
0:? 'inb' (in 32-element array of 2-component vector of float)\r
0:22 move second child to first child (4-component vector of float)\r
0:22 'p' (4-component vector of float)\r
0:22 gl_Position: direct index for structure (in 4-component vector of float)\r
-0:22 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:22 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:22 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:22 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:22 Constant:\r
0:22 1 (const int)\r
0:22 Constant:\r
0:23 move second child to first child (float)\r
0:23 'ps' (float)\r
0:23 gl_PointSize: direct index for structure (in float)\r
-0:23 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:23 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:23 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:23 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:23 Constant:\r
0:23 1 (const int)\r
0:23 Constant:\r
0:24 move second child to first child (float)\r
0:24 'cd' (float)\r
0:24 direct index (float)\r
-0:24 gl_ClipDistance: direct index for structure (in unsized array of float)\r
-0:24 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:24 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:24 gl_ClipDistance: direct index for structure (in implicitly-sized array of float)\r
+0:24 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:24 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:24 Constant:\r
0:24 1 (const int)\r
0:24 Constant:\r
0:30 1 (const int)\r
0:32 move second child to first child (4-component vector of float)\r
0:32 gl_Position: direct index for structure (gl_Position 4-component vector of float)\r
-0:32 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:32 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:32 Constant:\r
0:32 0 (const uint)\r
0:32 'p' (4-component vector of float)\r
0:33 move second child to first child (float)\r
0:33 gl_PointSize: direct index for structure (gl_PointSize float)\r
-0:33 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:33 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:33 Constant:\r
0:33 1 (const uint)\r
0:33 'ps' (float)\r
0:34 move second child to first child (float)\r
0:34 direct index (float)\r
-0:34 gl_ClipDistance: direct index for structure (out unsized array of float)\r
-0:34 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:34 gl_ClipDistance: direct index for structure (out implicitly-sized array of float)\r
+0:34 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:34 Constant:\r
0:34 2 (const uint)\r
0:34 Constant:\r
0:32 move second child to first child (4-component vector of float)\r
0:32 'p' (4-component vector of float)\r
0:32 gl_Position: direct index for structure (in 4-component vector of float)\r
-0:32 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:32 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:32 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:32 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:32 Constant:\r
0:32 1 (const int)\r
0:32 Constant:\r
0:33 move second child to first child (float)\r
0:33 'ps' (float)\r
0:33 gl_PointSize: direct index for structure (in float)\r
-0:33 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:33 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:33 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:33 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:33 Constant:\r
0:33 1 (const int)\r
0:33 Constant:\r
0:34 move second child to first child (float)\r
0:34 'cd' (float)\r
0:34 direct index (float)\r
-0:34 gl_ClipDistance: direct index for structure (in unsized array of float)\r
-0:34 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
-0:34 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})\r
+0:34 gl_ClipDistance: direct index for structure (in implicitly-sized array of float)\r
+0:34 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
+0:34 'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})\r
0:34 Constant:\r
0:34 1 (const int)\r
0:34 Constant:\r
0:40 1 (const int)\r
0:42 move second child to first child (4-component vector of float)\r
0:42 gl_Position: direct index for structure (gl_Position 4-component vector of float)\r
-0:42 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:42 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:42 Constant:\r
0:42 0 (const uint)\r
0:42 'p' (4-component vector of float)\r
0:43 move second child to first child (float)\r
0:43 gl_PointSize: direct index for structure (gl_PointSize float)\r
-0:43 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:43 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:43 Constant:\r
0:43 1 (const uint)\r
0:43 'ps' (float)\r
0:44 move second child to first child (float)\r
0:44 direct index (float)\r
-0:44 gl_ClipDistance: direct index for structure (out unsized array of float)\r
-0:44 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out unsized array of float gl_ClipDistance})\r
+0:44 gl_ClipDistance: direct index for structure (out implicitly-sized array of float)\r
+0:44 '__anon__1' (out block{gl_Position 4-component vector of float gl_Position, gl_PointSize float gl_PointSize, out implicitly-sized array of float gl_ClipDistance})\r
0:44 Constant:\r
0:44 2 (const uint)\r
0:44 Constant:\r
0:? 'badp2' (flat patch in 4-component vector of float)\r
0:? 'badp3' (noperspective patch in 4-component vector of float)\r
0:? 'badp4' (patch sample in 3-component vector of float)\r
-0:? 'gl_in' (in 32-element array of block{in unsized array of float gl_ClipDistance})\r
+0:? 'gl_in' (in 32-element array of block{in implicitly-sized array of float gl_ClipDistance})\r
0:? 'ina' (in 2-component vector of float)\r
0:? 'inb' (in 32-element array of 2-component vector of float)\r
0:? 'inc' (in 32-element array of 2-component vector of float)\r
0:? 'b3' (2-element array of 4-component vector of float)\r
0:? 'b4' (2-element array of 4-component vector of float)\r
0:? 'c3' (4X2 matrix of float)\r
-0:? 'd2' (unsized array of structure{float s, float t})\r
+0:? 'd2' (implicitly-sized array of structure{float s, float t})\r
0:? 'b5' (5-element array of float)\r
0:? 'constructed' (const structure{2-component vector of uint uv2, 2-element array of structure{float f, 2X3 matrix of float m23} s})\r
0:? 1 (const uint)\r
const TAnonMember* anon = symbol ? symbol->getAsAnonMember() : 0;
if (anon) {
- // it was a member of an anonymous container, have to insert its dereference
+ // it was a member of an anonymous container
+
+ // create a subtree for its dereference
const TVariable* variable = anon->getAnonContainer().getAsVariable();
TIntermTyped* container = intermediate.addSymbol(*variable, loc);
TConstUnionArray unionArray(1);
type->deepCopy(variable->getType());
} else
type = &variable->getWritableType();
+ // addSymbol will do a shallow copy of the type to the node, thus sharing array and struct information
node = intermediate.addSymbol(variable->getUniqueId(), variable->getName(), *type, loc);
if (type->getQualifier().isIo())
noteAccess = true;
handleIoResizeArrayAccess(loc, base);
if (index->getQualifier().storage == EvqConst) {
- if (base->isArray() && base->getType().getArraySize() == 0)
- updateMaxArraySize(loc, base, indexValue);
+ if (base->getType().isImplicitlySizedArray())
+ updateImplicitArraySize(loc, base, indexValue);
result = intermediate.addIndex(EOpIndexDirect, base, index, loc);
} else {
- if (base->isArray() && base->getType().getArraySize() == 0) {
+ if (base->getType().isImplicitlySizedArray()) {
if (base->getAsSymbolNode() && isIoResizeArray(base->getType()))
error(loc, "", "[", "array must be sized by a redeclaration or layout qualifier before being indexed with a variable");
else
error(loc, "", "[", "index out of range '%d'", index);
index = 0;
} else if (type.isArray()) {
- if (type.getArraySize() != 0 && index >= type.getArraySize()) {
+ if (type.isExplicitlySizedArray() && index >= type.getArraySize()) {
error(loc, "", "[", "array index out of range '%d'", index);
index = type.getArraySize() - 1;
}
if (language == EShLangTessControl || language == EShLangTessEvaluation) {
if (type.getArraySize() != resources.maxPatchVertices) {
- if (type.getArraySize() != 0)
- error(loc, "tessellation input array size must be gl_MaxPatchVertices or unsized", "[]", "");
+ if (type.isExplicitlySizedArray())
+ error(loc, "tessellation input array size must be gl_MaxPatchVertices or implicitly sized", "[]", "");
type.changeArraySize(resources.maxPatchVertices);
}
}
arry = symbolTable.copyUp(arry);
// fix array size, if already implicitly size
- if (arry->getType().getArraySize() == 0) {
+ if (arry->getType().isImplicitlySizedArray()) {
int newSize = getIoArrayImplicitSize();
if (newSize) {
arry->getWritableType().changeArraySize(newSize);
void TParseContext::checkIoArrayConsistency(TSourceLoc loc, int requiredSize, const char* feature, TType& type, const TString& name)
{
- if (type.getArraySize() == 0)
+ if (type.isImplicitlySizedArray())
type.changeArraySize(requiredSize);
else if (type.getArraySize() != requiredSize) {
if (language == EShLangGeometry)
error(loc, "method does not accept any arguments", function->getName().c_str(), "");
if (intermNode->getAsTyped() == 0 || ! intermNode->getAsTyped()->getType().isArray())
error(loc, "", function->getName().c_str(), "can only be applied to an array");
- else if (intermNode->getAsTyped()->getType().getArraySize() == 0) {
- bool implicitlySized = false;
+ else if (intermNode->getAsTyped()->getType().isImplicitlySizedArray()) {
if (intermNode->getAsSymbolNode() && isIoResizeArray(intermNode->getAsTyped()->getType())) {
// We could be between a layout declaration that gives a built-in io array implicit size and
// a user redeclaration of that array, meaning we have to substitute its implicit size here
type.getQualifier().storage = EvqConst;
if (type.isArray()) {
- if (type.getArraySize() == 0) {
+ if (type.isImplicitlySizedArray()) {
// auto adapt the constructor type to the number of arguments
type.changeArraySize(function.getParamCount());
} else if (type.getArraySize() != function.getParamCount()) {
error(loc, "redeclaring non-array as array", identifier.c_str(), "");
return;
}
- if (newType.getArraySize() > 0) {
+ if (newType.isExplicitlySizedArray()) {
// be more leniant for input arrays to geometry shaders and tessellation control outputs, where the redeclaration is the same size
if (! (isIoResizeArray(type) && newType.getArraySize() == type.getArraySize()))
error(loc, "redeclaration of array with size", identifier.c_str(), "");
checkIoArraysConsistency(loc);
}
-void TParseContext::updateMaxArraySize(TSourceLoc loc, TIntermNode *node, int index)
+void TParseContext::updateImplicitArraySize(TSourceLoc loc, TIntermNode *node, int index)
{
// maybe there is nothing to do...
TIntermTyped* typedNode = node->getAsTyped();
- if (typedNode->getType().getMaxArraySize() > index)
+ if (typedNode->getType().getImplicitArraySize() > index)
return;
// something to do...
return;
if (symbol->getAsFunction()) {
- error(loc, "array variable name expected", symbolNode->getName().c_str(), "");
+ error(loc, "array variable name expected", symbol->getName().c_str(), "");
return;
}
intermediate.addSymbolLinkageNode(linkage, *symbol);
}
- symbol->getWritableType().setMaxArraySize(index + 1);
+ symbol->getWritableType().setImplicitArraySize(index + 1);
}
//
error(memberLoc, "cannot redeclare block member with a different type", member->type->getFieldName().c_str(), "");
if (oldType.isArray() != newType.isArray())
error(memberLoc, "cannot change arrayness of redeclared block member", member->type->getFieldName().c_str(), "");
- else if (! oldType.sameArrayness(newType) && oldType.getArraySize() > 0)
+ else if (! oldType.sameArrayness(newType) && oldType.isExplicitlySizedArray())
error(memberLoc, "cannot change array size of redeclared block member", member->type->getFieldName().c_str(), "");
else if (newType.isArray())
arrayLimitCheck(loc, member->type->getFieldName(), newType.getArraySize());
if (type.isArray() != (arraySizes != 0))
error(loc, "cannot change arrayness of redeclared block", blockName.c_str(), "");
else if (type.isArray()) {
- if (type.getArraySize() > 0 && arraySizes->getSize() == 0)
- error(loc, "block already declared with size, can't redeclare as unsized", blockName.c_str(), "");
- else if (type.getArraySize() > 0 && type.getArraySize() != arraySizes->getSize())
+ if (type.isExplicitlySizedArray() && arraySizes->getSize() == 0)
+ error(loc, "block already declared with size, can't redeclare as implicitly-sized", blockName.c_str(), "");
+ else if (type.isExplicitlySizedArray() && type.getArraySize() != arraySizes->getSize())
error(loc, "cannot change array size of redeclared block", blockName.c_str(), "");
- else if (type.getArraySize() == 0 && arraySizes->getSize() > 0)
+ else if (type.isImplicitlySizedArray() && arraySizes->getSize() > 0)
type.changeArraySize(arraySizes->getSize());
}
}
// Fix arrayness if variable is unsized, getting size from the initializer
- if (initializer->getType().isArray() && initializer->getType().getArraySize() > 0 &&
- variable->getType().isArray() && variable->getType().getArraySize() == 0)
+ if (initializer->getType().isArray() && initializer->getType().isExplicitlySizedArray() &&
+ variable->getType().isImplicitlySizedArray())
variable->getWritableType().changeArraySize(initializer->getType().getArraySize());
// Uniform and global consts require a constant initializer