aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2022-11-21 10:30:59 +0000
committergingerBill <bill@gingerbill.org>2022-11-21 10:30:59 +0000
commitcb183e968a1bcc748bebe137e7ecb4ad6ff1eda0 (patch)
treeacfde76240a244f53f64e349af16e537aedfe75e
parent27d56d0da4c32fae3b52d8dcff65f111119b8d45 (diff)
Fix #2202
-rw-r--r--src/llvm_backend_general.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/llvm_backend_general.cpp b/src/llvm_backend_general.cpp
index f36dc1842..050168e8e 100644
--- a/src/llvm_backend_general.cpp
+++ b/src/llvm_backend_general.cpp
@@ -1524,6 +1524,9 @@ LLVMTypeRef lb_type_internal_for_procedures_raw(lbModule *m, Type *type) {
bool *params_by_ptr = gb_alloc_array(permanent_allocator(), bool, param_count);
if (type->Proc.result_count != 0) {
Type *single_ret = reduce_tuple_to_single_type(type->Proc.results);
+ if (is_type_proc(single_ret)) {
+ single_ret = t_rawptr;
+ }
ret = lb_type(m, single_ret);
if (ret != nullptr) {
if (is_type_boolean(single_ret) &&