struct S {
  a : i32,
  b : vec4<f32>,
  c : mat2x2<f32>,
}

@group(0) @binding(0) var<storage, read_write> v : S;

var<private> i : u32;

fn idx1() -> i32 {
  i += 1u;
  return 1;
}

fn idx2() -> i32 {
  i += 2u;
  return 1;
}

fn idx3() -> i32 {
  i += 3u;
  return 1;
}

fn foo() {
  var a = array<f32, 4>();
  for(a[idx1()] *= 2.0; (a[idx2()] < 10.0); a[idx3()] += 1.0) {
  }
}
