| 28 Nov 2025 |
Sarah Clark | Here's the import crash:
0 ??? 0x0 ???
1 libpython3.13.dylib 0x103b950d8 state_fini + 228
2 libpython3.13.dylib 0x103b92828 _sre_SRE_Pattern_match + 712
3 libpython3.13.dylib 0x1038a3cd0 method_vectorcall_FASTCALL_KEYWORDS_METHOD + 188
4 libpython3.13.dylib 0x1038938c8 PyObject_VectorcallMethod + 168
5 libpython3.13.dylib 0x1039f242c check_matched + 112
6 libpython3.13.dylib 0x1039eebb8 warn_explicit + 1368
7 libpython3.13.dylib 0x1039f120c do_warn + 176
8 libpython3.13.dylib 0x1039ee158 PyErr_WarnFormat + 108
9 libpython3.13.dylib 0x10395549c _PyType_FromMetaclass_impl + 3940
10 _sentencepiece.cpython-313-darwin.so 0x12a79e4a4 SwigPyPacked_TypeOnce() + 104
11 _sentencepiece.cpython-313-darwin.so 0x12a77e738 PyInit__sentencepiece + 1244
12 libpython3.13.dylib 0x103ab0c38 _PyImport_RunModInitFunc + 100
13 libpython3.13.dylib 0x103aac6e0 import_run_extension + 192
14 libpython3.13.dylib 0x103aaf490 _imp_create_dynamic + 536
15 libpython3.13.dylib 0x103916d54 cfunction_vectorcall_FASTCALL + 280
16 libpython3.13.dylib 0x103a46eb0 _PyEval_EvalFrameDefault + 13948
-------- RECURSION LEVEL 9
17 libpython3.13.dylib 0x103893dc4 object_vacall + 428
18 libpython3.13.dylib 0x103893ac4 PyObject_CallMethodObjArgs + 124
19 libpython3.13.dylib 0x103aaa164 PyImport_ImportModuleLevelObject + 3048
20 libpython3.13.dylib 0x103a3b90c builtin___import__ + 316
21 libpython3.13.dylib 0x103916e68 cfunction_vectorcall_FASTCALL_KEYWORDS + 148
22 libpython3.13.dylib 0x103a46eb0 _PyEval_EvalFrameDefault + 13948
-------- RECURSION LEVEL 8
| 22:09:42 |
Sarah Clark | Looking through sentencepiece's issues, they finger SWIG as the culprit (potentially fixed in SWIG 4.4.0). There may be a patch to apply in the meantime without bumping SWIG. | 23:20:51 |
| 29 Nov 2025 |
Sarah Clark | I'll just link the ongoing saga here https://github.com/NixOS/nixpkgs/issues/466092 | 00:41:37 |
Randy Eckenrode | ninja: error: 'stdlib/public/core/SwiftMacros', needed by 'stdlib/public/core/OSX/arm64/Swift.o', missing and no known rule to make it
🤨
| 01:13:02 |
Randy Eckenrode | Oh, you have to explicitly disable SWIFT_ENABLE_SWIFT_IN_SWIFT now to get the C++-only compiler. | 01:30:53 |
Randy Eckenrode | /nix/var/nix/builds/nix-build-swift-6.2.1.drv-0/b/swift/stdlib/toolchain/Compatibility56/include/Concurrency/VoucherShims.h:73:3: error: 'os_release' is only available on macOS 10.10 or newer >
| 02:27:20 |
Randy Eckenrode | Looks like I’m also hitting unguarded availability errors. 🫠 | 02:27:50 |
Randy Eckenrode | nix/var/nix/builds/nix-build-swift-6.2.1.drv-0/b/swift/stdlib/public/core/SwiftNativeNSArray.swift:420:3: error: missing return in instance method expected to return 'R'
}
^
/nix/var/nix/builds/nix-build-swift-6.2.1.drv-0/b/swift/stdlib/public/core/SwiftNativeNSArray.swift:474:3: error: missing return in instance method expected to return 'R'
}
^
| 03:20:11 |
Randy Eckenrode | That’s a weird one. | 03:20:15 |
Randy Eckenrode | samasaur: Have you seen anything like that? | 04:41:51 |
Randy Eckenrode | Hmm. Actually, it might be similar to https://github.com/swiftlang/swift/pull/84413 | 04:45:13 |
Randy Eckenrode | I applied a similar patch and got further.
swift> 1. Swift version 6.2.1 (swift-6.2.1-RELEASE)
swift> 2. Compiling with effective version 5.10
swift> 3. While evaluating request ExecuteSILPipelineRequest(Run pipelines { PrepareOptimizationPasses, EarlyModulePasses, HighLevel,Function+EarlyLoopOpt, HighLevel,Module+StackPromote, MidLevel,Function, ClosureSpecialize, LowLevel,Function, LateLoopOpt, SIL Debug Info Generator } on SIL for _Concurrency)
swift> 4. While running pass #509344 SILFunctionTransform "CodeSinking" on SILFunction "@$ss6_DequeV8_StorageV13_growCapacity2to8linearlyS2i_SbtFyt_Tg5".
swift> for '_growCapacity(to:linearly:)' (at /nix/var/nix/builds/nix-build-swift-6.2.1.drv-0/b/swift/stdlib/public/Concurrency/Deque/Deque+Storage.swift:134:12)
swift> Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
swift> 0 libLLVM.dylib 0x000000011bcc085c llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 72
swift> 1 libLLVM.dylib 0x000000011bcbe5a0 llvm::sys::RunSignalHandlers() + 108
swift> 2 libLLVM.dylib 0x000000011bcc0f38 SignalHandler(int, __siginfo*, void*) + 324
swift> 3 libsystem_platform.dylib 0x000000019e9cb744 _sigtramp + 56
swift> 4 swift-frontend 0x00000001089b130c (anonymous namespace)::CodeSinkingPass::sinkInstruction(swift::SILInstruction*) + 496
swift> 5 swift-frontend 0x00000001089b130c (anonymous namespace)::CodeSinkingPass::sinkInstruction(swift::SILInstruction*) + 496
swift> 6 swift-frontend 0x00000001089b1048 (anonymous namespace)::CodeSinkingPass::run() + 264
swift> 7 swift-frontend 0x00000001088a03b4 swift::SILPassManager::runFunctionPasses(unsigned int, unsigned int) + 6224
swift> 8 swift-frontend 0x000000010889db44 swift::SILPassManager::executePassPipelinePlan(swift::SILPassPipelinePlan const&) + 11880
swift> 9 swift-frontend 0x00000001088b880c swift::SimpleRequest<swift::ExecuteSILPipelineRequest, std::__1::tuple<> (swift::SILPipelineExecutionDescriptor), (swift::RequestFlags)1>::evaluateRequest(swift::ExecuteSILPipelineRequest const&, swift::Evaluator&) + 64
swift> 10 swift-frontend 0x00000001088a1638 swift::executePassPipelinePlan(swift::SILModule*, swift::SILPassPipelinePlan const&, bool, swift::irgen::IRGenModule*) + 380
swift> 11 swift-frontend 0x00000001088a4efc swift::runSILOptimizationPasses(swift::SILModule&) + 384
swift> 12 swift-frontend 0x0000000107f68c28 swift::CompilerInstance::performSILProcessing(swift::SILModule*) + 2540
swift> 13 swift-frontend 0x0000000107e10f94 performCompileStepsPostSILGen(swift::CompilerInstance&, std::__1::unique_ptr<swift::SILModule, std::__1::default_delete<swift::SILModule>>, llvm::PointerUnion<swift::ModuleDecl*, swift::SourceFile*>, swift::PrimarySpecificPaths const&, int&, swift::FrontendObserver*) + 1252
swift> 14 swift-frontend 0x0000000107e1020c swift::performCompileStepsPostSema(swift::CompilerInstance&, int&, swift::FrontendObserver*) + 2336
swift> 15 swift-frontend 0x0000000107e23d90 performCompile(swift::CompilerInstance&, int&, swift::FrontendObserver*) + 7868
swift> 16 swift-frontend 0x0000000107e2110c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) + 6440
swift> 17 swift-frontend 0x0000000107da37dc swift::mainEntry(int, char const**) + 5564
swift> 18 dyld 0x000000019e5f9d54 start + 7184
swift> <unknown>:0: error: unable to execute command: Segmentation fault: 11
swift> <unknown>:0: error: compile command failed due to signal 11 (use -v to see invocation)
| 05:07:17 |
Randy Eckenrode | I’m starting to think my time might be better spent on getting 5.10.1 refactored and then add 6.2.1. | 05:11:59 |
Randy Eckenrode | (One issue is the SDK ….) | 05:13:27 |
samasaur | that is not an error i am familiar with so im glad you found something similar | 05:15:22 |
Randy Eckenrode | https://github.com/search?q=repo%3Aswiftlang%2Fswift%20-O3&type=code | 05:17:39 |
Randy Eckenrode | I wonder if I’m hitting the LLVM 21 codegen bug. | 05:17:48 |
Randy Eckenrode | Nope, hitting https://github.com/swiftlang/swift/pull/80920#issuecomment-2830656229 | 18:05:40 |
Randy Eckenrode | I really didn’t want to have to maintain Swift 5.x just to bootstrap Swift 6.x, especially with the 14.4 SDK due for removal in the future. | 18:07:12 |
Randy Eckenrode | * | 18:07:30 |
Randy Eckenrode | * | 18:07:45 |
Randy Eckenrode | $ nix build -f . swiftPackages.swiftc
$ result/bin/swiftc -version
<unknown>:0: warning: using (deprecated) legacy driver, Swift installation does not contain swift-driver at: '/nix/store/qv81mmcyl52jzgy32pnq41kxx6v575j9-swift-6.2.1/bin/swift-driver-new'
Swift version 6.2.1 (swift-6.2.1-RELEASE)
Target: arm64-apple-darwin25.1.0
| 19:18:34 |
Randy Eckenrode | Progress! | 19:18:53 |
Randy Eckenrode | $ SDKROOT=$(nix eval --raw -f . apple-sdk_26.sdkroot) result/bin/swiftc ../test-cli.swift -o ../test-cli
$ ../test-cli
Hello, Swift!
| 19:23:51 |
Randy Eckenrode | Next is swift-driver and swiftpm. Also, the bootstrap story. | 20:23:55 |
Randy Eckenrode | One thing I am doing differently is (trying to) build dependencies as packages. I also want to see if I can have actual swift-driver and swift-syntax packages. swiftPackages.swift will just symlink together swiftc and swift-driver. | 20:25:55 |
Randy Eckenrode | Once I have this working, I want to go back and split out the stdlib into its own package, which should help make cross-compilation possible. It’s not supported currently. | 20:26:45 |
Randy Eckenrode | I am working on this for 6.2.1, but I plan to land the changes for 5.10.1 first (moving it into the new pattern). 6.2.1 will be a separate PR. | 20:27:38 |
toonn | That sounds like a solid plan. | 22:55:28 |
| 30 Nov 2025 |
Randy Eckenrode | So far the alternate approach seems to be working. I can patch sources in Swift packages and then use a hook to expose them to SwiftPM. Unfortunately, the SDK requires observability, which makes the C++-only bootstrap compiler pretty useless. | 04:05:33 |