[cfe-commits] r139659 - /cfe/trunk/lib/AST/Expr.cpp

John McCall rjmccall at apple.com
Tue Sep 13 16:08:35 PDT 2011


Author: rjmccall
Date: Tue Sep 13 18:08:34 2011
New Revision: 139659

URL: http://llvm.org/viewvc/llvm-project?rev=139659&view=rev
Log:
In general, don't look through explicit casts when trying
to find the called declaration.  Explicit casts can radically
change the semantics of a call, and it's no longer really a
builtin call any more than it would be a builtin call if you stored
the function pointer into a variable and called that.



Modified:
    cfe/trunk/lib/AST/Expr.cpp

Modified: cfe/trunk/lib/AST/Expr.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/Expr.cpp?rev=139659&r1=139658&r2=139659&view=diff
==============================================================================
--- cfe/trunk/lib/AST/Expr.cpp (original)
+++ cfe/trunk/lib/AST/Expr.cpp Tue Sep 13 18:08:34 2011
@@ -770,7 +770,7 @@
 }
 
 Decl *CallExpr::getCalleeDecl() {
-  Expr *CEE = getCallee()->IgnoreParenCasts();
+  Expr *CEE = getCallee()->IgnoreParenImpCasts();
     
   while (SubstNonTypeTemplateParmExpr *NTTP
                                 = dyn_cast<SubstNonTypeTemplateParmExpr>(CEE)) {





More information about the cfe-commits mailing list