From 973c82829861fd6a3eb924c29661b4f363ca05b2 Mon Sep 17 00:00:00 2001 From: James Price Date: Mon, 25 May 2026 16:48:31 -0400 Subject: [PATCH] Add validation coverage for `const SHIFT override` Test that we correctly reject excessive shift amounts when the LHS is constant and the RHS is an override. Missing coverage as per a recent Tint bug. --- .../shader/validation/expression/binary/bitwise_shift.spec.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/webgpu/shader/validation/expression/binary/bitwise_shift.spec.ts b/src/webgpu/shader/validation/expression/binary/bitwise_shift.spec.ts index dc5278dbf77c..9f7bae5b2028 100644 --- a/src/webgpu/shader/validation/expression/binary/bitwise_shift.spec.ts +++ b/src/webgpu/shader/validation/expression/binary/bitwise_shift.spec.ts @@ -303,6 +303,7 @@ g.test('partial_eval_errors') u .combine('op', ['<<', '>>'] as const) .combine('type', ['i32', 'u32'] as const) + .combine('lhs', ['const', 'var'] as const) .combine('vectorize', [undefined, 2, 3, 4] as const) .beginSubcases() .combine('stage', ['shader', 'pipeline'] as const) @@ -320,7 +321,7 @@ g.test('partial_eval_errors') const wgsl = ` override o = 0u; fn foo() -> ${vecType} { - var v : ${vecType} = ${vectorize('0', vec_size)}; + ${t.params.lhs} v : ${vecType} = ${vectorize('0', vec_size)}; return v ${t.params.op} ${vectorize(rhs, vec_size)}; }`;