mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-05-13 19:01:24 +00:00
Change ast::Array to use an ast::Expression for its `size` field. The WGSL frontend now parses the array size as an `primary_expression`, and the Resolver is responsible for validating the expression is a signed or unsigned integer, and either a literal or a non-overridable module-scope constant. The Resolver evaluates the constant value of the size expression, and so the resolved sem::Array type still has a constant size as before. Fixed: tint:1068 Fixed: tint:1117 Change-Id: Icfa141482ea1e47ea8c21a25e9eb48221f176e9a Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/63061 Auto-Submit: James Price <jrprice@google.com> Kokoro: Kokoro <noreply+kokoro@google.com> Commit-Queue: James Price <jrprice@google.com> Reviewed-by: Ben Clayton <bclayton@google.com>
15 lines
349 B
WebGPU Shading Language
15 lines
349 B
WebGPU Shading Language
let slen = 4;
|
|
let ulen = 4u;
|
|
|
|
[[stage(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>;
|
|
|
|
// Ensure that the types are compatible.
|
|
signed_literal = unsigned_constant;
|
|
signed_constant = unsigned_literal;
|
|
}
|