[Serialization] Preserve submodule import paths through serialization.

This is a bit of a hack, but Clang submodules are the only case we have to
support.

Part of <rdar://problem/13140302>

Swift SVN r20287
This commit is contained in:
Jordan Rose
2014-07-22 01:31:15 +00:00
parent d82edd9608
commit 6ee53ff75f
7 changed files with 87 additions and 33 deletions

View File

@@ -243,13 +243,13 @@ FileUnit *SerializedModuleLoader::loadAST(
assert(!missing.empty() && "unknown missing dependency?");
if (missing.size() == 1) {
Ctx.Diags.diagnose(*diagLoc, diag::serialization_missing_single_dependency,
missing.begin()->RawPath);
missing.front().getPrettyPrintedPath());
} else {
llvm::SmallString<64> missingNames;
missingNames += '\'';
interleave(missing,
[&](const ModuleFile::Dependency &next) {
missingNames += next.RawPath;
missingNames += next.getPrettyPrintedPath();
},
[&] { missingNames += "', '"; });
missingNames += '\'';