From 996b0c08e7300bc68e680593c407e8cd1ef73a69 Mon Sep 17 00:00:00 2001 From: lemon Date: Sat, 24 Jun 2023 23:40:21 +0200 Subject: abi0: fix agg return by pointer not updating arg count --- abi0.c | 1 + 1 file changed, 1 insertion(+) diff --git a/abi0.c b/abi0.c index a798735..9c0658b 100644 --- a/abi0.c +++ b/abi0.c @@ -18,6 +18,7 @@ abiret(struct abiarg abiret[2], struct abiargsvec *abiargs, int *ni, union irtyp if (retty.isagg) { retreg = mctarg->abiret(r, cls, ni, retty); if (!retreg) { + ++*ni; vpush(abiargs, ((struct abiarg) { cls2type(KPTR), .stk = r[1] })); if (r[0] == -1) { memset(abiret, 0, 2*sizeof *abiret); -- cgit v1.2.3