SKIP: FAILED



Validation Failure:
#include <metal_stdlib>

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

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

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

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


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