File tree Expand file tree Collapse file tree 8 files changed +458
-176
lines changed
Expand file tree Collapse file tree 8 files changed +458
-176
lines changed Load Diff Large diffs are not rendered by default.
Original file line number Diff line number Diff line change @@ -532,9 +532,6 @@ braced_expr:
532532 | lbrace block_body rbrace { Expression. block ~loc: (to_loc $ loc) ~core_loc: (to_loc $ loc) $ 2 }
533533 | lbrace record_exprs rbrace { Expression. record_fields ~loc: (to_loc $ loc) ~core_loc: (to_loc $ loc) $ 2 }
534534
535- block:
536- | lbrace block_body rbrace { Expression. block ~loc: (to_loc $ loc) ~core_loc: (to_loc $ loc) $ 2 }
537-
538535arg_default:
539536 | EQUAL non_stmt_expr { $ 2 }
540537
@@ -573,14 +570,14 @@ if_expr:
573570 | IF lparen expr rparen opt_eols expr ioption(else_expr) % prec _if { Expression. if_ ~loc: (to_loc $ loc) ~core_loc: (to_loc $ loc) $ 3 $ 6 $ 7 }
574571
575572while_expr:
576- | WHILE lparen expr rparen block { Expression. while_ ~loc: (to_loc $ loc) ~core_loc: (to_loc $ loc) $ 3 $ 5 }
573+ | WHILE lparen expr rparen opt_eols expr { Expression. while_ ~loc: (to_loc $ loc) ~core_loc: (to_loc $ loc) $ 3 $ 6 }
577574
578575for_inner_expr:
579576 | % prec EOL { None }
580577 | expr { Some $ 1 }
581578
582579for_expr:
583- | FOR lparen block_body_expr? opt_eols SEMI opt_eols for_inner_expr opt_eols SEMI opt_eols for_inner_expr rparen block { Expression. for_ ~loc: (to_loc $ loc) ~core_loc: (to_loc $ loc) $ 3 $ 7 $ 11 $ 13 }
580+ | FOR lparen block_body_expr? opt_eols SEMI opt_eols for_inner_expr opt_eols SEMI opt_eols for_inner_expr rparen opt_eols expr { Expression. for_ ~loc: (to_loc $ loc) ~core_loc: (to_loc $ loc) $ 3 $ 7 $ 11 $ 14 }
584581
585582when_guard:
586583 | opt_eols WHEN expr { $ 3 }
Original file line number Diff line number Diff line change @@ -490,6 +490,7 @@ while (true /* true */) {
490490while (true /* true */) {
491491 void
492492}
493+ while (true /* true */) void
493494
494495for (/* for */
495496 /* init */
@@ -531,6 +532,7 @@ for (/* for */
531532for (;; /* for */ /* init */ /*cond*/ /*inc*/ /* more */ /* and more */) {
532533 void
533534}
535+ for (;; /* for */ /* init */ /*cond*/ /*inc*/ /* more */ /* and more */) void
534536
535537match (/* match */ /*foo*/ foo /* post foo */ /* post foo 2 */) { /* mr branch */
536538 _ => /* void */ void, /* post void */
Original file line number Diff line number Diff line change @@ -406,12 +406,14 @@ while /* true */ (true) {void}
406406while (/* true */ true) {void}
407407while (true /* true */) {void}
408408while (true) /* true */ {void}
409+ while (true) /* true */ void
409410
410411for /* for */ (/* init */ let mut i = 1; /*cond*/i < 1; /*inc*/ i += 1 /* more */ )/* and more */ {void}
411412for /* for */ (/* init */ ; /*cond*/i < 1; /*inc*/ i += 1 /* more */ )/* and more */ {void}
412413for /* for */ (/* init */ let mut i = 1; /*cond*/; /*inc*/ i += 1 /* more */ )/* and more */ {void}
413414for /* for */ (/* init */ let mut i = 1; /*cond*/i < 1; /*inc*/ /* more */ )/* and more */ {void}
414415for /* for */ (/* init */ ; /*cond*/; /*inc*/ /* more */ )/* and more */ {void}
416+ for /* for */ (/* init */ ; /*cond*/; /*inc*/ /* more */ )/* and more */ void
415417
416418match /* match */ (/*foo*/ foo /* post foo */) /* post foo 2 */ {/* mr branch */_=> /* void */void/* post void */}
417419
Original file line number Diff line number Diff line change 1616 let strLength = 0
1717 print("Loop")
1818}
19+
20+ for (let mut i = 0; i < size; i += 1) print("Loop")
Original file line number Diff line number Diff line change @@ -12,3 +12,6 @@ let verylongvariablenameforcingalinebreakhereplease = 2
1212 let strLength = 0
1313 print("Loop")
1414 }
15+
16+ for (let mut i = 0; i < size; i += 1)
17+ print("Loop")
Original file line number Diff line number Diff line change @@ -6,3 +6,5 @@ let size = 10
66while (i < size) {
77 i += 1
88}
9+
10+ while (i < size) i += 1
Original file line number Diff line number Diff line change @@ -6,3 +6,6 @@ module WhileLoops
66 while (i < size) {
77 i = i + 1
88 }
9+
10+ while (i < size)
11+ i = i + 1
You can’t perform that action at this time.
0 commit comments