while being allowed to write float4(1,2,3,4) would be deluxe-support that I know from graphics-centric compilers I found another way: e.g. float4 makeFloat4(float a, float b, float c, float d){return (float4)(a, b, c, d);} this can look the same from the outside if no vector support is available and float4 is a struct with no constructors. -Jochen