Skip to content

Commit 9ff8881

Browse files
committed
ci(macos): pin xlings llvm@20.1.7 (llvm 22.1.8 libc++ ABI link breakage)
xlings' default llvm moved to 22.1.8, whose libc++ headers reference std::__1::__hash_memory — undefined at link on macOS (ld64.lld), failing any gtest-using e2e (78_test_main_combinations). Pin the known-good 20.1.7 first, keep latest as fallback. Real fix (link against the toolchain's own libc++) belongs to the hermetic-toolchain-link track (.agents/docs/2026-07-07-hermetic-toolchain-link-model-design.md). The version-discovery from the previous commit stays (picks whatever is installed).
1 parent 139503a commit 9ff8881

1 file changed

Lines changed: 4 additions & 1 deletion

File tree

.github/workflows/ci-macos.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,10 @@ jobs:
5858
5959
- name: Install LLVM via xlings
6060
run: |
61-
xlings install llvm -y || xlings install llvm@20.1.7 -y
61+
# Pin 20.1.7: llvm 22.1.8's libc++ headers reference __hash_memory,
62+
# absent from the libc++ the link resolves on macOS (ld64.lld
63+
# undefined symbol; hermetic-link follow-up tracks the real fix).
64+
xlings install llvm@20.1.7 -y || xlings install llvm -y
6265
# Verify clang++ is available
6366
LLVM_ROOT=$(find "$HOME/.xlings" -path "*/xpkgs/xim-x-llvm/*/bin/clang++" | head -1 | xargs dirname | xargs dirname)
6467
echo "LLVM_ROOT=$LLVM_ROOT"

0 commit comments

Comments
 (0)