SKIP: FAILED

#include <metal_stdlib>
using namespace metal;
struct main_out {
  float4 position_1_1 [[position]];
};

thread uint x_4 = 0u;
thread float4 position_1 = 0.0f;
void main_1() {
  uint const x_2 = x_4;
}
vertex main_out tint_symbol(uint x_4_param [[]]) {
  x_4 = x_4_param;
  main_1();
  return {.position_1_1=position_1};
}
program_source:7:13: error: program scope variable must reside in constant address space
thread uint x_4 = 0u;
            ^
program_source:8:15: error: program scope variable must reside in constant address space
thread float4 position_1 = 0.0f;
              ^
program_source:10:14: warning: unused variable 'x_2' [-Wunused-variable]
  uint const x_2 = x_4;
             ^
program_source:12:29: error: invalid type 'uint' (aka 'unsigned int') for input declaration in a vertex function
vertex main_out tint_symbol(uint x_4_param [[]]) {
                            ^~~~~~~~~~~~~~

