blob: 9f164822deacb5381667ca51a2f12aa9fb9dbb83 [file] [log] [blame]
error[E0119]: conflicting implementations of trait `std::ops::Drop` for type `std::boxed::Box<_>`:
--> $DIR/issue-41974.rs:7:1
|
LL | impl<T> Drop for T where T: A {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: conflicting implementation in crate `alloc`:
- impl<T> std::ops::Drop for std::boxed::Box<T>
where T: ?Sized;
= note: downstream crates may implement trait `A` for type `std::boxed::Box<_>`
error[E0120]: the Drop trait may only be implemented on structures
--> $DIR/issue-41974.rs:7:18
|
LL | impl<T> Drop for T where T: A {
| ^ implementing Drop requires a struct
error[E0210]: type parameter `T` must be used as the type parameter for some local type (e.g., `MyStruct<T>`)
--> $DIR/issue-41974.rs:7:6
|
LL | impl<T> Drop for T where T: A {
| ^ type parameter `T` must be used as the type parameter for some local type
|
= note: implementing a foreign trait is only possible if at least one of the types for which is it implemented is local
= note: only traits defined in the current crate can be implemented for a type parameter
error: aborting due to 3 previous errors
Some errors have detailed explanations: E0119, E0120, E0210.
For more information about an error, try `rustc --explain E0119`.