Files
swift-mirror/test/ModuleInterface/BadStdlib.swiftinterface
Becca Royal-Gordon 02c747609b 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.
2021-03-25 18:48:00 -07:00

17 lines
814 B
Plaintext

// swift-interface-format-version: 1.0
// swift-module-flags: -target x86_64-apple-macos10.9 -module-name BadStdlib
// no-error@-3
// Tests whether -compile-module-from-interface correctly stops early when the
// standard library module interface is broken, rather than trying to limp along
// without a standard library, which tends to cause ClangImporter crashes (among
// other things.)
// RUN: %empty-directory(%t)
// RUN: %target-swift-frontend(mock-sdk: -sdk %/S/Inputs/BadStdlib.sdk -module-cache-path %/t/module-cache -resource-dir %/S/Inputs/BadStdlib.sdk) -compile-module-from-interface -o %/t/BadStdlib.swiftmodule %s -verify -verify-additional-file %/S/Inputs/BadStdlib.sdk/usr/lib/swift/Swift.swiftmodule/x86_64-apple-macos.swiftinterface
import ClangMod
public func useHasPointer(_: HasPointer)