authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2016-02-06 19:28:11-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2016-02-06 19:28:11-07:00
logc4f5a002535cfd1259d001dbda7923cd635dd0ba
treece309e7e9832ff60253a7f77b2f5948b8630a99c
parent73727bd1c517efdb99064d1c80c26a55bf52ac8b

rhs of ?? and %% can be any expression


2 files changed, 3 insertions(+), 3 deletions(-)

doc/langref.md+2-2
......@@ -67,9 +67,9 @@ AsmClobbers= ":" list("String", ",")
6767
6868UnwrapExpression = BoolOrExpression (UnwrapMaybe | UnwrapError) | BoolOrExpression
6969
70UnwrapMaybe = "??" BoolOrExpression
70UnwrapMaybe = "??" Expression
7171
72UnwrapError = "%%" option("|" "Symbol" "|") BoolOrExpression
72UnwrapError = "%%" option("|" "Symbol" "|") Expression
7373
7474AssignmentExpression = UnwrapExpression AssignmentOperator UnwrapExpression | UnwrapExpression
7575
src/parser.cpp+1-1
......@@ -2048,7 +2048,7 @@ static AstNode *ast_parse_unwrap_expr(ParseContext *pc, int *token_index, bool m
20482048 if (token->id == TokenIdDoubleQuestion) {
20492049 *token_index += 1;
20502050
2051 AstNode *rhs = ast_parse_bool_or_expr(pc, token_index, true);
2051 AstNode *rhs = ast_parse_expression(pc, token_index, true);
20522052
20532053 AstNode *node = ast_create_node(pc, NodeTypeBinOpExpr, token);
20542054 node->data.bin_op_expr.op1 = lhs;