#include <metal_stdlib>

using namespace metal;
struct tint_symbol_2 {
  int loc0 [[user(locn0)]] [[flat]];
  uint loc1 [[user(locn1)]] [[flat]];
  float loc2 [[user(locn2)]];
  float4 loc3 [[user(locn3)]];
};

void tint_symbol_inner(int loc0, uint loc1, float loc2, float4 loc3) {
  int const i = loc0;
  uint const u = loc1;
  float const f = loc2;
  float4 const v = loc3;
}

fragment void tint_symbol(tint_symbol_2 tint_symbol_1 [[stage_in]]) {
  tint_symbol_inner(tint_symbol_1.loc0, tint_symbol_1.loc1, tint_symbol_1.loc2, tint_symbol_1.loc3);
  return;
}

