From 5d46c19b25a05a289ccecfa38bc0be849af87877 Mon Sep 17 00:00:00 2001 From: A404M Date: Fri, 24 Jan 2025 04:12:03 +0330 Subject: add types and type checking (not complete) --- src/compiler/lexer.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'src/compiler/lexer.c') diff --git a/src/compiler/lexer.c b/src/compiler/lexer.c index f248641..8994bce 100644 --- a/src/compiler/lexer.c +++ b/src/compiler/lexer.c @@ -123,14 +123,11 @@ LexerNodeArray lexer(char *str) { lexerPushClear(&result, &result_size, iter, &node_str_begin, &node_token, LEXER_TOKEN_NUMBER); } - } else if (isSymbol(c)) { - if (node_token != LEXER_TOKEN_SYMBOL) { + } else if (isSymbol(c) || isSingleSymbol(c)) { + if (node_token != LEXER_TOKEN_SYMBOL || isSingleSymbol(*node_str_begin)) { lexerPushClear(&result, &result_size, iter, &node_str_begin, &node_token, LEXER_TOKEN_SYMBOL); } - } else if (isSingleSymbol(c)) { - lexerPushClear(&result, &result_size, iter, &node_str_begin, &node_token, - LEXER_TOKEN_SYMBOL); } else { RETURN_ERROR: free(result.data); -- cgit v1.2.3