@@ -1989,10 +1989,8 @@ impl<'a, 'tcx> MirBorrowckCtxt<'a, '_, 'tcx> {
19891989 } ,
19901990 // `OpaqueCast`: only transmutes the type, so no moves there.
19911991 // `Downcast` : only changes information about a `Place` without moving.
1992- // `Subtype` : only transmutes the type, so no moves.
19931992 // So it's safe to skip these.
19941993 ProjectionElem :: OpaqueCast ( _)
1995- | ProjectionElem :: Subtype ( _)
19961994 | ProjectionElem :: Downcast ( _, _)
19971995 | ProjectionElem :: UnwrapUnsafeBinder ( _) => ( ) ,
19981996 }
@@ -2218,7 +2216,6 @@ impl<'a, 'tcx> MirBorrowckCtxt<'a, '_, 'tcx> {
22182216 for ( place_base, elem) in place. iter_projections ( ) . rev ( ) {
22192217 match elem {
22202218 ProjectionElem :: Index ( _/*operand*/ ) |
2221- ProjectionElem :: Subtype ( _) |
22222219 ProjectionElem :: OpaqueCast ( _) |
22232220 ProjectionElem :: ConstantIndex { .. } |
22242221 // assigning to P[i] requires P to be valid.
@@ -2610,7 +2607,6 @@ impl<'a, 'tcx> MirBorrowckCtxt<'a, '_, 'tcx> {
26102607 | ProjectionElem :: Index ( ..)
26112608 | ProjectionElem :: ConstantIndex { .. }
26122609 | ProjectionElem :: Subslice { .. }
2613- | ProjectionElem :: Subtype ( ..)
26142610 | ProjectionElem :: OpaqueCast { .. }
26152611 | ProjectionElem :: Downcast ( ..)
26162612 | ProjectionElem :: UnwrapUnsafeBinder ( _) => {
0 commit comments