Merge pull request #2976 from jeremy-lunarg/hayes-fix-2975
[platform/upstream/glslang.git] / Test / hlsl.init.frag
1 static float4 a1 = float4(1, 0.5, 0, 1), b1 = float4(2.0, 2.5, 2.1, 2.2);
2 static float4 a1i = {1, 0.5, 0, 1}, b1i = {2.0, 2.5, 2.1, 2.2};
3 static float a2 = 0.2, b2;
4 static float a3, b3 = 0.3;
5 static float a4, b4 = 0.4, c4;
6 static float a5 = 0.5, b5, c5 = 1.5;
7 \r
8 struct Single1 { int f; };\r
9 static Single1 single1 = { 10 };\r
10 \r
11 struct Single2 { uint2 v; };\r
12 static Single2 single2 = { { 1, 2 } };\r
13 \r
14 struct Single3 { Single1 s1; };\r
15 static Single3 single3 = { { 3 } };\r
16 \r
17 struct Single4 { Single2 s1; };\r
18 static Single4 single4 = { { { 4u, 5u } } };\r
19
20 float4 ShaderFunction(float4 input) : COLOR0
21 {
22     float4 a2 = float4(0.2, 0.3, 0.4, 0.5);
23     struct S1 {
24         float f;
25         int i;
26     };
27     struct S2 {
28         int  j;
29         float g;
30         S1 s1;
31     };
32     S2 s2i = { 9, a5, { (a3,a4), 12} }, s2 = S2(9, a5, S1((a3,a4), 12));
33     float a8 = (a2, b2), a9 = a5;
34
35     return input * a1;
36 }
37
38 cbuffer Constants\r
39 {\r
40     float a = 1.0f, b, c = 2.0f;\r
41 };\r