SKIP: FAILED

../../src/tint/lang/msl/writer/printer/printer.cc:1257 internal compiler error: main_out = struct @align(16) {
  x_GLF_color_1:vec4<f32> @offset(0), @location(0)
}

$B1: {  # root
  %x_GLF_color:ptr<private, vec4<f32>, read_write> = var
}

%main_1 = func():void {
  $B2: {
    %v1:ptr<function, vec2<f32>, read_write> = var
    %v2:ptr<function, vec2<f32>, read_write> = var
    store %v1, vec2<f32>(1.0f, -1.0f)
    %5:vec2<f32> = load %v1
    %x_22:vec2<f32> = let %5
    %7:vec2<f32> = sinh %x_22
    %8:vec2<f32> = step vec2<f32>(0.40000000596046447754f), %7
    store %v2, %8
    %9:f32 = load_vector_element %v2, 0u
    %x_27:f32 = let %9
    %11:f32 = load_vector_element %v2, 1u
    %x_29:f32 = let %11
    %13:f32 = load_vector_element %v2, 1u
    %x_31:f32 = let %13
    %15:f32 = load_vector_element %v2, 0u
    %x_33:f32 = let %15
    %17:vec4<f32> = construct %x_27, %x_29, %x_31, %x_33
    store %x_GLF_color, %17
    ret
  }
}
%tint_symbol = @fragment func():main_out {
  $B3: {
    %19:void = call %main_1
    %20:vec4<f32> = load %x_GLF_color
    %21:main_out = construct %20
    ret %21
  }
}

invalid entry point IO struct uses
********************************************************************
*  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.  *
********************************************************************
