SKIP: FAILED



Validation Failure:
#include <metal_stdlib>

using namespace metal;
void textureLoad_1a062f() {
  float4 res = arg_0.read(int2(), 1);
}

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

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

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


tint_vRBu5V.metal:5:16: error: use of undeclared identifier 'arg_0'
  float4 res = arg_0.read(int2(), 1);
               ^
1 error generated.
