| @group(0) @binding(0) var<storage, read_write> s: f32; |
| |
| const slen = 4; |
| const ulen = 4u; |
| |
| @fragment |
| fn main() { |
| var signed_literal : array<f32, 4>; |
| var unsigned_literal : array<f32, 4u>; |
| var signed_constant : array<f32, slen>; |
| var unsigned_constant : array<f32, ulen>; |
| var shr_const_expr : array<f32, 1<<2>; |
| |
| // Ensure that the types are compatible. |
| unsigned_literal = signed_literal; |
| signed_constant = signed_literal; |
| unsigned_constant = signed_literal; |
| shr_const_expr = signed_literal; |
| |
| s = signed_literal[0] + unsigned_literal[0] + signed_constant[0] + unsigned_constant[0] + |
| shr_const_expr[0]; |
| } |