diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2018-09-12 02:13:46 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2018-09-12 02:13:46 +0000 |
commit | 20fbdb347cf6324e6e8d3f4aa1d0b1ab02f70e8d (patch) | |
tree | fa8a5600d18853b87ac842ab3a2844b315de3534 /clang/lib/AST/ASTContext.cpp | |
parent | 7e98d69847aefb1028aaa7131b508f4b4e9896ae (diff) | |
download | bcm5719-llvm-20fbdb347cf6324e6e8d3f4aa1d0b1ab02f70e8d.tar.gz bcm5719-llvm-20fbdb347cf6324e6e8d3f4aa1d0b1ab02f70e8d.zip |
Fix tracking of merged definitions when the merge target is also merged
into something else.
llvm-svn: 342017
Diffstat (limited to 'clang/lib/AST/ASTContext.cpp')
-rw-r--r-- | clang/lib/AST/ASTContext.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/AST/ASTContext.cpp b/clang/lib/AST/ASTContext.cpp index ab2a95e577f..0ed52ffd351 100644 --- a/clang/lib/AST/ASTContext.cpp +++ b/clang/lib/AST/ASTContext.cpp @@ -933,13 +933,13 @@ void ASTContext::mergeDefinitionIntoModule(NamedDecl *ND, Module *M, Listener->RedefinedHiddenDefinition(ND, M); if (getLangOpts().ModulesLocalVisibility) - MergedDefModules[ND].push_back(M); + MergedDefModules[cast<NamedDecl>(ND->getCanonicalDecl())].push_back(M); else ND->setVisibleDespiteOwningModule(); } void ASTContext::deduplicateMergedDefinitonsFor(NamedDecl *ND) { - auto It = MergedDefModules.find(ND); + auto It = MergedDefModules.find(cast<NamedDecl>(ND->getCanonicalDecl())); if (It == MergedDefModules.end()) return; |