summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/Decl.cpp
diff options
context:
space:
mode:
authorJohn McCall <rjmccall@apple.com>2010-10-28 18:10:36 +0000
committerJohn McCall <rjmccall@apple.com>2010-10-28 18:10:36 +0000
commit62b6862c5e220fce735461d689342224dab59896 (patch)
tree34a3578db159d824bdd7ea41bad8c5fa29571a21 /clang/lib/AST/Decl.cpp
parentc4b69051b7f29eb3859f9a6e6f1d7f87e2027141 (diff)
downloadbcm5719-llvm-62b6862c5e220fce735461d689342224dab59896.tar.gz
bcm5719-llvm-62b6862c5e220fce735461d689342224dab59896.zip
Don't apply -fvisibility-inlines-hidden to extern templates.
Part 2 of rdar://problem/8595231 llvm-svn: 117567
Diffstat (limited to 'clang/lib/AST/Decl.cpp')
-rw-r--r--clang/lib/AST/Decl.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/lib/AST/Decl.cpp b/clang/lib/AST/Decl.cpp
index 8526eccd658..19cfe9e1199 100644
--- a/clang/lib/AST/Decl.cpp
+++ b/clang/lib/AST/Decl.cpp
@@ -456,7 +456,9 @@ static LVPair getLVForClassMember(const NamedDecl *D) {
// member functions get "hidden" visibility if they don't have an
// explicit visibility attribute.
if (!VA && MD->isInlined() && LV.second > HiddenVisibility &&
- D->getASTContext().getLangOptions().InlineVisibilityHidden)
+ D->getASTContext().getLangOptions().InlineVisibilityHidden &&
+ MD->getTemplateSpecializationKind()
+ != TSK_ExplicitInstantiationDeclaration)
LV.second = HiddenVisibility;
// Similarly for member class template specializations.
OpenPOWER on IntegriCloud