blob: 3f8125cbf86eaecad5e556cc8328f0ad149ed4b1 [file] [log] [blame]
SKIP: FAILED
void tint_symbol() {
const int idx = 3;
const int x = int2(1, 2)[idx];
}
void tint_symbol_1() {
const int idx = 4;
const float2 x = float2x2(float2(1.0f, 2.0f), float2(3.0f, 4.0f))[idx];
}
void fixed_size_array() {
const int arr[2] = {1, 2};
const int idx = 3;
const int x = arr[idx];
}
ByteAddressBuffer rarr : register(t0, space0);
void runtime_size_array() {
const int idx = -1;
const float x = asfloat(rarr.Load((4u * uint(idx))));
}
[numthreads(1, 1, 1)]
void f() {
tint_symbol();
tint_symbol_1();
fixed_size_array();
runtime_size_array();
return;
}
DXC validation failure:
shader.hlsl:3:28: error: vector element index '3' is out of bounds
const int x = int2(1, 2)[idx];
^
shader.hlsl:8:69: error: matrix row index '4' is out of bounds
const float2 x = float2x2(float2(1.0f, 2.0f), float2(3.0f, 4.0f))[idx];
^
shader.hlsl:14:17: error: array index 3 is out of bounds
const int x = arr[idx];
^
shader.hlsl:12:3: note: array 'arr' declared here
const int arr[2] = {1, 2};
^