SKIP: FAILED

../../src/tint/lang/msl/writer/printer/printer.cc:1257 internal compiler error: VertexOutputs = struct @align(16) {
  loc0:i32 @offset(0), @location(0), @interpolate(flat)
  loc1:u32 @offset(4), @location(1), @interpolate(flat)
  loc2:f32 @offset(8), @location(2)
  loc3:vec4<f32> @offset(16), @location(3)
  position:vec4<f32> @offset(32), @builtin(position)
}

%tint_symbol = @vertex func():VertexOutputs {
  $B1: {
    ret VertexOutputs(1i, 1u, 1.0f, vec4<f32>(1.0f, 2.0f, 3.0f, 4.0f), vec4<f32>(0.0f))
  }
}

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.  *
********************************************************************
