aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2023-06-21 14:30:39 +0100
committergingerBill <bill@gingerbill.org>2023-06-21 14:30:39 +0100
commitea76e09ea741f0bf090d967cf3aaded59079d001 (patch)
treee2aa5f04768ace540c6376f1a0d481cae0d830d3 /src
parentc9fb078c0f1e09edcc023dce30dd0ca04f20cc24 (diff)
Fix empty varargs
Diffstat (limited to 'src')
-rw-r--r--src/llvm_backend_proc.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/llvm_backend_proc.cpp b/src/llvm_backend_proc.cpp
index 7cf82b208..47137c540 100644
--- a/src/llvm_backend_proc.cpp
+++ b/src/llvm_backend_proc.cpp
@@ -3345,6 +3345,9 @@ gb_internal lbValue lb_build_call_expr_internal(lbProcedure *p, Ast *expr) {
for_array(arg_index, pt->params->Tuple.variables) {
Entity *e = pt->params->Tuple.variables[arg_index];
if (pt->variadic && arg_index == pt->variadic_index) {
+ if (!is_c_vararg && args[arg_index].value == 0) {
+ args[arg_index] = lb_const_nil(p->module, e->type);
+ }
continue;
}