<br><br><div class="gmail_quote">Le 5 avril 2012 22:28, Nikola Smiljanic <span dir="ltr"><<a href="mailto:popizdeh@gmail.com">popizdeh@gmail.com</a>></span> a écrit :<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
> This would be cleaner as:<br>
><br>
>        if (const FunctionDecl *Pattern = FD->getTemplateInstantiationPattern())<br>
>          Decl = Pattern;<br>
<br>
I wanted to save a line of code but you're right, this is easier to<br>
understand. Fixed.<br>
<br>
> Any chance I could get you to add support for C++11 ref-qualifiers here? For example,<br>
><br>
>        struct X {<br>
>                X &operator=(const X&) &;<br>
>        };<br>
<br>
No problem, but since I don't even know what ref-qualifiers are I'd<br>
like to get the current version committed first if you don't mind.<br>
<br>
> Some template parameters might be unnamed. Shouldn't we just skip those? (Same comment below)<br>
<br>
Never seen one of those in my life, but you learn something new every<br>
day. Test added, they are skipped now.<br>
<br></blockquote></div><br>This is a typical case of forward declaration, where the names do not matter, only the arity (for types) and actual types (for non-types) does.<br><br>    namespace std { template <typename, typename, typename, typename> class map; }<br>
<br>It occurs even more frequently in friends declaration, in my experience.<br><br>In essence, the idea is similar to not naming the unused parameters of a function.<br><br>-- Matthieu<br>