| #version 460 | |
| layout (location = 0) in vec4 io; | |
| out vec4 o; | |
| // default uniforms will be gathered into a uniform block | |
| uniform vec4 a; // declared in both stages with different types | |
| uniform float test; // declared twice in this compilation unit | |
| uniform vec2 test; | |
| vec4 foo() { | |
| return a + vec4(test); | |
| } | |
| void main() { | |
| o = io + foo(); | |
| } |