aboutsummaryrefslogtreecommitdiff
path: root/lib/Sema/SemaDeclCXX.cpp
diff options
context:
space:
mode:
authorSean Hunt <scshunt@csclub.uwaterloo.ca>2011-07-21 00:59:23 +0000
committerSean Hunt <scshunt@csclub.uwaterloo.ca>2011-07-21 00:59:23 +0000
commit98c6bda3be11b78a10026f142a399aa1918900f2 (patch)
tree7d90afc76835dbfe1fb5ad9087d767ee25c92056 /lib/Sema/SemaDeclCXX.cpp
parent4c30bb148b53c8063e940ca3e049ba4d270dc9d5 (diff)
When copping out on a friend template declaration, be sure to mark its
access specifier as public. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135649 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaDeclCXX.cpp')
-rw-r--r--lib/Sema/SemaDeclCXX.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/Sema/SemaDeclCXX.cpp b/lib/Sema/SemaDeclCXX.cpp
index 9ad9a2f0f0..0328045145 100644
--- a/lib/Sema/SemaDeclCXX.cpp
+++ b/lib/Sema/SemaDeclCXX.cpp
@@ -8263,11 +8263,13 @@ Decl *Sema::ActOnTemplatedFriendTag(Scope *S, SourceLocation FriendLoc,
if (Invalid)
return 0;
- return CheckClassTemplate(S, TagSpec, TUK_Friend, TagLoc,
- SS, Name, NameLoc, Attr,
- TemplateParams, AS_public,
- TempParamLists.size() - 1,
+ Decl * Result = CheckClassTemplate(S, TagSpec, TUK_Friend, TagLoc,
+ SS, Name, NameLoc, Attr,
+ TemplateParams, AS_public,
+ TempParamLists.size() - 1,
(TemplateParameterList**) TempParamLists.release()).take();
+ Result->setAccess(AS_public);
+ return Result;
} else {
// The "template<>" header is extraneous.
Diag(TemplateParams->getTemplateLoc(), diag::err_template_tag_noparams)