diff options
Diffstat (limited to 'clang/lib')
-rw-r--r-- | clang/lib/Serialization/ASTReaderDecl.cpp | 20 |
1 files changed, 0 insertions, 20 deletions
diff --git a/clang/lib/Serialization/ASTReaderDecl.cpp b/clang/lib/Serialization/ASTReaderDecl.cpp index 0585234f150..b59b94f9bf9 100644 --- a/clang/lib/Serialization/ASTReaderDecl.cpp +++ b/clang/lib/Serialization/ASTReaderDecl.cpp @@ -1519,15 +1519,6 @@ void ASTDeclReader::MergeDefinitionData( auto &DD = *D->DefinitionData.getNotUpdated(); if (DD.Definition != MergeDD.Definition) { - // If the new definition has new special members, let the name lookup - // code know that it needs to look in the new definition too. - // - // FIXME: We only need to do this if the merged definition declares members - // that this definition did not declare, or if it defines members that this - // definition did not define. - Reader.MergedLookups[DD.Definition].push_back(MergeDD.Definition); - DD.Definition->setHasExternalVisibleStorage(); - // Track that we merged the definitions. Reader.MergedDeclContexts.insert(std::make_pair(MergeDD.Definition, DD.Definition)); @@ -3731,17 +3722,6 @@ void ASTDeclReader::UpdateDecl(Decl *D, ModuleFile &ModuleFile, // FIXME: We should call addHiddenDecl instead, to add the member // to its DeclContext. RD->addedMember(MD); - - // If we've added a new special member to a class definition that is not - // the canonical definition, then we need special member lookups in the - // canonical definition to also look into our class. - auto *DD = RD->DefinitionData.getNotUpdated(); - if (DD && DD->Definition != RD) { - auto &Merged = Reader.MergedLookups[DD->Definition]; - // FIXME: Avoid the linear-time scan here. - if (std::find(Merged.begin(), Merged.end(), RD) == Merged.end()) - Merged.push_back(RD); - } break; } |