diff options
author | John McCall <rjmccall@apple.com> | 2010-10-16 06:59:13 +0000 |
---|---|---|
committer | John McCall <rjmccall@apple.com> | 2010-10-16 06:59:13 +0000 |
commit | 6102ca1d490836096678d7d934f0b2b78f9293ec (patch) | |
tree | 6d041c075fd523574c5c35fe985aa38d698d5b43 /lib/Sema/SemaTemplate.cpp | |
parent | b10ce9f4fcff51bebc9efaeda2fa15b6478c6aec (diff) |
White-listing templated-scope friend decls is a good idea, but doing it
by marking the decl invalid isn't. Make some steps towards supporting these
and then hastily shut them down at the last second by marking them as
unsupported.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116661 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaTemplate.cpp')
-rw-r--r-- | lib/Sema/SemaTemplate.cpp | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/lib/Sema/SemaTemplate.cpp b/lib/Sema/SemaTemplate.cpp index f85c3f0070..66ded48c24 100644 --- a/lib/Sema/SemaTemplate.cpp +++ b/lib/Sema/SemaTemplate.cpp @@ -1375,13 +1375,8 @@ Sema::MatchTemplateParametersToScopeSpecifier(SourceLocation DeclStartLoc, // If there were at least as many template-ids as there were template // parameter lists, then there are no template parameter lists remaining for // the declaration itself. - if (Idx >= NumParamLists) { - // Silently drop template member friend declarations. - // TODO: implement these - if (IsFriend && NumParamLists) Invalid = true; - + if (Idx >= NumParamLists) return 0; - } // If there were too many template parameter lists, complain about that now. if (Idx != NumParamLists - 1) { @@ -1410,11 +1405,6 @@ Sema::MatchTemplateParametersToScopeSpecifier(SourceLocation DeclStartLoc, } } - // Silently drop template member template friend declarations. - // TODO: implement these - if (IsFriend && NumParamLists > 1) - Invalid = true; - // Return the last template parameter list, which corresponds to the // entity being declared. return ParamLists[NumParamLists - 1]; |