lang: ast: fix parsing of parenthesised sub-expressions in keyword arguments

This commit is contained in:
2024-12-02 11:37:01 +00:00
parent 45e2d5919a
commit 1204bffb4d

View File

@@ -819,8 +819,14 @@ static enum ivy_status add_child(
|| state->s_subexpr == EXPR_SUBTYPE_COMPLEX_MSG) {
/* treat the child node as a keyword-message argument */
b_queue_push_back(&state->s_args, &child->n_entry);
} else if (state->s_subexpr == EXPR_SUBTYPE_KEYWORD_ARG) {
/* treat the child node as a sub-expression enclosed in
* parentheses (i.e. an operand). */
b_queue_push_back(&state->s_output_queue, &child->n_entry);
state->s_prev_component = EXPR_CMP_OPERAND;
} else if (child->n_type == IVY_AST_MSG) {
push_operator(state, child);
state->s_prev_component = EXPR_CMP_MSG;
} else {
/* treat the child node as a sub-expression enclosed in
* parentheses (i.e. an operand). */