James Price 3b671cb377 wgsl: Separate struct members with commas
Use of semicolons is still supported, but deprecated.

Also updates the parsing methods for structures to better match the
WGSL grammar.

Bug: tint:1475
Change-Id: I7675ba42c13f91080b0ac173c352e0092021f80b
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/84380
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: James Price <jrprice@google.com>
2022-03-28 14:31:22 +00:00

37 lines
591 B
WebGPU Shading Language

struct Inner {
@size(16) x : i32,
};
struct S {
a : vec3<i32>,
b : i32,
c : vec3<u32>,
d : u32,
e : vec3<f32>,
f : f32,
g : vec2<i32>,
h : vec2<i32>,
i : mat2x3<f32>,
j : mat3x2<f32>,
@align(16) k : Inner,
@align(16) l : array<Inner, 4>,
};
@binding(0) @group(0) var<uniform> s : S;
@stage(compute) @workgroup_size(1)
fn main() {
let a = s.a;
let b = s.b;
let c = s.c;
let d = s.d;
let e = s.e;
let f = s.f;
let g = s.g;
let h = s.h;
let i = s.i;
let j = s.j;
let k = s.k;
let l = s.l;
}