summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/ASTContext.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2018-09-12 02:13:46 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2018-09-12 02:13:46 +0000
commit20fbdb347cf6324e6e8d3f4aa1d0b1ab02f70e8d (patch)
treefa8a5600d18853b87ac842ab3a2844b315de3534 /clang/lib/AST/ASTContext.cpp
parent7e98d69847aefb1028aaa7131b508f4b4e9896ae (diff)
downloadbcm5719-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.cpp4
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;
OpenPOWER on IntegriCloud