SKIP: FAILED

<dawn>/src/tint/lang/msl/writer/printer/printer.cc:355 internal compiler error: Result = struct @align(4) {
  values:array<f32> @offset(0)
}

%b1 = block {  # root
  %tex:ptr<handle, texture_depth_2d, read> = var @binding_point(0, 0)
  %result:ptr<storage, Result, read_write> = var @binding_point(0, 1)
}

%tint_symbol = @compute @workgroup_size(1, 1, 1) func(%GlobalInvocationId:vec3<u32> [@global_invocation_id]):void -> %b2 {
  %b2 = block {
    %5:u32 = access %GlobalInvocationId, 1u
    %6:u32 = mul %5, 128u
    %7:u32 = access %GlobalInvocationId, 0u
    %8:u32 = add %6, %7
    %9:ptr<storage, f32, read_write> = access %result, 0u, %8
    %10:texture_depth_2d = load %tex
    %11:u32 = access %GlobalInvocationId, 0u
    %12:i32 = convert %11
    %13:u32 = access %GlobalInvocationId, 1u
    %14:i32 = convert %13
    %15:vec2<i32> = construct %12, %14
    %16:f32 = textureLoad %10, %15, 0i
    store %9, %16
    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.  *
********************************************************************
