aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/ExpressionGen.cc
diff options
context:
space:
mode:
Diffstat (limited to 'lib/CodeGen/ExpressionGen.cc')
-rw-r--r--lib/CodeGen/ExpressionGen.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/CodeGen/ExpressionGen.cc b/lib/CodeGen/ExpressionGen.cc
index ba5e329..b667e6a 100644
--- a/lib/CodeGen/ExpressionGen.cc
+++ b/lib/CodeGen/ExpressionGen.cc
@@ -299,8 +299,9 @@ Value *CodeGen::emitCall(const std::string &Callee,
}
std::vector<Value*> Args;
- if (!marshalCallArgs(Name, ArgExprs, Line, Args)) return nullptr;
- return FuncGen->emitCall(Name, Args);
+ const FuncSig *Sig = resolveCall(Name, ArgExprs);
+ if (!Sig || !marshalCallArgs(*Sig, ArgExprs, Line, Args)) return nullptr;
+ return FuncGen->emitCall(Sig->LinkName, Args);
}
Value *CodeGen::emitAllocationSize(ExprAST *Expr) {