diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2018-09-12 02:28:14 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2018-09-12 02:28:14 +0000 |
commit | 4034461abd207614cafec65e863ef20caff48669 (patch) | |
tree | 294731666a45d2531fbf35de0720e1585d01ccde /clang/lib/AST/ASTContext.cpp | |
parent | e731d9acff40e6240b8677583b3ff2aaa23e5211 (diff) | |
download | bcm5719-llvm-4034461abd207614cafec65e863ef20caff48669.tar.gz bcm5719-llvm-4034461abd207614cafec65e863ef20caff48669.zip |
Revert r342019, "Track definition merging on the canonical declaration
even when [...]"
Further testing has revealed that this causes build breaks during
explicit module compilations.
llvm-svn: 342020
Diffstat (limited to 'clang/lib/AST/ASTContext.cpp')
-rw-r--r-- | clang/lib/AST/ASTContext.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/clang/lib/AST/ASTContext.cpp b/clang/lib/AST/ASTContext.cpp index b107e8bd2a3..0ed52ffd351 100644 --- a/clang/lib/AST/ASTContext.cpp +++ b/clang/lib/AST/ASTContext.cpp @@ -932,7 +932,10 @@ void ASTContext::mergeDefinitionIntoModule(NamedDecl *ND, Module *M, if (auto *Listener = getASTMutationListener()) Listener->RedefinedHiddenDefinition(ND, M); - MergedDefModules[cast<NamedDecl>(ND->getCanonicalDecl())].push_back(M); + if (getLangOpts().ModulesLocalVisibility) + MergedDefModules[cast<NamedDecl>(ND->getCanonicalDecl())].push_back(M); + else + ND->setVisibleDespiteOwningModule(); } void ASTContext::deduplicateMergedDefinitonsFor(NamedDecl *ND) { |