aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2019-04-24 21:45:54 -0700
committerMichael Forney <mforney@mforney.org>2019-04-24 22:32:22 -0700
commita8a096d9df2628dc470ff66ef1fe3f5941b86609 (patch)
treec0fa7a1a7487fd7c9f05f90b1547e9e277ddf49c
parent65a3036d8cb03b107aca6e21597b582a46f283a0 (diff)
downloadcproc-a8a096d9df2628dc470ff66ef1fe3f5941b86609.tar.xz
Free function call argument lists
-rw-r--r--qbe.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/qbe.c b/qbe.c
index 465634f..6d720ca 100644
--- a/qbe.c
+++ b/qbe.c
@@ -665,9 +665,11 @@ funcexpr(struct func *f, struct expr *e)
}
*argval = NULL;
op = e->call.func->type->base->func.isvararg ? IVACALL : ICALL;
- return funcinstn(f, op, e->type == &typevoid ? NULL : e->type->repr, argvals);
+ v = funcinstn(f, op, e->type == &typevoid ? NULL : e->type->repr, argvals);
+ free(argvals);
//if (e->call.func->type->base->func.isnoreturn)
// funcret(f, NULL);
+ return v;
case EXPRUNARY:
switch (e->unary.op) {
case TBAND: