SKIP: FAILED

#include <metal_stdlib>
using namespace metal;

threadgroup int a;
threadgroup float4 b;
threadgroup float2x2 c;
void foo() {
  a = tint_div_i32(a, 2);
  b = (b * float4x4(float4(0.0f), float4(0.0f), float4(0.0f), float4(0.0f)));
  c = (c * 2.0f);
}
int tint_div_i32(int lhs, int rhs) {
  return (lhs / select(rhs, 1, ((rhs == 0) | ((lhs == (-2147483647 - 1)) & (rhs == -1)))));
}
program_source:4:17: error: program scope variable must reside in constant address space
threadgroup int a;
                ^
program_source:5:20: error: program scope variable must reside in constant address space
threadgroup float4 b;
                   ^
program_source:6:22: error: program scope variable must reside in constant address space
threadgroup float2x2 c;
                     ^

