Bootstrapping is the process described in this forum post last year, where parts of the Swift compiler are written in Swift and call C++ methods in the compiler through the growing C++ Interop.
As stated there, it is not required, though some features, like bare regex literals and macros, do require it in 5.9, contradicting that plan. There has been some work in trunk and the release/5.9 branch to not require C++ Interop for those two features, so that posted plan will likely stick soon.
Check what bootstrapping mode you are currently using with 5.9: grep -i bootstrapping_mode build/Ninja-Release/swift-linux-aarch64/CMakeCache.txt
. Try turning it off to see if that's the problem. Alternatively, bootstrapping
was likely the default for you before, but was recently overridden to hosttools
on linux, so that may be causing the crash.
Try a couple different bootstrapping modes and see what works now, as I'm just speculating that this is the cause. Turning it off will be easiest, while going back to bootstrapping
may require some patching, as I don't think that mode supports building macros in 5.9.0, though it may eventually in 5.9.2.