Skip to content

Tag swift-6.0.3-RELEASE cannot be built with Xcode 16.2 #11018

@byron-hawkins

Description

@byron-hawkins

Attempting to build a clean checkout of tag swift-6.0.3-RELEASE with a fresh install of Xcode 16.2 results in a known error. In clang built from any swift-6.0.x-* tag, this compile error is not defined at all, but in clang built on any swift-6.1-*tag, this compile error is defined and implemented. According to the official Xcode wikipedia page, Xcode 16.2 is based on swift-6.0.3-RELEASE, but clearly this is incorrect, because:

  • an Xcode 16.2 build of LLVM on any swift-6.0.x-* tag will fail with a compile error about "non-private labels" and cfi_startproc / cfi_endproc pairs
  • no swift-6.0.x-* tag contains the code from which clang generates that "non-private labels" error

We conclude that the swift-6.0.3-RELEASE contains a snapshot of LLVM that is in no way relevant to, or coherent with, the default Xcode 16.2 toolchain.

As a workaround, we are using Xcode 16.4 with tag swift-6.1.2-RELEASE, which for our purposes makes a sufficient correspondence between the default Xcode toolchain and the open-source LLVM build.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions