about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorCameron Steffen <cam.steffen94@gmail.com>2025-09-16 17:08:14 -0500
committerCameron Steffen <cam.steffen94@gmail.com>2025-09-17 18:37:35 -0500
commit9ecca51bbe151c4ce0e374c46d1a0bfd1ec63d49 (patch)
tree4ad9a71977737e8a8d9ed2482b910d4ca0bc7c0d /src
parenteec6bd9d69832f57341c6de6a93fa7b9f47e2111 (diff)
downloadrust-9ecca51bbe151c4ce0e374c46d1a0bfd1ec63d49.tar.gz
rust-9ecca51bbe151c4ce0e374c46d1a0bfd1ec63d49.zip
Remove ImplSubject
Diffstat (limited to 'src')
-rw-r--r--src/librustdoc/html/render/mod.rs10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/librustdoc/html/render/mod.rs b/src/librustdoc/html/render/mod.rs
index b4ef47d1e26..6d684449b6d 100644
--- a/src/librustdoc/html/render/mod.rs
+++ b/src/librustdoc/html/render/mod.rs
@@ -2454,11 +2454,11 @@ fn get_id_for_impl(tcx: TyCtxt<'_>, impl_id: ItemId) -> String {
             (ty, Some(ty::TraitRef::new(tcx, trait_, [ty])))
         }
         ItemId::Blanket { impl_id, .. } | ItemId::DefId(impl_id) => {
-            match tcx.impl_subject(impl_id).skip_binder() {
-                ty::ImplSubject::Trait(trait_ref) => {
-                    (trait_ref.args[0].expect_ty(), Some(trait_ref))
-                }
-                ty::ImplSubject::Inherent(ty) => (ty, None),
+            if let Some(trait_ref) = tcx.impl_trait_ref(impl_id) {
+                let trait_ref = trait_ref.skip_binder();
+                (trait_ref.self_ty(), Some(trait_ref))
+            } else {
+                (tcx.type_of(impl_id).skip_binder(), None)
             }
         }
     };