diff options
Diffstat (limited to 'clang/lib/Serialization/ASTWriter.cpp')
-rw-r--r-- | clang/lib/Serialization/ASTWriter.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Serialization/ASTWriter.cpp b/clang/lib/Serialization/ASTWriter.cpp index baed95ebf84..0a11cf21185 100644 --- a/clang/lib/Serialization/ASTWriter.cpp +++ b/clang/lib/Serialization/ASTWriter.cpp @@ -1139,8 +1139,9 @@ void ASTWriter::WriteControlBlock(Preprocessor &PP, ASTContext &Context, Abbrev->Add(BitCodeAbbrevOp(BitCodeAbbrevOp::Blob)); // Filename unsigned AbbrevCode = Stream.EmitAbbrev(Abbrev); - assert(WritingModule->ModuleMap && "missing module map"); - SmallString<128> ModuleMap(WritingModule->ModuleMap->getName()); + const FileEntry *ModMapFile = PP.getHeaderSearchInfo().getModuleMap(). + getModuleMapFileForUniquing(WritingModule); + SmallString<128> ModuleMap(ModMapFile->getName()); llvm::sys::fs::make_absolute(ModuleMap); RecordData Record; Record.push_back(MODULE_MAP_FILE); |