John Kessenich | 71facdf | 2017-05-17 18:28:19 -0600 | [diff] [blame] | 1 | #version 450
|
| 2 |
|
| 3 | layout(location = 1) in vec4 in1;
|
John Kessenich | 7c9129b | 2017-05-24 23:10:28 -0600 | [diff] [blame] | 4 | in vec4 in2; // ERROR
|
John Kessenich | 71facdf | 2017-05-17 18:28:19 -0600 | [diff] [blame] | 5 | layout(location = 3) in vec4 in3;
|
| 6 |
|
| 7 | layout(location = 1) out vec4 out1;
|
John Kessenich | 7c9129b | 2017-05-24 23:10:28 -0600 | [diff] [blame] | 8 | out vec4 out2; // ERROR
|
John Kessenich | 71facdf | 2017-05-17 18:28:19 -0600 | [diff] [blame] | 9 | layout(location = 3) out vec4 out3;
|
| 10 |
|
John Kessenich | 1d585ac | 2017-05-20 12:14:13 -0600 | [diff] [blame] | 11 | layout(location = 10) out inb1 {
|
| 12 | vec4 a;
|
| 13 | vec4 b;
|
| 14 | } inbi1;
|
| 15 | out inb2 {
|
| 16 | layout(location = 12) vec4 a;
|
| 17 | layout(location = 13) vec4 b;
|
| 18 | } inbi2;
|
John Kessenich | 7c9129b | 2017-05-24 23:10:28 -0600 | [diff] [blame] | 19 | out inb3 { // ERROR
|
John Kessenich | 1d585ac | 2017-05-20 12:14:13 -0600 | [diff] [blame] | 20 | vec4 a;
|
| 21 | vec4 b;
|
| 22 | } inbi3;
|
| 23 |
|
| 24 | layout(location = 14) out struct S1 { vec4 a; } s1;
|
John Kessenich | 7c9129b | 2017-05-24 23:10:28 -0600 | [diff] [blame] | 25 | out struct S2 { vec4 a; } s2; // ERROR
|
John Kessenich | 1d585ac | 2017-05-20 12:14:13 -0600 | [diff] [blame] | 26 |
|
| 27 | struct SS { int a; };
|
| 28 | out layout(location = 15) SS ss1;
|
John Kessenich | 7c9129b | 2017-05-24 23:10:28 -0600 | [diff] [blame] | 29 | out SS ss2; // ERROR
|
| 30 |
|
| 31 | out gl_PerVertex {
|
| 32 | vec4 gl_Position;
|
| 33 | float gl_ClipDistance[2];
|
| 34 | };
|
John Kessenich | 71facdf | 2017-05-17 18:28:19 -0600 | [diff] [blame] | 35 |
|
| 36 | void main()
|
| 37 | {
|
John Kessenich | 7c9129b | 2017-05-24 23:10:28 -0600 | [diff] [blame] | 38 | gl_ClipDistance[0] = 1.0;
|
John Kessenich | 71facdf | 2017-05-17 18:28:19 -0600 | [diff] [blame] | 39 | }
|