Rollup merge of #55736 - estebank:elide-anon-lt, r=petrochenkov
Elide anon lifetimes in conflicting impl note Fix #54690.
This commit is contained in:
commit
e873984fa8
3 changed files with 7 additions and 4 deletions
|
|
@ -396,7 +396,10 @@ fn to_pretty_impl_header(tcx: TyCtxt<'_, '_, '_>, impl_def_id: DefId) -> Option<
|
|||
if !substs.is_noop() {
|
||||
types_without_default_bounds.extend(substs.types());
|
||||
w.push('<');
|
||||
w.push_str(&substs.iter().map(|k| k.to_string()).collect::<Vec<_>>().join(", "));
|
||||
w.push_str(&substs.iter()
|
||||
.map(|k| k.to_string())
|
||||
.filter(|k| &k[..] != "'_")
|
||||
.collect::<Vec<_>>().join(", "));
|
||||
w.push('>');
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ LL | impl Copy for &'static NotSync {}
|
|||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: conflicting implementation in crate `core`:
|
||||
- impl<'_, T> std::marker::Copy for &T
|
||||
- impl<T> std::marker::Copy for &T
|
||||
where T: ?Sized;
|
||||
|
||||
error[E0119]: conflicting implementations of trait `std::marker::Copy` for type `&[NotSync]`:
|
||||
|
|
@ -24,7 +24,7 @@ LL | impl Copy for &'static [NotSync] {}
|
|||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: conflicting implementation in crate `core`:
|
||||
- impl<'_, T> std::marker::Copy for &T
|
||||
- impl<T> std::marker::Copy for &T
|
||||
where T: ?Sized;
|
||||
|
||||
error[E0206]: the trait `Copy` may not be implemented for this type
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ LL | impl<Foo> Deref for Foo { } //~ ERROR must be used
|
|||
| ^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: conflicting implementation in crate `core`:
|
||||
- impl<'_, T> std::ops::Deref for &T
|
||||
- impl<T> std::ops::Deref for &T
|
||||
where T: ?Sized;
|
||||
|
||||
error[E0210]: type parameter `Foo` must be used as the type parameter for some local type (e.g. `MyStruct<Foo>`)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue