]> git.lizzy.rs Git - rust.git/blobdiff - compiler/rustc_infer/src/infer/error_reporting/note.rs
Rollup merge of #106747 - yanchen4791:issue-105507-fix, r=estebank
[rust.git] / compiler / rustc_infer / src / infer / error_reporting / note.rs
index 7504ed094a3d4160715436ac3981b6f1729e45e3..b18cbd404d47f8c03895ef5db759d18f4f722077 100644 (file)
@@ -320,6 +320,7 @@ pub fn suggest_copy_trait_method_bounds(
             .impl_trait_ref(impl_def_id)
             else { return; };
         let trait_substs = trait_ref
+            .subst_identity()
             // Replace the explicit self type with `Self` for better suggestion rendering
             .with_self_ty(self.tcx, self.tcx.mk_ty_param(0, kw::SelfUpper))
             .substs;
@@ -329,9 +330,8 @@ pub fn suggest_copy_trait_method_bounds(
 
         let Ok(trait_predicates) = self
             .tcx
-            .bound_explicit_predicates_of(trait_item_def_id)
-            .map_bound(|p| p.predicates)
-            .subst_iter_copied(self.tcx, trait_item_substs)
+            .explicit_predicates_of(trait_item_def_id)
+            .instantiate_own(self.tcx, trait_item_substs)
             .map(|(pred, _)| {
                 if pred.is_suggestable(self.tcx, false) {
                     Ok(pred.to_string())