1 functionSemantics.frag 2 ERROR: 0:74: 'return' : cannot convert return value to function return type 3 WARNING: 0:74: 'return' : type conversion on return values was not explicitly allowed until version 420 4 ERROR: 1 compilation errors. No code generated. 5 6 7 Shader version: 400 8 ERROR: node is still EOpNull! 9 0:5 Function Definition: foo(i1;i1;i1;i1;i1;i1; ( global int) 10 0:5 Function Parameters: 11 0:5 'a' ( in int) 12 0:5 'b' ( const (read only) int) 13 0:5 'c' ( in int) 14 0:5 'd' ( const (read only) int) 15 0:5 'e' ( out int) 16 0:5 'f' ( inout int) 17 0:7 Sequence 18 0:7 Sequence 19 0:7 move second child to first child ( temp int) 20 0:7 'sum' ( temp int) 21 0:7 add ( temp int) 22 0:7 add ( temp int) 23 0:7 add ( temp int) 24 0:7 add ( temp int) 25 0:7 'a' ( in int) 26 0:7 'b' ( const (read only) int) 27 0:7 'c' ( in int) 28 0:7 'd' ( const (read only) int) 29 0:7 'f' ( inout int) 30 0:10 multiply second child into first child ( temp int) 31 0:10 'a' ( in int) 32 0:10 Constant: 33 0:10 64 (const int) 34 0:12 multiply second child into first child ( temp int) 35 0:12 'c' ( in int) 36 0:12 Constant: 37 0:12 64 (const int) 38 0:14 move second child to first child ( temp int) 39 0:14 'e' ( out int) 40 0:14 Constant: 41 0:14 1024 (const int) 42 0:15 multiply second child into first child ( temp int) 43 0:15 'f' ( inout int) 44 0:15 Constant: 45 0:15 64 (const int) 46 0:17 add second child into first child ( temp int) 47 0:17 'sum' ( temp int) 48 0:17 add ( temp int) 49 0:17 add ( temp int) 50 0:17 add ( temp int) 51 0:17 add ( temp int) 52 0:17 add ( temp int) 53 0:17 'a' ( in int) 54 0:17 component-wise multiply ( temp int) 55 0:17 Constant: 56 0:17 64 (const int) 57 0:17 'b' ( const (read only) int) 58 0:17 'c' ( in int) 59 0:17 component-wise multiply ( temp int) 60 0:17 Constant: 61 0:17 64 (const int) 62 0:17 'd' ( const (read only) int) 63 0:17 'e' ( out int) 64 0:17 'f' ( inout int) 65 0:20 Branch: Return with expression 66 0:20 'sum' ( temp int) 67 0:23 Function Definition: foo2(f1;vf3;i1; ( global int) 68 0:23 Function Parameters: 69 0:23 'a' ( in float) 70 0:23 'b' ( in 3-component vector of float) 71 0:23 'r' ( out int) 72 0:25 Sequence 73 0:25 move second child to first child ( temp int) 74 0:25 'r' ( out int) 75 0:25 Convert float to int ( temp int) 76 0:25 component-wise multiply ( temp float) 77 0:25 Constant: 78 0:25 3.000000 79 0:25 'a' ( in float) 80 0:26 Branch: Return with expression 81 0:26 Convert float to int ( temp int) 82 0:26 component-wise multiply ( temp float) 83 0:26 Constant: 84 0:26 5.000000 85 0:26 direct index ( temp float) 86 0:26 'b' ( in 3-component vector of float) 87 0:26 Constant: 88 0:26 1 (const int) 89 0:29 Function Definition: foo3( ( global int) 90 0:29 Function Parameters: 91 0:31 Sequence 92 0:31 Test condition and select ( temp void) 93 0:31 Condition 94 0:31 Compare Greater Than ( temp bool) 95 0:31 'u' ( uniform float) 96 0:31 Constant: 97 0:31 3.200000 98 0:31 true case 99 0:32 Sequence 100 0:32 Branch: Kill 101 0:33 Branch: Return with expression 102 0:33 Constant: 103 0:33 1000000 (const int) 104 0:36 Branch: Return with expression 105 0:36 Constant: 106 0:36 2000000 (const int) 107 0:39 Function Definition: main( ( global void) 108 0:39 Function Parameters: 109 0:? Sequence 110 0:42 Sequence 111 0:42 move second child to first child ( temp int) 112 0:42 't' ( temp int) 113 0:42 Constant: 114 0:42 2 (const int) 115 0:46 move second child to first child ( temp int) 116 0:46 direct index ( temp int) 117 0:46 t: direct index for structure ( temp 4-component vector of int) 118 0:46 'f' ( temp structure{ temp 4-component vector of int t}) 119 0:46 Constant: 120 0:46 0 (const int) 121 0:46 Constant: 122 0:46 1 (const int) 123 0:46 Constant: 124 0:46 32 (const int) 125 0:49 Sequence 126 0:49 move second child to first child ( temp int) 127 0:49 'color' ( temp int) 128 0:49 Function Call: foo(i1;i1;i1;i1;i1;i1; ( global int) 129 0:49 Constant: 130 0:49 1 (const int) 131 0:49 Constant: 132 0:49 2 (const int) 133 0:49 add ( temp int) 134 0:49 't' ( temp int) 135 0:49 't' ( temp int) 136 0:49 Constant: 137 0:49 8 (const int) 138 0:49 'e' ( temp int) 139 0:49 direct index ( temp int) 140 0:49 t: direct index for structure ( temp 4-component vector of int) 141 0:49 'f' ( temp structure{ temp 4-component vector of int t}) 142 0:49 Constant: 143 0:49 0 (const int) 144 0:49 Constant: 145 0:49 1 (const int) 146 0:51 add second child into first child ( temp int) 147 0:51 'color' ( temp int) 148 0:51 component-wise multiply ( temp int) 149 0:51 Constant: 150 0:51 128 (const int) 151 0:51 add ( temp int) 152 0:51 'e' ( temp int) 153 0:51 direct index ( temp int) 154 0:51 t: direct index for structure ( temp 4-component vector of int) 155 0:51 'f' ( temp structure{ temp 4-component vector of int t}) 156 0:51 Constant: 157 0:51 0 (const int) 158 0:51 Constant: 159 0:51 1 (const int) 160 0:57 move second child to first child ( temp float) 161 0:57 'ret' ( temp float) 162 0:57 Convert int to float ( temp float) 163 0:57 Comma ( global int) 164 0:57 move second child to first child ( temp int) 165 0:57 'tempReturn' ( global int) 166 0:57 Function Call: foo2(f1;vf3;i1; ( global int) 167 0:57 Constant: 168 0:57 4.000000 169 0:57 Constant: 170 0:57 1.000000 171 0:57 2.000000 172 0:57 3.000000 173 0:57 'tempArg' ( temp int) 174 0:57 move second child to first child ( temp float) 175 0:57 'arg' ( temp float) 176 0:57 Convert int to float ( temp float) 177 0:57 'tempArg' ( temp int) 178 0:57 'tempReturn' ( global int) 179 0:58 add second child into first child ( temp int) 180 0:58 'color' ( temp int) 181 0:58 Convert float to int ( temp int) 182 0:58 add ( temp float) 183 0:58 'ret' ( temp float) 184 0:58 'arg' ( temp float) 185 0:60 add second child into first child ( temp int) 186 0:60 'color' ( temp int) 187 0:60 Function Call: foo3( ( global int) 188 0:62 move second child to first child ( temp 4-component vector of float) 189 0:62 'gl_FragColor' ( fragColor 4-component vector of float FragColor) 190 0:62 Construct vec4 ( temp 4-component vector of float) 191 0:62 Convert int to float ( temp float) 192 0:62 'color' ( temp int) 193 0:66 Function Definition: aggCall( ( global void) 194 0:66 Function Parameters: 195 0:? Sequence 196 0:69 Function Call: m(vf2; ( global 3-component vector of float) 197 0:69 Convert int to float ( temp 2-component vector of float) 198 0:69 Construct ivec2 ( temp 2-component vector of int) 199 0:69 Convert float to int ( temp int) 200 0:69 'F' ( temp float) 201 0:72 Function Definition: badConv( ( global 4-component vector of float) 202 0:72 Function Parameters: 203 0:74 Sequence 204 0:74 Branch: Return with expression 205 0:74 'u' ( uniform float) 206 0:? Linker Objects 207 0:? 'u' ( uniform float) 208 209 210 Linked fragment stage: 211 212 213 Shader version: 400 214 ERROR: node is still EOpNull! 215 0:5 Function Definition: foo(i1;i1;i1;i1;i1;i1; ( global int) 216 0:5 Function Parameters: 217 0:5 'a' ( in int) 218 0:5 'b' ( const (read only) int) 219 0:5 'c' ( in int) 220 0:5 'd' ( const (read only) int) 221 0:5 'e' ( out int) 222 0:5 'f' ( inout int) 223 0:7 Sequence 224 0:7 Sequence 225 0:7 move second child to first child ( temp int) 226 0:7 'sum' ( temp int) 227 0:7 add ( temp int) 228 0:7 add ( temp int) 229 0:7 add ( temp int) 230 0:7 add ( temp int) 231 0:7 'a' ( in int) 232 0:7 'b' ( const (read only) int) 233 0:7 'c' ( in int) 234 0:7 'd' ( const (read only) int) 235 0:7 'f' ( inout int) 236 0:10 multiply second child into first child ( temp int) 237 0:10 'a' ( in int) 238 0:10 Constant: 239 0:10 64 (const int) 240 0:12 multiply second child into first child ( temp int) 241 0:12 'c' ( in int) 242 0:12 Constant: 243 0:12 64 (const int) 244 0:14 move second child to first child ( temp int) 245 0:14 'e' ( out int) 246 0:14 Constant: 247 0:14 1024 (const int) 248 0:15 multiply second child into first child ( temp int) 249 0:15 'f' ( inout int) 250 0:15 Constant: 251 0:15 64 (const int) 252 0:17 add second child into first child ( temp int) 253 0:17 'sum' ( temp int) 254 0:17 add ( temp int) 255 0:17 add ( temp int) 256 0:17 add ( temp int) 257 0:17 add ( temp int) 258 0:17 add ( temp int) 259 0:17 'a' ( in int) 260 0:17 component-wise multiply ( temp int) 261 0:17 Constant: 262 0:17 64 (const int) 263 0:17 'b' ( const (read only) int) 264 0:17 'c' ( in int) 265 0:17 component-wise multiply ( temp int) 266 0:17 Constant: 267 0:17 64 (const int) 268 0:17 'd' ( const (read only) int) 269 0:17 'e' ( out int) 270 0:17 'f' ( inout int) 271 0:20 Branch: Return with expression 272 0:20 'sum' ( temp int) 273 0:23 Function Definition: foo2(f1;vf3;i1; ( global int) 274 0:23 Function Parameters: 275 0:23 'a' ( in float) 276 0:23 'b' ( in 3-component vector of float) 277 0:23 'r' ( out int) 278 0:25 Sequence 279 0:25 move second child to first child ( temp int) 280 0:25 'r' ( out int) 281 0:25 Convert float to int ( temp int) 282 0:25 component-wise multiply ( temp float) 283 0:25 Constant: 284 0:25 3.000000 285 0:25 'a' ( in float) 286 0:26 Branch: Return with expression 287 0:26 Convert float to int ( temp int) 288 0:26 component-wise multiply ( temp float) 289 0:26 Constant: 290 0:26 5.000000 291 0:26 direct index ( temp float) 292 0:26 'b' ( in 3-component vector of float) 293 0:26 Constant: 294 0:26 1 (const int) 295 0:29 Function Definition: foo3( ( global int) 296 0:29 Function Parameters: 297 0:31 Sequence 298 0:31 Test condition and select ( temp void) 299 0:31 Condition 300 0:31 Compare Greater Than ( temp bool) 301 0:31 'u' ( uniform float) 302 0:31 Constant: 303 0:31 3.200000 304 0:31 true case 305 0:32 Sequence 306 0:32 Branch: Kill 307 0:33 Branch: Return with expression 308 0:33 Constant: 309 0:33 1000000 (const int) 310 0:36 Branch: Return with expression 311 0:36 Constant: 312 0:36 2000000 (const int) 313 0:39 Function Definition: main( ( global void) 314 0:39 Function Parameters: 315 0:? Sequence 316 0:42 Sequence 317 0:42 move second child to first child ( temp int) 318 0:42 't' ( temp int) 319 0:42 Constant: 320 0:42 2 (const int) 321 0:46 move second child to first child ( temp int) 322 0:46 direct index ( temp int) 323 0:46 t: direct index for structure ( temp 4-component vector of int) 324 0:46 'f' ( temp structure{ temp 4-component vector of int t}) 325 0:46 Constant: 326 0:46 0 (const int) 327 0:46 Constant: 328 0:46 1 (const int) 329 0:46 Constant: 330 0:46 32 (const int) 331 0:49 Sequence 332 0:49 move second child to first child ( temp int) 333 0:49 'color' ( temp int) 334 0:49 Function Call: foo(i1;i1;i1;i1;i1;i1; ( global int) 335 0:49 Constant: 336 0:49 1 (const int) 337 0:49 Constant: 338 0:49 2 (const int) 339 0:49 add ( temp int) 340 0:49 't' ( temp int) 341 0:49 't' ( temp int) 342 0:49 Constant: 343 0:49 8 (const int) 344 0:49 'e' ( temp int) 345 0:49 direct index ( temp int) 346 0:49 t: direct index for structure ( temp 4-component vector of int) 347 0:49 'f' ( temp structure{ temp 4-component vector of int t}) 348 0:49 Constant: 349 0:49 0 (const int) 350 0:49 Constant: 351 0:49 1 (const int) 352 0:51 add second child into first child ( temp int) 353 0:51 'color' ( temp int) 354 0:51 component-wise multiply ( temp int) 355 0:51 Constant: 356 0:51 128 (const int) 357 0:51 add ( temp int) 358 0:51 'e' ( temp int) 359 0:51 direct index ( temp int) 360 0:51 t: direct index for structure ( temp 4-component vector of int) 361 0:51 'f' ( temp structure{ temp 4-component vector of int t}) 362 0:51 Constant: 363 0:51 0 (const int) 364 0:51 Constant: 365 0:51 1 (const int) 366 0:57 move second child to first child ( temp float) 367 0:57 'ret' ( temp float) 368 0:57 Convert int to float ( temp float) 369 0:57 Comma ( global int) 370 0:57 move second child to first child ( temp int) 371 0:57 'tempReturn' ( global int) 372 0:57 Function Call: foo2(f1;vf3;i1; ( global int) 373 0:57 Constant: 374 0:57 4.000000 375 0:57 Constant: 376 0:57 1.000000 377 0:57 2.000000 378 0:57 3.000000 379 0:57 'tempArg' ( temp int) 380 0:57 move second child to first child ( temp float) 381 0:57 'arg' ( temp float) 382 0:57 Convert int to float ( temp float) 383 0:57 'tempArg' ( temp int) 384 0:57 'tempReturn' ( global int) 385 0:58 add second child into first child ( temp int) 386 0:58 'color' ( temp int) 387 0:58 Convert float to int ( temp int) 388 0:58 add ( temp float) 389 0:58 'ret' ( temp float) 390 0:58 'arg' ( temp float) 391 0:60 add second child into first child ( temp int) 392 0:60 'color' ( temp int) 393 0:60 Function Call: foo3( ( global int) 394 0:62 move second child to first child ( temp 4-component vector of float) 395 0:62 'gl_FragColor' ( fragColor 4-component vector of float FragColor) 396 0:62 Construct vec4 ( temp 4-component vector of float) 397 0:62 Convert int to float ( temp float) 398 0:62 'color' ( temp int) 399 0:? Linker Objects 400 0:? 'u' ( uniform float) 401 402