@@ -1955,7 +1955,9 @@ bool ASTContext::shouldPerformTypoCorrection() {
19551955 return NumTypoCorrections <= LangOpts.TypoCorrectionLimit ;
19561956}
19571957
1958- bool ASTContext::canImportModuleImpl (ImportPath::Element ModuleName) const {
1958+ bool ASTContext::canImportModuleImpl (ImportPath::Element ModuleName,
1959+ llvm::VersionTuple version,
1960+ bool underlyingVersion) const {
19591961 // If this module has already been successfully imported, it is importable.
19601962 if (getLoadedModule (ImportPath::Module::Builder (ModuleName).get ()) != nullptr )
19611963 return true ;
@@ -1966,25 +1968,29 @@ bool ASTContext::canImportModuleImpl(ImportPath::Element ModuleName) const {
19661968
19671969 // Otherwise, ask the module loaders.
19681970 for (auto &importer : getImpl ().ModuleLoaders ) {
1969- if (importer->canImportModule (ModuleName)) {
1971+ if (importer->canImportModule (ModuleName, version, underlyingVersion )) {
19701972 return true ;
19711973 }
19721974 }
19731975
19741976 return false ;
19751977}
19761978
1977- bool ASTContext::canImportModule (ImportPath::Element ModuleName) {
1978- if (canImportModuleImpl (ModuleName)) {
1979+ bool ASTContext::canImportModule (ImportPath::Element ModuleName,
1980+ llvm::VersionTuple version,
1981+ bool underlyingVersion) {
1982+ if (canImportModuleImpl (ModuleName, version, underlyingVersion)) {
19791983 return true ;
19801984 } else {
19811985 FailedModuleImportNames.insert (ModuleName.Item );
19821986 return false ;
19831987 }
19841988}
19851989
1986- bool ASTContext::canImportModule (ImportPath::Element ModuleName) const {
1987- return canImportModuleImpl (ModuleName);
1990+ bool ASTContext::canImportModule (ImportPath::Element ModuleName,
1991+ llvm::VersionTuple version,
1992+ bool underlyingVersion) const {
1993+ return canImportModuleImpl (ModuleName, version, underlyingVersion);
19881994}
19891995
19901996ModuleDecl *
0 commit comments