#include <metal_stdlib>
using namespace metal;

struct str {
  float4 i;
};

struct tint_module_vars_struct {
  thread str* P;
};

float4 func(thread float4* const pointer) {
  return (*pointer);
}

kernel void tint_symbol() {
  thread str P = {};
  tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.P=(&P)};
  float4 const r = func((&(*tint_module_vars.P).i));
}
