X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;ds=sidebyside;f=ast.c;h=22c4defd76c694d3b696a6509c8408dc2c27934b;hb=4d394494b6fcbf144975acd3f1d311b63aba598f;hp=919e0a636e9befadfc3b4400bb56d09853ef831c;hpb=ccc2eb32988e4ea371308538c2be625fe374846e;p=xonotic%2Fgmqcc.git diff --git a/ast.c b/ast.c index 919e0a6..22c4def 100644 --- a/ast.c +++ b/ast.c @@ -87,6 +87,8 @@ static void ast_expression_delete(ast_expression *self) ast_delete(self->expression.params[i]); } vec_free(self->expression.params); + if (self->expression.varparam) + ast_delete(self->expression.varparam); } static void ast_expression_delete_full(ast_expression *self) @@ -584,6 +586,7 @@ void ast_member_delete(ast_member *self) * purpose that is not garbage-collected. */ ast_expression_delete((ast_expression*)self); + mem_d(self->name); mem_d(self); } @@ -1430,6 +1433,7 @@ bool ast_local_codegen(ast_value *self, ir_function *func, bool param) self->ir_values[ai]->unique_life = true; self->ir_values[ai]->locked = true; } + mem_d(name); } else {