4 uniform vec4 colorGreen;
17 S returns_a_struct_S() {
23 S constructs_a_struct_S() {
26 float accepts_a_struct_fS(S s) {
27 return s.x + float(s.y);
29 void modifies_a_struct_vS(inout S s) {
34 S s = returns_a_struct_S();
35 float x = accepts_a_struct_fS(s);
36 modifies_a_struct_vS(s);
37 S expected = constructs_a_struct_S();
41 n1.a = returns_a_struct_S();
45 modifies_a_struct_vS(n3.b);
46 Compound c1 = Compound(vec4(1.0, 2.0, 3.0, 4.0), ivec3(5, 6, 7));
47 Compound c2 = Compound(vec4(colorGreen.y, 2.0, 3.0, 4.0), ivec3(5, 6, 7));
48 Compound c3 = Compound(vec4(colorGreen.x, 2.0, 3.0, 4.0), ivec3(5, 6, 7));
49 bool valid = (((((((((x == 3.0 && s.x == 2.0) && s.y == 3) && s == expected) && s == S(2.0, 3)) && s != returns_a_struct_S()) && n1 == n2) && n1 != n3) && n3 == Nested(S(1.0, 2), S(2.0, 3))) && c1 == c2) && c2 != c3;
50 return valid ? colorGreen : colorRed;