#include <metal_stdlib>

using namespace metal;
struct S {
  int i;
};

struct tint_private_vars_struct {
  S V;
};

void main_1(thread tint_private_vars_struct* const tint_private_vars) {
  int i = 0;
  i = (*(tint_private_vars)).V.i;
  return;
}

kernel void tint_symbol() {
  thread tint_private_vars_struct tint_private_vars = {};
  main_1(&(tint_private_vars));
  return;
}

