| #version 450 | |
| layout(location = 1) in vec4 in1; | |
| in vec4 in2; // ERROR | |
| layout(location = 3) in vec4 in3; | |
| layout(location = 1) out vec4 out1; | |
| out vec4 out2; // ERROR | |
| layout(location = 3) out vec4 out3; | |
| layout(location = 10) out inb1 { | |
| vec4 a; | |
| vec4 b; | |
| } inbi1; | |
| out inb2 { | |
| layout(location = 12) vec4 a; | |
| layout(location = 13) vec4 b; | |
| } inbi2; | |
| out inb3 { // ERROR | |
| vec4 a; | |
| vec4 b; | |
| } inbi3; | |
| layout(location = 14) out struct S1 { vec4 a; } s1; | |
| out struct S2 { vec4 a; } s2; // ERROR | |
| struct SS { int a; }; | |
| out layout(location = 15) SS ss1; | |
| out SS ss2; // ERROR | |
| out gl_PerVertex { | |
| vec4 gl_Position; | |
| float gl_ClipDistance[2]; | |
| }; | |
| void main() | |
| { | |
| gl_ClipDistance[0] = 1.0; | |
| } |