mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
Extends canImport to check for submodule availability
This commit is contained in:
@@ -1123,8 +1123,9 @@ swift::extractUserModuleVersionFromInterface(StringRef moduleInterfacePath) {
|
||||
return result;
|
||||
}
|
||||
|
||||
bool SerializedModuleLoaderBase::canImportModule(
|
||||
ImportPath::Element mID, llvm::VersionTuple version, bool underlyingVersion) {
|
||||
bool SerializedModuleLoaderBase::canImportModule(ImportPath::Module path,
|
||||
llvm::VersionTuple version,
|
||||
bool underlyingVersion) {
|
||||
// If underlying version is specified, this should be handled by Clang importer.
|
||||
if (!version.empty() && underlyingVersion)
|
||||
return false;
|
||||
@@ -1145,6 +1146,8 @@ bool SerializedModuleLoaderBase::canImportModule(
|
||||
unusedModuleDocBuffer = &moduleDocBuffer;
|
||||
}
|
||||
|
||||
// FIXME: Swift submodules?
|
||||
auto mID = path[0];
|
||||
auto found = findModule(mID, unusedModuleInterfacePath, unusedModuleBuffer,
|
||||
unusedModuleDocBuffer, unusedModuleSourceInfoBuffer,
|
||||
/* skipBuildingInterface */ true, isFramework,
|
||||
@@ -1180,10 +1183,13 @@ bool SerializedModuleLoaderBase::canImportModule(
|
||||
}
|
||||
|
||||
bool MemoryBufferSerializedModuleLoader::canImportModule(
|
||||
ImportPath::Element mID, llvm::VersionTuple version, bool underlyingVersion) {
|
||||
ImportPath::Module path, llvm::VersionTuple version,
|
||||
bool underlyingVersion) {
|
||||
// If underlying version is specified, this should be handled by Clang importer.
|
||||
if (!version.empty() && underlyingVersion)
|
||||
return false;
|
||||
// FIXME: Swift submodules?
|
||||
auto mID = path[0];
|
||||
auto mIt = MemoryBuffers.find(mID.Item.str());
|
||||
if (mIt == MemoryBuffers.end())
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user