diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2011-12-27 21:15:28 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2011-12-27 21:15:28 +0000 |
commit | fedb6ecbed93c6bf12a02d61b2421d6f0da3b4fc (patch) | |
tree | 96b7a7e1128371fcd64c0314db03e9cf7898ef6f /lib/AST/Decl.cpp | |
parent | 47d2145675099893d702be4bc06bd9f26d8ddd13 (diff) |
Fix the visibility of methods of explicit template instantiation definition
when using -fvisibility-inlines-hidden. This matches gcc's behavior and
documentation.
Fixes PR11642.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147295 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/AST/Decl.cpp')
-rw-r--r-- | lib/AST/Decl.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/AST/Decl.cpp b/lib/AST/Decl.cpp index 84a2a59ee2..f9e57bc706 100644 --- a/lib/AST/Decl.cpp +++ b/lib/AST/Decl.cpp @@ -568,6 +568,7 @@ static LinkageInfo getLVForClassMember(const NamedDecl *D, LVFlags F) { // about whether containing classes have visibility attributes, // and that's intentional. if (TSK != TSK_ExplicitInstantiationDeclaration && + TSK != TSK_ExplicitInstantiationDefinition && F.ConsiderGlobalVisibility && MD->getASTContext().getLangOptions().InlineVisibilityHidden) { // InlineVisibilityHidden only applies to definitions, and |