#include <metal_stdlib>
using namespace metal;
struct S1 {
  int i;
};
struct S2 {
  S1 s1;
};
struct S3 {
  S2 s2;
};
struct tint_module_vars_struct {
  thread S3* P;
  device int* out;
};

kernel void tint_symbol(device int* out [[buffer(0)]]) {
  thread S3 P = S3{.s2=S2{.s1=S1{.i=42}}};
  tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.P=(&P), .out=out};
  (*tint_module_vars.out) = (*tint_module_vars.P).s2.s1.i;
}
