From 0ff9508bb0ea7193b0101c3cd9b4ae594e44fd02 Mon Sep 17 00:00:00 2001 From: A404M Date: Thu, 13 Feb 2025 17:42:22 +0330 Subject: some clean up --- src/compiler/ast-tree.c | 5 ++++- src/compiler/lexer.c | 1 + src/compiler/parser.c | 1 + src/runner/runner.c | 1 + 4 files changed, 7 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/compiler/ast-tree.c b/src/compiler/ast-tree.c index b201c57..3e01b0b 100644 --- a/src/compiler/ast-tree.c +++ b/src/compiler/ast-tree.c @@ -554,6 +554,8 @@ AstTree *copyAstTree(AstTree *tree) { return newAstTree(tree->token, new_metadata, copyAstTree(tree->type), tree->str_begin, tree->str_end); } + case AST_TREE_TOKEN_KEYWORD_IF: + case AST_TREE_TOKEN_SCOPE: case AST_TREE_TOKEN_NONE: } printLog("Bad token %ld", tree->token); @@ -741,6 +743,7 @@ RETURN_ERROR: bool pushVariable(AstTreeHelper *helper, AstTreeVariables *variables, AstTreeVariable *variable) { + (void)helper; for (size_t j = 0; j < variables->size; ++j) { char *var_begin = variables->data[j]->name_begin; char *var_end = variables->data[j]->name_end; @@ -1448,7 +1451,7 @@ AstTree *astTreeParseCurlyBracket(ParserNode *parserNode, RETURN_ERROR: for (size_t i = 0; i < scope->expressions_size; ++i) { - // astTreeDelete(scope->expressions[i]); + astTreeDelete(scope->expressions[i]); } free(scope->variables.data); free(scope->expressions); diff --git a/src/compiler/lexer.c b/src/compiler/lexer.c index 7ea8f43..2e3090b 100644 --- a/src/compiler/lexer.c +++ b/src/compiler/lexer.c @@ -215,6 +215,7 @@ void lexerPushClear(LexerNodeArray *array, size_t *array_size, char *iter, } } // goto PUSH; + // fall through PUSH: case LEXER_TOKEN_KEYWORD_TYPE: case LEXER_TOKEN_KEYWORD_VOID: diff --git a/src/compiler/parser.c b/src/compiler/parser.c index 3b21074..26d53fb 100644 --- a/src/compiler/parser.c +++ b/src/compiler/parser.c @@ -766,6 +766,7 @@ ParserNode *parserNumber(LexerNode *node, ParserNode *parent) { printError(node->str_begin, node->str_end, "Not implemented"); return NULL; } + // fall through default: { bool success; uint64_t value = decimalToU64(node->str_begin, node->str_end, &success); diff --git a/src/runner/runner.c b/src/runner/runner.c index d36562a..2ab97a9 100644 --- a/src/runner/runner.c +++ b/src/runner/runner.c @@ -277,6 +277,7 @@ AstTree *runExpression(AstTree *expr, RunnerVariablePages *pages) { case AST_TREE_TOKEN_TYPE_TYPE: case AST_TREE_TOKEN_TYPE_FUNCTION: case AST_TREE_TOKEN_TYPE_VOID: + case AST_TREE_TOKEN_TYPE_I64: case AST_TREE_TOKEN_TYPE_U64: case AST_TREE_TOKEN_TYPE_BOOL: case AST_TREE_TOKEN_VARIABLE: -- cgit v1.2.3