-
Notifications
You must be signed in to change notification settings - Fork 345
Description
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" andcfi_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.