diff options
author | Michael Forney <mforney@mforney.org> | 2019-04-24 21:45:54 -0700 |
---|---|---|
committer | Michael Forney <mforney@mforney.org> | 2019-04-24 22:32:22 -0700 |
commit | a8a096d9df2628dc470ff66ef1fe3f5941b86609 (patch) | |
tree | c0fa7a1a7487fd7c9f05f90b1547e9e277ddf49c | |
parent | 65a3036d8cb03b107aca6e21597b582a46f283a0 (diff) | |
download | cproc-a8a096d9df2628dc470ff66ef1fe3f5941b86609.tar.xz |
Free function call argument lists
-rw-r--r-- | qbe.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -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: |