@@ -771,6 +771,24 @@ fn parse_bottom_expr(&parser p) -> @ast::expr {
771
771
hi = p. get_hi_pos ( ) ;
772
772
expect ( p, token:: RPAREN ) ;
773
773
ret @spanned ( lo, hi, e. node ) ;
774
+
775
+ } else if ( p. peek ( ) == token:: LBRACE ) {
776
+ auto blk = parse_block ( p) ;
777
+ ret @spanned ( blk. span . lo , blk. span . hi ,
778
+ ast:: expr_block ( blk, p. get_ann ( ) ) ) ;
779
+ } else if ( eat_word ( p, "if" ) ) {
780
+ ret parse_if_expr ( p) ;
781
+ } else if ( eat_word ( p, "for" ) ) {
782
+ ret parse_for_expr ( p) ;
783
+ } else if ( eat_word ( p, "while" ) ) {
784
+ ret parse_while_expr ( p) ;
785
+ } else if ( eat_word ( p, "do" ) ) {
786
+ ret parse_do_while_expr ( p) ;
787
+ } else if ( eat_word ( p, "alt" ) ) {
788
+ ret parse_alt_expr ( p) ;
789
+ } else if ( eat_word ( p, "spawn" ) ) {
790
+ ret parse_spawn_expr ( p) ;
791
+
774
792
} else if ( eat_word ( p, "tup" ) ) {
775
793
fn parse_elt ( & parser p) -> ast:: elt {
776
794
auto m = parse_mutability ( p) ;
@@ -1415,33 +1433,11 @@ fn parse_expr(&parser p) -> @ast::expr {
1415
1433
fn parse_expr_res ( & parser p, restriction r) -> @ast:: expr {
1416
1434
auto old = p. get_restriction ( ) ;
1417
1435
p. restrict ( r) ;
1418
- auto e = parse_expr_inner ( p) ;
1436
+ auto e = parse_assign_expr ( p) ;
1419
1437
p. restrict ( old) ;
1420
1438
ret e;
1421
1439
}
1422
1440
1423
- fn parse_expr_inner ( & parser p) -> @ast:: expr {
1424
- if ( p. peek ( ) == token:: LBRACE ) {
1425
- auto blk = parse_block ( p) ;
1426
- ret @spanned ( blk. span . lo , blk. span . hi ,
1427
- ast:: expr_block ( blk, p. get_ann ( ) ) ) ;
1428
- } else if ( eat_word ( p, "if" ) ) {
1429
- ret parse_if_expr ( p) ;
1430
- } else if ( eat_word ( p, "for" ) ) {
1431
- ret parse_for_expr ( p) ;
1432
- } else if ( eat_word ( p, "while" ) ) {
1433
- ret parse_while_expr ( p) ;
1434
- } else if ( eat_word ( p, "do" ) ) {
1435
- ret parse_do_while_expr ( p) ;
1436
- } else if ( eat_word ( p, "alt" ) ) {
1437
- ret parse_alt_expr ( p) ;
1438
- } else if ( eat_word ( p, "spawn" ) ) {
1439
- ret parse_spawn_expr ( p) ;
1440
- } else {
1441
- ret parse_assign_expr ( p) ;
1442
- }
1443
- }
1444
-
1445
1441
fn parse_initializer ( & parser p) -> option:: t [ ast:: initializer ] {
1446
1442
alt ( p. peek ( ) ) {
1447
1443
case ( token:: EQ ) {
0 commit comments