<div class="gmail_quote">On Tue, Sep 13, 2011 at 4:27 PM, John McCall <span dir="ltr"><<a href="mailto:rjmccall@apple.com">rjmccall@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div id=":2zq">Now, it struck me (and Doug) as pretty suspect for getCalleeDecl()<br>
to ever look through an explicit cast, precisely because that's a<br>
potentially very important change in the call behavior.  Ergo, this<br>
change.  However, this is clearly a balance between clients who<br>
really don't care about explicit casts (and therefore would prefer<br>
getCalleeDecl() to look through them) and clients who haven't<br>
considered whether their analysis is reasonable in the face of<br>
explicit casts (and therefore would probably prefer<br>
getCalleeDecl() to not look through them).</div></blockquote></div><br><div>FTR, I'm really in favor of your change, despite likely caring about a fair amount of code that could be impacted. Specifically, I welcome having to teach code to explicitly look through explicit casts. It ensures that the reader and maintainer also consider in the future this behavior. Silently looking through unexpected AST entities has been cited as a source of confusion for several users we work with when trying to manipulate and understand the AST.</div>