SKIP: FAILED

#include <metal_stdlib>
using namespace metal;

thread half4 u = half4(1.0h);
void f() {
  int4 const v = tint_v4f16_to_v4i32(u);
}
int4 tint_v4f16_to_v4i32(half4 value) {
  return select(int4(2147483647), select(int4((-2147483647 - 1)), int4(value), (value >= half4(-65504.0h))), (value <= half4(65504.0h)));
}
program_source:4:14: error: program scope variable must reside in constant address space
thread half4 u = half4(1.0h);
             ^
program_source:6:14: warning: unused variable 'v' [-Wunused-variable]
  int4 const v = tint_v4f16_to_v4i32(u);
             ^

