aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/CGExpr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/CodeGen/CGExpr.cpp')
-rw-r--r--lib/CodeGen/CGExpr.cpp14
1 files changed, 5 insertions, 9 deletions
diff --git a/lib/CodeGen/CGExpr.cpp b/lib/CodeGen/CGExpr.cpp
index e62bf2f3fc..9067787f32 100644
--- a/lib/CodeGen/CGExpr.cpp
+++ b/lib/CodeGen/CGExpr.cpp
@@ -1204,15 +1204,11 @@ RValue CodeGenFunction::EmitCallExpr(llvm::Value *Callee, QualType CalleeType,
const Decl *TargetDecl) {
// Get the actual function type. The callee type will always be a
// pointer to function type or a block pointer type.
- QualType ResultType;
- if (const BlockPointerType *BPT = dyn_cast<BlockPointerType>(CalleeType)) {
- ResultType = BPT->getPointeeType()->getAsFunctionType()->getResultType();
- } else {
- assert(CalleeType->isFunctionPointerType() &&
- "Call must have function pointer type!");
- QualType FnType = CalleeType->getAsPointerType()->getPointeeType();
- ResultType = FnType->getAsFunctionType()->getResultType();
- }
+ assert(CalleeType->isFunctionPointerType() &&
+ "Call must have function pointer type!");
+
+ QualType FnType = CalleeType->getAsPointerType()->getPointeeType();
+ QualType ResultType = FnType->getAsFunctionType()->getResultType();
CallArgList Args;
for (CallExpr::const_arg_iterator I = ArgBeg; I != ArgEnd; ++I)