aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2021-05-24 14:46:03 +0100
committergingerBill <bill@gingerbill.org>2021-05-24 14:46:03 +0100
commit79f115d6a7eed3000a7ca8d40c4a8db2b79dd595 (patch)
treea8930ed4dee87d4a5364a16ce8a65c35133e501a
parent39eccdf6b947ee57e6e2c0921e7f733bd78dd8a8 (diff)
Handle #c_vararg correctly
-rw-r--r--src/llvm_backend.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/llvm_backend.cpp b/src/llvm_backend.cpp
index ab2c97557..c009e846a 100644
--- a/src/llvm_backend.cpp
+++ b/src/llvm_backend.cpp
@@ -8519,6 +8519,12 @@ lbValue lb_emit_call(lbProcedure *p, lbValue value, Array<lbValue> const &args,
param_index += 1;
}
+ if (is_c_vararg) {
+ for (isize i = processed_args.count; i < args.count; i++) {
+ array_add(&processed_args, args[i]);
+ }
+ }
+
if (inlining == ProcInlining_none) {
inlining = p->inlining;
}