vkd3d-shader/hlsl: Use a block in hlsl_normalize_binary_exprs().
[vkd3d.git] / tests / hlsl / array-dimension.shader_test
blob672f035a189f096556ebd998f158fc3b072ed57d
1 % Test what kinds of expressions are valid array dimensions.
3 [pixel shader todo]
4 float4 main() : sv_target
6     const int dim = 4;
7     float a[2 * 2] = {0.1, 0.2, 0.3, 0.4};
8 #ifdef __hlsl_dx_compiler
9     /* float array dimensions are not valid. */
10     float b[4] = a;
11 #else
12     float b[4.1] = a;
13 #endif
14     float c[dim] = b;
15     float d[true] = {c[0]};
16     float e[65536];
17     return float4(d[0], c[0], c[1], c[3]);
20 [test]
21 todo(sm<6) draw quad
22 probe (0, 0) rgba (0.1, 0.1, 0.2, 0.4)
25 [pixel shader fail]
26 float4 fun() { return 0; };
28 float a[CompileShader(ps_2_0, main())];
30 float4 main() : sv_target { return 0; }