1*c8dee2aaSAndroid Build Coastguard Workeruniform half4 colorGreen, colorRed; 2*c8dee2aaSAndroid Build Coastguard Worker 3*c8dee2aaSAndroid Build Coastguard Workerhalf4 main(float2 c) { 4*c8dee2aaSAndroid Build Coastguard Worker bool ok = true; 5*c8dee2aaSAndroid Build Coastguard Worker 6*c8dee2aaSAndroid Build Coastguard Worker // Postfix ++ and -- (scalar int). 7*c8dee2aaSAndroid Build Coastguard Worker int i = 5; 8*c8dee2aaSAndroid Build Coastguard Worker i++; 9*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (i++ == 6); 10*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (i == 7); 11*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (i-- == 7); 12*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (i == 6); 13*c8dee2aaSAndroid Build Coastguard Worker i--; 14*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (i == 5); 15*c8dee2aaSAndroid Build Coastguard Worker 16*c8dee2aaSAndroid Build Coastguard Worker // Postfix ++ and -- (scalar float). 17*c8dee2aaSAndroid Build Coastguard Worker float f = 0.5; 18*c8dee2aaSAndroid Build Coastguard Worker f++; 19*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f++ == 1.5); 20*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f == 2.5); 21*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f-- == 2.5); 22*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f == 1.5); 23*c8dee2aaSAndroid Build Coastguard Worker f--; 24*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f == 0.5); 25*c8dee2aaSAndroid Build Coastguard Worker 26*c8dee2aaSAndroid Build Coastguard Worker // Postfix ++ and -- (vector-component float). 27*c8dee2aaSAndroid Build Coastguard Worker float2 f2 = float2(0.5); 28*c8dee2aaSAndroid Build Coastguard Worker f2.x++; 29*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f2.x++ == 1.5); 30*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f2.x == 2.5); 31*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f2.x-- == 2.5); 32*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f2.x == 1.5); 33*c8dee2aaSAndroid Build Coastguard Worker f2.x--; 34*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f2.x == 0.5); 35*c8dee2aaSAndroid Build Coastguard Worker 36*c8dee2aaSAndroid Build Coastguard Worker // Postfix ++ and -- (vector float). 37*c8dee2aaSAndroid Build Coastguard Worker f2++; 38*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f2++ == float2(1.5)); 39*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f2 == float2(2.5)); 40*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f2-- == float2(2.5)); 41*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f2 == float2(1.5)); 42*c8dee2aaSAndroid Build Coastguard Worker f2--; 43*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (f2 == float2(0.5)); 44*c8dee2aaSAndroid Build Coastguard Worker 45*c8dee2aaSAndroid Build Coastguard Worker // Postfix ++ and -- (vector int). 46*c8dee2aaSAndroid Build Coastguard Worker int4 i4 = int4(7, 8, 9, 10); 47*c8dee2aaSAndroid Build Coastguard Worker i4++; 48*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (i4++ == int4(8, 9, 10, 11)); 49*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (i4 == int4(9, 10, 11, 12)); 50*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (i4-- == int4(9, 10, 11, 12)); 51*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (i4 == int4(8, 9, 10, 11)); 52*c8dee2aaSAndroid Build Coastguard Worker i4--; 53*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (i4 == int4(7, 8, 9, 10)); 54*c8dee2aaSAndroid Build Coastguard Worker 55*c8dee2aaSAndroid Build Coastguard Worker // Postfix ++ and -- (matrix). 56*c8dee2aaSAndroid Build Coastguard Worker float3x3 m3x3 = float3x3(1, 2, 3, 4, 5, 6, 7, 8, 9); 57*c8dee2aaSAndroid Build Coastguard Worker m3x3++; 58*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (m3x3++ == float3x3(2, 3, 4, 5, 6, 7, 8, 9, 10)); 59*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (m3x3 == float3x3(3, 4, 5, 6, 7, 8, 9, 10, 11)); 60*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (m3x3-- == float3x3(3, 4, 5, 6, 7, 8, 9, 10, 11)); 61*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (m3x3 == float3x3(2, 3, 4, 5, 6, 7, 8, 9, 10)); 62*c8dee2aaSAndroid Build Coastguard Worker m3x3--; 63*c8dee2aaSAndroid Build Coastguard Worker ok = ok && (m3x3 == float3x3(1, 2, 3, 4, 5, 6, 7, 8, 9)); 64*c8dee2aaSAndroid Build Coastguard Worker 65*c8dee2aaSAndroid Build Coastguard Worker return ok ? colorGreen : colorRed; 66*c8dee2aaSAndroid Build Coastguard Worker} 67