fix: memory issues, parser errors and get_ast_if returning always NULL

This commit is contained in:
matteo 2026-01-30 16:51:10 +01:00
parent 3fa7b97282
commit f8b91d4da3
4 changed files with 5 additions and 2 deletions

View file

@ -140,6 +140,7 @@ bool grammar_init(void)
// Element
add_first(RULE_ELEMENT, TOKEN_WORD);
add_first(RULE_ELEMENT, TOKEN_ASSIGNMENT_WORD);
add_firsts(RULE_ELEMENT, first(RULE_REDIRECTION));
// Prefix

View file

@ -281,7 +281,7 @@ struct ast *parse_simple_command(struct lexer_context *ctx)
struct ast *parse_element(struct lexer_context *ctx)
{
struct token *token = PEEK_TOKEN();
if (token->type == TOKEN_WORD)
if (token->type == TOKEN_WORD || token->type == TOKEN_ASSIGNMENT_WORD)
{
token = POP_TOKEN();
return ast_create_word(token->data);