diff --git a/lib/ExecutionEngine/JIT/JIT.cpp b/lib/ExecutionEngine/JIT/JIT.cpp index 0f98ddcabb3..a611e82585c 100644 --- a/lib/ExecutionEngine/JIT/JIT.cpp +++ b/lib/ExecutionEngine/JIT/JIT.cpp @@ -356,8 +356,9 @@ GenericValue JIT::runFunction(Function *F, const FunctionType *FTy = F->getFunctionType(); const Type *RetTy = FTy->getReturnType(); - assert((FTy->getNumParams() <= ArgValues.size() || FTy->isVarArg()) && - "Too many arguments passed into function!"); + assert((FTy->getNumParams() == ArgValues.size() || + (FTy->isVarArg() && FTy->getNumParams() <= ArgValues.size())) && + "Wrong number of arguments passed into function!"); assert(FTy->getNumParams() == ArgValues.size() && "This doesn't support passing arguments through varargs (yet)!");