diff options
| author | Santiago Pastorino <spastorino@gmail.com> | 2023-06-24 00:00:08 -0300 |
|---|---|---|
| committer | Santiago Pastorino <spastorino@gmail.com> | 2023-07-08 18:21:34 -0300 |
| commit | 20429af7a3a9f6d7b4dfbcdc85a4fa8f6187f922 (patch) | |
| tree | c396fa908fdfd6471e73d5e22997c66e34a6741c /compiler/rustc_privacy/src | |
| parent | d1389b9b4895e52ec7d1859a2d86e96babfb5d76 (diff) | |
| download | rust-20429af7a3a9f6d7b4dfbcdc85a4fa8f6187f922.tar.gz rust-20429af7a3a9f6d7b4dfbcdc85a4fa8f6187f922.zip | |
Replace RPITIT current impl with new strategy that lowers as a GAT
Diffstat (limited to 'compiler/rustc_privacy/src')
| -rw-r--r-- | compiler/rustc_privacy/src/lib.rs | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/compiler/rustc_privacy/src/lib.rs b/compiler/rustc_privacy/src/lib.rs index 4fcee9396ed..fe23506b878 100644 --- a/compiler/rustc_privacy/src/lib.rs +++ b/compiler/rustc_privacy/src/lib.rs @@ -136,19 +136,7 @@ where fn visit_projection_ty(&mut self, projection: ty::AliasTy<'tcx>) -> ControlFlow<V::BreakTy> { let tcx = self.def_id_visitor.tcx(); - let (trait_ref, assoc_substs) = if tcx.def_kind(projection.def_id) - != DefKind::ImplTraitPlaceholder - { - projection.trait_ref_and_own_substs(tcx) - } else { - // HACK(RPITIT): Remove this when RPITITs are lowered to regular assoc tys - let def_id = tcx.impl_trait_in_trait_parent_fn(projection.def_id); - let trait_generics = tcx.generics_of(def_id); - ( - ty::TraitRef::new(tcx, def_id, projection.substs.truncate_to(tcx, trait_generics)), - &projection.substs[trait_generics.count()..], - ) - }; + let (trait_ref, assoc_substs) = projection.trait_ref_and_own_substs(tcx); self.visit_trait(trait_ref)?; if V::SHALLOW { ControlFlow::Continue(()) @@ -651,7 +639,6 @@ impl<'tcx> EmbargoVisitor<'tcx> { | DefKind::ForeignTy | DefKind::Fn | DefKind::OpaqueTy - | DefKind::ImplTraitPlaceholder | DefKind::AssocFn | DefKind::Trait | DefKind::TyParam |
