[cfe-commits] r100753 - in /cfe/trunk: include/clang/AST/Decl.h include/clang/AST/DeclFriend.h include/clang/AST/DeclTemplate.h lib/AST/Decl.cpp lib/Sema/Sema.h lib/Sema/SemaDecl.cpp lib/Sema/SemaDeclCXX.cpp lib/Sema/SemaTemplate.cpp lib/Sema/SemaTemplateInstantiateDecl.cpp test/CXX/temp/temp.decls/temp.friend/p1.cpp

Douglas Gregor dgregor at apple.com
Thu Apr 8 11:50:38 PDT 2010


Nevermind, I see that we have the name in the FunctionDecl itself.

Sent from my iPhone

On Apr 8, 2010, at 11:45 AM, Douglas Gregor <dgregor at apple.com> wrote:

>
> On Apr 8, 2010, at 11:26 AM, John McCall wrote:
>
>> On Apr 8, 2010, at 8:16 AM, Douglas Gregor wrote:
>>> I do wonder if we'll need to hold on to a TemplateName, for the  
>>> case where the name of the template we're specializing is  
>>> dependent, e.g.,
>>>
>>> template<typename T, typename U>
>>> struct X {
>>> friend void T::foo<>(U);
>>> };
>>>
>>> (that's yet another level of complexity)
>>
>> This will be reflected in the declaration's qualifier.  You're  
>> right that, in this case, we should do the redeclaration lookup  
>> instead of relying on the saved function templates.
>
>
> I guess my point is that we won't have any saved function templates  
> in this case, because we can't look into T. TemplateName can cope  
> with that, FunctionTemplateDecl** cannot.
>    - Doug
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits



More information about the cfe-commits mailing list