Preload standard library in ModuleInterfaceBuilder

Previously, when the standard library module interface was broken, Swift would try to rebuild it repeatedly during -compile-module-from-interface jobs because `ASTContext::getStdlibModule()` would try to load the standard library again each time it was called. This led to extremely slow compilations that repeatedly emitted the same errors.

To avoid this, we make ModuleInterfaceBuilder try to load the standard library right away and bail out if it can’t.

Fixes rdar://75669548.
This commit is contained in:
Becca Royal-Gordon
2021-03-25 01:21:16 -07:00
parent 1f713074ac
commit 02c747609b
5 changed files with 37 additions and 0 deletions

View File

@@ -0,0 +1,4 @@
module HasPointer {
header "HasPointer.h"
export *
}