#include <metal_stdlib>

using namespace metal;
struct tint_private_vars_struct {
  int t;
};

int2 m(thread tint_private_vars_struct* const tint_private_vars) {
  (*(tint_private_vars)).t = 1;
  return int2((*(tint_private_vars)).t);
}

void f(thread tint_private_vars_struct* const tint_private_vars) {
  int2 const tint_symbol = m(tint_private_vars);
  uint2 v = uint2(tint_symbol);
}

