rhs of ?? and %% can be any expression
parent
73727bd1c5
commit
c4f5a00253
|
@ -67,9 +67,9 @@ AsmClobbers= ":" list("String", ",")
|
|||
|
||||
UnwrapExpression = BoolOrExpression (UnwrapMaybe | UnwrapError) | BoolOrExpression
|
||||
|
||||
UnwrapMaybe = "??" BoolOrExpression
|
||||
UnwrapMaybe = "??" Expression
|
||||
|
||||
UnwrapError = "%%" option("|" "Symbol" "|") BoolOrExpression
|
||||
UnwrapError = "%%" option("|" "Symbol" "|") Expression
|
||||
|
||||
AssignmentExpression = UnwrapExpression AssignmentOperator UnwrapExpression | UnwrapExpression
|
||||
|
||||
|
|
|
@ -2048,7 +2048,7 @@ static AstNode *ast_parse_unwrap_expr(ParseContext *pc, int *token_index, bool m
|
|||
if (token->id == TokenIdDoubleQuestion) {
|
||||
*token_index += 1;
|
||||
|
||||
AstNode *rhs = ast_parse_bool_or_expr(pc, token_index, true);
|
||||
AstNode *rhs = ast_parse_expression(pc, token_index, true);
|
||||
|
||||
AstNode *node = ast_create_node(pc, NodeTypeBinOpExpr, token);
|
||||
node->data.bin_op_expr.op1 = lhs;
|
||||
|
|
Loading…
Reference in New Issue