diff options
| author | John McCall <rjmccall@apple.com> | 2011-04-11 07:02:50 +0000 |
|---|---|---|
| committer | John McCall <rjmccall@apple.com> | 2011-04-11 07:02:50 +0000 |
| commit | 2d2e870745c22a05a173e1fcec85e57535b5314b (patch) | |
| tree | 635d38db68de34a33d2690faf839f05bdb467283 /clang/lib/CodeGen/CGExprCXX.cpp | |
| parent | 62920834fa7a9ea0ac717e3b6d4c63449eb551a6 (diff) | |
| download | bcm5719-llvm-2d2e870745c22a05a173e1fcec85e57535b5314b.tar.gz bcm5719-llvm-2d2e870745c22a05a173e1fcec85e57535b5314b.zip | |
More __unknown_anytype work.
llvm-svn: 129269
Diffstat (limited to 'clang/lib/CodeGen/CGExprCXX.cpp')
| -rw-r--r-- | clang/lib/CodeGen/CGExprCXX.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/clang/lib/CodeGen/CGExprCXX.cpp b/clang/lib/CodeGen/CGExprCXX.cpp index a3d3f439b63..ef71e890778 100644 --- a/clang/lib/CodeGen/CGExprCXX.cpp +++ b/clang/lib/CodeGen/CGExprCXX.cpp @@ -167,10 +167,12 @@ static bool canDevirtualizeMemberFunctionCalls(ASTContext &Context, // extensions allowing explicit constructor function call. RValue CodeGenFunction::EmitCXXMemberCallExpr(const CXXMemberCallExpr *CE, ReturnValueSlot ReturnValue) { - if (isa<BinaryOperator>(CE->getCallee()->IgnoreParens())) + const Expr *callee = CE->getCallee()->IgnoreParens(); + + if (isa<BinaryOperator>(callee)) return EmitCXXMemberPointerCallExpr(CE, ReturnValue); - - const MemberExpr *ME = cast<MemberExpr>(CE->getCallee()->IgnoreParens()); + + const MemberExpr *ME = cast<MemberExpr>(callee); const CXXMethodDecl *MD = cast<CXXMethodDecl>(ME->getMemberDecl()); CGDebugInfo *DI = getDebugInfo(); |

