From 8a1016425aba995a391271666b3ae8a29c2dd3f3 Mon Sep 17 00:00:00 2001 From: A404M Date: Thu, 27 Mar 2025 19:21:37 +0330 Subject: fix memory leak --- src/compiler/parser.c | 2 +- src/runner/runner.c | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/compiler/parser.c b/src/compiler/parser.c index 2ab8860..d508110 100644 --- a/src/compiler/parser.c +++ b/src/compiler/parser.c @@ -113,7 +113,7 @@ static constexpr ParserOrder PARSER_ORDER[] = { ORDER_ARRAY(LEXER_TOKEN_SYMBOL_DEREFERENCE, ), }, { - .ltr = true, + .ltr = false, ORDER_ARRAY(LEXER_TOKEN_SYMBOL_PLUS, LEXER_TOKEN_SYMBOL_MINUS, LEXER_TOKEN_SYMBOL_ADDRESS, ), }, diff --git a/src/runner/runner.c b/src/runner/runner.c index 7d36b67..2c38f74 100644 --- a/src/runner/runner.c +++ b/src/runner/runner.c @@ -192,6 +192,7 @@ AstTree *runExpression(AstTree *expr, bool *shouldRet) { UNREACHABLE; } left = var->metadata; + astTreeDelete(var); } runnerVariableSetValue(left, runExpression(&metadata->right, shouldRet)); return copyAstTree(left->value); -- cgit v1.2.3