xref: /aosp_15_r20/external/angle/third_party/glslang/src/Test/hlsl.flattenSubset2.frag (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1struct Nested { float y; Texture2D texNested; };
2struct A { Nested n; float x; };
3struct B { Nested n; Texture2D tex; };
4
5Texture2D someTex;
6
7float4 main(float4 vpos : VPOS) : COLOR0
8{
9    A a1, a2;
10    B b;
11
12    // Assignment of nested structs to nested structs
13    a1.n = a2.n;
14    b .n = a1.n;
15
16    // Assignment of nested struct to standalone
17    Nested n = b.n;
18
19    // Assignment to nestested struct members
20    a2.n.texNested = someTex;
21    a1.n.y = 1.0;
22
23    return float4(0,0,0,0);
24}
25