struct Inner {
  x : i32,
}

struct S {
  a : vec3<i32>,
  b : i32,
  c : vec3<u32>,
  d : u32,
  e : vec3<f32>,
  f : f32,
  g : mat2x3<f32>,
  h : mat3x2<f32>,
  i : Inner,
  j : array<Inner, 4>,
}

@binding(0) @group(0) var<storage, write> s : S;

@stage(compute) @workgroup_size(1)
fn main() {
  s.a = vec3<i32>();
  s.b = i32();
  s.c = vec3<u32>();
  s.d = u32();
  s.e = vec3<f32>();
  s.f = f32();
  s.g = mat2x3<f32>();
  s.h = mat3x2<f32>();
  s.i = Inner();
  s.j = array<Inner, 4>();
}
