diff options
Diffstat (limited to 'clang/lib/Serialization')
-rw-r--r-- | clang/lib/Serialization/ASTReader.cpp | 14 | ||||
-rw-r--r-- | clang/lib/Serialization/ASTWriter.cpp | 15 |
2 files changed, 3 insertions, 26 deletions
diff --git a/clang/lib/Serialization/ASTReader.cpp b/clang/lib/Serialization/ASTReader.cpp index 921c06ce670..7225d2f610a 100644 --- a/clang/lib/Serialization/ASTReader.cpp +++ b/clang/lib/Serialization/ASTReader.cpp @@ -1809,21 +1809,11 @@ void ASTReader::resolvePendingMacro(IdentifierInfo *II, switch (K) { case MacroDirective::MD_Define: { MacroInfo *MI = getMacro(getGlobalMacroID(M, Record[Idx++])); - bool IsAmbiguous = Record[Idx++]; - ModuleMacro *MM = nullptr; - if (SubmoduleID ImportedFrom = getGlobalSubmoduleID(M, Record[Idx++])) - MM = PP.getModuleMacro(getSubmodule(ImportedFrom), II); - MD = MM ? PP.AllocateImportedMacroDirective(MM, Loc) - : PP.AllocateDefMacroDirective(MI, Loc); - cast<DefMacroDirective>(MD)->setAmbiguous(IsAmbiguous); + MD = PP.AllocateDefMacroDirective(MI, Loc); break; } case MacroDirective::MD_Undefine: { - ModuleMacro *MM = nullptr; - if (SubmoduleID ImportedFrom = getGlobalSubmoduleID(M, Record[Idx++])) - MM = PP.getModuleMacro(getSubmodule(ImportedFrom), II); - MD = MM ? PP.AllocateImportedMacroDirective(MM, Loc) - : PP.AllocateUndefMacroDirective(Loc); + MD = PP.AllocateUndefMacroDirective(Loc); break; } case MacroDirective::MD_Visibility: diff --git a/clang/lib/Serialization/ASTWriter.cpp b/clang/lib/Serialization/ASTWriter.cpp index 9fe83234a1a..38436977341 100644 --- a/clang/lib/Serialization/ASTWriter.cpp +++ b/clang/lib/Serialization/ASTWriter.cpp @@ -1979,10 +1979,6 @@ static bool shouldIgnoreMacro(MacroDirective *MD, bool IsModule, return true; if (IsModule) { - // Re-export any imported directives. - if (MD->isImported()) - return false; - SourceLocation Loc = MD->getLocation(); if (Loc.isInvalid()) return true; @@ -2066,19 +2062,10 @@ void ASTWriter::WritePreprocessor(const Preprocessor &PP, bool IsModule) { AddSourceLocation(MD->getLocation(), Record); Record.push_back(MD->getKind()); if (auto *DefMD = dyn_cast<DefMacroDirective>(MD)) { - MacroID InfoID = getMacroRef(DefMD->getInfo(), Name); - Record.push_back(InfoID); - Record.push_back(DefMD->isAmbiguous()); + Record.push_back(getMacroRef(DefMD->getInfo(), Name)); } else if (auto *VisMD = dyn_cast<VisibilityMacroDirective>(MD)) { Record.push_back(VisMD->isPublic()); - // No owning module macro. - continue; } - - if (auto *MM = MD->getOwningModuleMacro()) - Record.push_back(getSubmoduleID(MM->getOwningModule())); - else - Record.push_back(0); } // Write out any exported module macros. |