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);
}