diff options
Diffstat (limited to 'src/ir.cpp')
| -rw-r--r-- | src/ir.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/ir.cpp b/src/ir.cpp index 40bef0805..789c32317 100644 --- a/src/ir.cpp +++ b/src/ir.cpp @@ -1626,9 +1626,11 @@ irValue *ir_emit_call(irProcedure *p, irValue *value, irValue **args, isize arg_ context_ptr = ir_find_or_generate_context_ptr(p); } + bool is_c_vararg = pt->Proc.c_vararg; isize param_count = pt->Proc.param_count; - if (pt->Proc.c_vararg) { + if (is_c_vararg) { GB_ASSERT(param_count-1 <= arg_count); + param_count -= 1; } else { GB_ASSERT_MSG(param_count == arg_count, "%td == %td", param_count, arg_count); } |