File tree 1 file changed +2
-7
lines changed
compiler/rustc_parse/src/parser
1 file changed +2
-7
lines changed Original file line number Diff line number Diff line change @@ -833,16 +833,11 @@ impl<'a> Parser<'a> {
833
833
( "cast" , None )
834
834
} ;
835
835
836
- // Save the memory location of expr before parsing any following postfix operators.
837
- // This will be compared with the memory location of the output expression.
838
- // If they different we can assume we parsed another expression because the existing expression is not reallocated.
839
- let addr_before = & * cast_expr as * const _ as usize ;
840
836
let with_postfix = self . parse_dot_or_call_expr_with_ ( cast_expr, span) ?;
841
- let changed = addr_before != & * with_postfix as * const _ as usize ;
842
837
843
838
// Check if an illegal postfix operator has been added after the cast.
844
- // If the resulting expression is not a cast, or has a different memory location, it is an illegal postfix operator.
845
- if !matches ! ( with_postfix. kind, ExprKind :: Cast ( _, _) | ExprKind :: Type ( _, _) ) || changed {
839
+ // If the resulting expression is not a cast, it is an illegal postfix operator.
840
+ if !matches ! ( with_postfix. kind, ExprKind :: Cast ( _, _) | ExprKind :: Type ( _, _) ) {
846
841
let msg = format ! (
847
842
"{cast_kind} cannot be followed by {}" ,
848
843
match with_postfix. kind {
You can’t perform that action at this time.
0 commit comments