From: Brendan Hansen Date: Sat, 11 Mar 2023 01:06:37 +0000 (-0600) Subject: bugfix: return simple structures from dyncall procedures X-Git-Url: https://git.brendanfh.com/?a=commitdiff_plain;h=e26937301f2f7291fcabebd89d85e21a450fb14e;p=onyx.git bugfix: return simple structures from dyncall procedures --- diff --git a/compiler/src/wasm_emit.c b/compiler/src/wasm_emit.c index f73fba2d..1fda5143 100644 --- a/compiler/src/wasm_emit.c +++ b/compiler/src/wasm_emit.c @@ -4120,6 +4120,11 @@ static void emit_function(OnyxWasmModule* mod, AstFunction* fd) { } static char encode_type_as_dyncall_symbol(Type *t) { + if (type_struct_is_just_one_basic_value(t)) { + Type *inner = type_struct_is_just_one_basic_value(t); + return encode_type_as_dyncall_symbol(inner); + } + if (t->kind == Type_Kind_Slice) return 's'; if (t->kind == Type_Kind_Pointer) return 'p'; if (t->kind == Type_Kind_Enum) return encode_type_as_dyncall_symbol(t->Enum.backing);