I believe your check for IsStatic in CheckFunctionCCAttr is incorrect for operator new/operator delete (which are implicitly static). Also, walking the DeclaratorChunks will not do the right thing for a function type which is produced by a type specifier (eg, using a typedef for a function type), and the code will crash for a declaration which has no DeclaratorChunks. Can you delay this checking until after the FunctionDecl is built? (That would also make the CXXABI checking interface nicer; you could pass in the FunctionDecl and ask "is this valid?")<br>
<br><div class="gmail_quote">On Mon, Apr 29, 2013 at 9:03 AM, Alexander Zinenko <span dir="ltr"><<a href="mailto:ftynse@gmail.com" target="_blank">ftynse@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hello, John!<div><br></div><div>Do you have time to review this?<div class="im"><span></span><br><br>On Thursday, April 18, 2013, Alexander Zinenko  wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

> I would just suppress all this checking whenever the declaration has a scope qualifier and let redeclaration checking handle it.<br>
<br>
Right, redeclaration checking suffice here, thanks.<br>
</blockquote></div></div>
<br>_______________________________________________<br>
cfe-commits mailing list<br>
<a href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br>
<br></blockquote></div><br>