mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
[Serialization] Fix message for using an older compiler's module file (#17340)
Previously: "module compiled with Swift 4.1 cannot be imported in Swift 4.1.50" (i.e. following the -swift-version flag) Now: "module compiled with Swift 4.1 cannot be imported by the Swift 4.2 compiler" I'm pretty sure this is what I intended to do all along, and I just messed it up when I originally implemented it. This is especially important when working with downloadable toolchains, which would say "module compiled with Swift 4.2 cannot be imported in Swift 4.1.50", which is not really the problem at all. Now it'll fall back to the more generic "module file was created by an older version of the compiler" error.
This commit is contained in:
@@ -27,6 +27,7 @@
|
||||
#include <system_error>
|
||||
|
||||
using namespace swift;
|
||||
using swift::version::Version;
|
||||
|
||||
namespace {
|
||||
using AccessPathElem = std::pair<Identifier, SourceLoc>;
|
||||
@@ -293,7 +294,7 @@ FileUnit *SerializedModuleLoader::loadAST(
|
||||
|
||||
SmallString<32> versionBuf;
|
||||
llvm::raw_svector_ostream versionString(versionBuf);
|
||||
versionString << Ctx.LangOpts.EffectiveLanguageVersion;
|
||||
versionString << Version::getCurrentLanguageVersion();
|
||||
if (versionString.str() == shortVersion)
|
||||
return false;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user