SKIP: FAILED



Validation Failure:
#include <metal_stdlib>

using namespace metal;
void textureNumLayers_22e53b() {
  int res = int(arg_0.get_array_size());
}

vertex void vertex_main() {
  textureNumLayers_22e53b();
  return;
}

fragment void fragment_main() {
  textureNumLayers_22e53b();
  return;
}

kernel void compute_main() {
  textureNumLayers_22e53b();
  return;
}


tint_HhSnq0.metal:5:17: error: use of undeclared identifier 'arg_0'
  int res = int(arg_0.get_array_size());
                ^
1 error generated.
