uniform half4 colorRed, colorGreen;

struct S {
    half i;
    half j;
};

half4 main(float2 coords) {
    // All of these assignments can be preserved.
    half4 x = half4(3, 2, 1, 0);
    x.xyz = x.zyx;

    S s;
    s.i = 2;
    s.j = 2;
    s.i = s.j;
    s.j = s.i;

    half a[2];
    a[0] = 1;
    a[1] = 0;
    a[1] = a[0];

    // All of these assignments should be eliminated.
    x.wy = x.wy;
    x.xyz = x.xyz;
    x = x;
    s.i = s.i;
    s.j = s.j;
    a[0] = a[0];
    a[1] = a[1];

    return half4(x.w, s.i / s.j, a[0] - a[1], a[0] * a[1]);
}
