1/*#pragma settings UsesPrecisionModifiers*/ 2 3uniform half4 colorGreen, colorRed; 4 5half4 main(float2 coords) { 6 float f[4] = float[4](1, 2, 3, 4); 7 half h[4] = half[4](f); 8 f = float[4](h); 9 h = half[4](f); 10 11 int3 i3[3] = int3[3](int3(1), int3(2), int3(3)); 12 short3 s3[3] = short3[3](i3); 13 i3 = int3[3](s3); 14 s3 = short3[3](i3); 15 16 half2x2 h2x2[2] = half2x2[2](half2x2(1, 2, 3, 4), half2x2(5, 6, 7, 8)); 17 float2x2 f2x2[2] = float2x2[2](h2x2); 18 f2x2 = float2x2[2](h2x2); 19 h2x2 = half2x2[2](f2x2); 20 21 return (f == h && i3 == s3 && f2x2 == h2x2) ? colorGreen : colorRed; 22} 23