@@ -255,7 +255,6 @@ fn place_components_conflict<'tcx>(
255
255
| ( ProjectionElem :: Index { .. } , _, _)
256
256
| ( ProjectionElem :: ConstantIndex { .. } , _, _)
257
257
| ( ProjectionElem :: Subslice { .. } , _, _)
258
- | ( ProjectionElem :: OpaqueCast { .. } , _, _)
259
258
| ( ProjectionElem :: Downcast { .. } , _, _) => {
260
259
// Recursive case. This can still be disjoint on a
261
260
// further iteration if this a shallow access and
@@ -323,17 +322,6 @@ fn place_projection_conflict<'tcx>(
323
322
debug ! ( "place_element_conflict: DISJOINT-OR-EQ-DEREF" ) ;
324
323
Overlap :: EqualOrDisjoint
325
324
}
326
- ( ProjectionElem :: OpaqueCast ( v1) , ProjectionElem :: OpaqueCast ( v2) ) => {
327
- if v1 == v2 {
328
- // same type - recur.
329
- debug ! ( "place_element_conflict: DISJOINT-OR-EQ-OPAQUE" ) ;
330
- Overlap :: EqualOrDisjoint
331
- } else {
332
- // Different types. Disjoint!
333
- debug ! ( "place_element_conflict: DISJOINT-OPAQUE" ) ;
334
- Overlap :: Disjoint
335
- }
336
- }
337
325
( ProjectionElem :: Field ( f1, _) , ProjectionElem :: Field ( f2, _) ) => {
338
326
if f1 == f2 {
339
327
// same field (e.g., `a.y` vs. `a.y`) - recur.
@@ -537,7 +525,6 @@ fn place_projection_conflict<'tcx>(
537
525
| ProjectionElem :: Field ( ..)
538
526
| ProjectionElem :: Index ( ..)
539
527
| ProjectionElem :: ConstantIndex { .. }
540
- | ProjectionElem :: OpaqueCast { .. }
541
528
| ProjectionElem :: Subslice { .. }
542
529
| ProjectionElem :: Downcast ( ..) ,
543
530
_,
0 commit comments