SKIP: FAILED

#include <metal_stdlib>
using namespace metal;

kernel void f() {
  int3 const a = int3(1, 2, 3);
  int const b = 4;
  int3 const r = tint_div_v3i32(a, int3(b));
}
int3 tint_div_v3i32(int3 lhs, int3 rhs) {
  return (lhs / select(rhs, int3(1), ((rhs == int3(0)) | ((lhs == int3((-2147483647 - 1))) & (rhs == int3(-1))))));
}
program_source:7:18: error: use of undeclared identifier 'tint_div_v3i32'
  int3 const r = tint_div_v3i32(a, int3(b));
                 ^

