SKIP: FAILED



Validation Failure:
#include <metal_stdlib>

using namespace metal;
void textureSample_e53267() {
  float4 res = arg_0.sample(arg_1, float3());
}

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


tint_HSAV5Q.metal:5:16: error: use of undeclared identifier 'arg_0'
  float4 res = arg_0.sample(arg_1, float3());
               ^
tint_HSAV5Q.metal:5:29: error: use of undeclared identifier 'arg_1'
  float4 res = arg_0.sample(arg_1, float3());
                            ^
2 errors generated.
