SKIP: FAILED



Validation Failure:
#include <metal_stdlib>

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

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

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

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


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