1vec4 main(vec2 coords) { 2 // it's ok to mix aliased with non-aliased types 3 bvec2 ok1 = bool2(true); 4 int3 ok2 = ivec3(1); 5 float2x2 ok3 = mat2(1); 6 7 // these all generate errors, and the error messages should refer to the type as written, 8 // preserving aliases 9 vec2 bad1 = 0; 10 int bad2 = mat2(0); 11 bvec2 bad3 = vec2(0); 12 float2 bad4 = vec3(0); 13 mat4 bad5 = float3x3(0); 14 return ivec4(1); 15} 16 17/*%%* 18expected 'vec2', but found 'int' 19expected 'int', but found 'mat2' 20expected 'bvec2', but found 'vec2' 21expected 'float2', but found 'vec3' 22expected 'mat4', but found 'float3x3' 23expected 'vec4', but found 'ivec4' 24*%%*/ 25