struct VertexOutput {
  @builtin(position)
  pos : vec4<f32>;
  @location(0) @interpolate(flat)
  loc0 : i32;
}

fn foo(x : f32) -> VertexOutput {
  return VertexOutput(vec4<f32>(x, x, x, 1.0), 42);
}

@stage(vertex)
fn vert_main1() -> VertexOutput {
  return foo(0.5);
}

@stage(vertex)
fn vert_main2() -> VertexOutput {
  return foo(0.25);
}
