| |
| out vec4 sk_FragColor; |
| uniform vec4 colorGreen; |
| uniform vec4 colorRed; |
| uniform mat2 testMatrix2x2; |
| vec4 main() { |
| bool ok = true; |
| int i = 5; |
| ++i; |
| ok = ok && i == 6; |
| ok = ok && ++i == 7; |
| ok = ok && --i == 6; |
| --i; |
| ok = ok && i == 5; |
| float f = 0.5; |
| ++f; |
| ok = ok && f == 1.5; |
| ok = ok && ++f == 2.5; |
| ok = ok && --f == 1.5; |
| --f; |
| ok = ok && f == 0.5; |
| vec2 f2 = vec2(0.5); |
| ++f2.x; |
| ok = ok && f2.x == 1.5; |
| ok = ok && ++f2.x == 2.5; |
| ok = ok && --f2.x == 1.5; |
| --f2.x; |
| ok = ok && f2.x == 0.5; |
| ++f2; |
| ok = ok && f2 == vec2(1.5); |
| ok = ok && ++f2 == vec2(2.5); |
| ok = ok && --f2 == vec2(1.5); |
| --f2; |
| ok = ok && f2 == vec2(0.5); |
| ivec4 i4 = ivec4(7, 8, 9, 10); |
| ++i4; |
| ok = ok && i4 == ivec4(8, 9, 10, 11); |
| ok = ok && ++i4 == ivec4(9, 10, 11, 12); |
| ok = ok && --i4 == ivec4(8, 9, 10, 11); |
| --i4; |
| ok = ok && i4 == ivec4(7, 8, 9, 10); |
| mat3 m3x3 = mat3(1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0); |
| ++m3x3; |
| ok = ok && m3x3 == mat3(2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0); |
| ok = ok && ++m3x3 == mat3(3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0); |
| ok = ok && --m3x3 == mat3(2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0); |
| --m3x3; |
| ok = ok && m3x3 == mat3(1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0); |
| ok = ok && colorGreen.x != 1.0; |
| ok = ok && -1.0 == -colorGreen.y; |
| ok = ok && vec4(0.0, -1.0, 0.0, -1.0) == -colorGreen; |
| ok = ok && mat2(-1.0, -2.0, -3.0, -4.0) == -testMatrix2x2; |
| ivec2 iv = ivec2(i, -i); |
| ok = ok && -i == -5; |
| ok = ok && -iv == ivec2(-5, 5); |
| return ok ? colorGreen : colorRed; |
| } |