#pragma MSP stage(vertex) layout(location=0) in vec4 position; vec2 scale(vec2 v, float s) { return v*s; } void main() { gl_Position = vec4(scale(position.xy, 2), 0.0, 1.0); } /* Expected output: vertex layout(location=0) in vec4 position; void main() { gl_Position = vec4(position.xy*2.0, 0.0, 1.0); } */