struct ComputeInputs {
  @builtin(local_invocation_id)
  local_invocation_id : vec3<u32>,
  @builtin(local_invocation_index)
  local_invocation_index : u32,
  @builtin(global_invocation_id)
  global_invocation_id : vec3<u32>,
  @builtin(workgroup_id)
  workgroup_id : vec3<u32>,
  @builtin(num_workgroups)
  num_workgroups : vec3<u32>,
}

@compute @workgroup_size(1)
fn main(inputs : ComputeInputs) {
  let foo : u32 = ((((inputs.local_invocation_id.x + inputs.local_invocation_index) + inputs.global_invocation_id.x) + inputs.workgroup_id.x) + inputs.num_workgroups.x);
}
