skia2/resources/sksl/shared/ArrayNarrowingConversions.sksl
John Stiles adb3eac15c Add tests for array assignment with narrowing conversions.
An assignment like `mediump int a[2] = myHighpIntArray;` should succeed
now that the previous CLs have landed; originally, this would have
caused a type-mismatch error.

Change-Id: I86ffe6a21d0c7fbe289eef95aebc2605412566aa
Bug: skia:12248
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/437740
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-08-11 12:56:40 +00:00

25 lines
609 B
Plaintext

/*#pragma settings AllowNarrowingConversions*/
uniform half4 colorGreen, colorRed;
half4 main(float2 coords) {
int i2[2] = int[2](1, 2);
short s2[2] = short[2](1, 2);
float f2[2] = float[2](1, 2);
half h2[2] = half[2](1, 2);
i2 = s2;
s2 = i2;
f2 = h2;
h2 = f2;
const int ci2[2] = int[2](1, 2);
const short cs2[2] = short[2](1, 2);
const float cf2[2] = float[2](1, 2);
const half ch2[2] = half[2](1, 2);
return (i2 == s2 && f2 == h2 && ci2 == cs2 && cf2 == ch2 && i2 == cs2 && h2 == cf2)
? colorGreen
: colorRed;
}