SKIP: FAILED

../../src/tint/lang/msl/writer/printer/printer.cc:500 internal compiler error: $B1: {  # root
  %arg_0:ptr<handle, texture_depth_2d_array, read> = var @binding_point(1, 0)
  %arg_1:ptr<handle, sampler_comparison, read> = var @binding_point(1, 1)
  %prevent_dce:ptr<storage, f32, read_write> = var @binding_point(2, 0)
}

%textureSampleCompare_7b5025 = func():void {
  $B2: {
    %arg_2:ptr<function, vec2<f32>, read_write> = var, vec2<f32>(1.0f)
    %arg_3:ptr<function, u32, read_write> = var, 1u
    %arg_4:ptr<function, f32, read_write> = var, 1.0f
    %8:texture_depth_2d_array = load %arg_0
    %9:sampler_comparison = load %arg_1
    %10:vec2<f32> = load %arg_2
    %11:u32 = load %arg_3
    %12:f32 = load %arg_4
    %13:f32 = textureSampleCompare %8, %9, %10, %11, %12, vec2<i32>(1i)
    %res:ptr<function, f32, read_write> = var, %13
    %15:f32 = load %res
    store %prevent_dce, %15
    ret
  }
}
%fragment_main = @fragment func():void {
  $B3: {
    %17:void = call %textureSampleCompare_7b5025
    ret
  }
}

unhandled variable address space
********************************************************************
*  The tint shader compiler has encountered an unexpected error.   *
*                                                                  *
*  Please help us fix this issue by submitting a bug report at     *
*  crbug.com/tint with the source program that triggered the bug.  *
********************************************************************
