@@ -2632,7 +2632,7 @@ impl<'a> Parser<'a> {
2632
2632
self . bump ( ) ;
2633
2633
let e = self . parse_prefix_expr ( None ) ;
2634
2634
let ( span, e) = self . interpolated_or_expr_span ( e) ?;
2635
- ( span, self . mk_unary ( UnOp :: Not , e) )
2635
+ ( lo . to ( span) , self . mk_unary ( UnOp :: Not , e) )
2636
2636
}
2637
2637
// Suggest `!` for bitwise negation when encountering a `~`
2638
2638
token:: Tilde => {
@@ -2645,26 +2645,26 @@ impl<'a> Parser<'a> {
2645
2645
err. span_label ( span_of_tilde, "did you mean `!`?" ) ;
2646
2646
err. help ( "use `!` instead of `~` if you meant to perform bitwise negation" ) ;
2647
2647
err. emit ( ) ;
2648
- ( span, self . mk_unary ( UnOp :: Not , e) )
2648
+ ( lo . to ( span) , self . mk_unary ( UnOp :: Not , e) )
2649
2649
}
2650
2650
token:: BinOp ( token:: Minus ) => {
2651
2651
self . bump ( ) ;
2652
2652
let e = self . parse_prefix_expr ( None ) ;
2653
2653
let ( span, e) = self . interpolated_or_expr_span ( e) ?;
2654
- ( span, self . mk_unary ( UnOp :: Neg , e) )
2654
+ ( lo . to ( span) , self . mk_unary ( UnOp :: Neg , e) )
2655
2655
}
2656
2656
token:: BinOp ( token:: Star ) => {
2657
2657
self . bump ( ) ;
2658
2658
let e = self . parse_prefix_expr ( None ) ;
2659
2659
let ( span, e) = self . interpolated_or_expr_span ( e) ?;
2660
- ( span, self . mk_unary ( UnOp :: Deref , e) )
2660
+ ( lo . to ( span) , self . mk_unary ( UnOp :: Deref , e) )
2661
2661
}
2662
2662
token:: BinOp ( token:: And ) | token:: AndAnd => {
2663
2663
self . expect_and ( ) ?;
2664
2664
let m = self . parse_mutability ( ) ;
2665
2665
let e = self . parse_prefix_expr ( None ) ;
2666
2666
let ( span, e) = self . interpolated_or_expr_span ( e) ?;
2667
- ( span, ExprKind :: AddrOf ( m, e) )
2667
+ ( lo . to ( span) , ExprKind :: AddrOf ( m, e) )
2668
2668
}
2669
2669
token:: Ident ( ..) if self . token . is_keyword ( keywords:: In ) => {
2670
2670
self . bump ( ) ;
@@ -2675,13 +2675,13 @@ impl<'a> Parser<'a> {
2675
2675
let blk = self . parse_block ( ) ?;
2676
2676
let span = blk. span ;
2677
2677
let blk_expr = self . mk_expr ( span, ExprKind :: Block ( blk) , ThinVec :: new ( ) ) ;
2678
- ( span, ExprKind :: InPlace ( place, blk_expr) )
2678
+ ( lo . to ( span) , ExprKind :: InPlace ( place, blk_expr) )
2679
2679
}
2680
2680
token:: Ident ( ..) if self . token . is_keyword ( keywords:: Box ) => {
2681
2681
self . bump ( ) ;
2682
2682
let e = self . parse_prefix_expr ( None ) ;
2683
2683
let ( span, e) = self . interpolated_or_expr_span ( e) ?;
2684
- ( span, ExprKind :: Box ( e) )
2684
+ ( lo . to ( span) , ExprKind :: Box ( e) )
2685
2685
}
2686
2686
_ => return self . parse_dot_or_call_expr ( Some ( attrs) )
2687
2687
} ;
0 commit comments