struct VertexInputs0 {
  @builtin(vertex_index)
  vertex_index : u32,
  @location(0)
  loc0 : i32,
}

struct VertexInputs1 {
  @location(2)
  loc2 : f32,
  @location(3)
  loc3 : vec4<f32>,
}

@stage(vertex)
fn main(inputs0 : VertexInputs0, @location(1) loc1 : u32, @builtin(instance_index) instance_index : u32, inputs1 : VertexInputs1) -> @builtin(position) vec4<f32> {
  let foo : u32 = (inputs0.vertex_index + instance_index);
  let i : i32 = inputs0.loc0;
  let u : u32 = loc1;
  let f : f32 = inputs1.loc2;
  let v : vec4<f32> = inputs1.loc3;
  return vec4<f32>();
}