@group(0) @binding(0) var<uniform> a : array<mat3x4<f32>, 4>;
@group(0) @binding(1) var<storage, read_write> s: f32;

var<private> counter = 0;
fn i() -> i32 { counter++; return counter; }

@compute @workgroup_size(1)
fn f() {
  let p_a       = &a;
  let p_a_i     = &((*p_a)[i()]);
  let p_a_i_i   = &((*p_a_i)[i()]);

  let l_a       : array<mat3x4<f32>, 4> = *p_a;
  let l_a_i     : mat3x4<f32>           = *p_a_i;
  let l_a_i_i   : vec4<f32>             = *p_a_i_i;

  s = (*p_a_i_i).x + l_a[0][0].x + l_a_i[0].x + l_a_i_i.x;
}
