11error[E0276]: impl has stricter requirements than trait
2- --> $DIR/issue-55872-1.rs:13 :15
2+ --> $DIR/issue-55872-1.rs:12 :15
33 |
44LL | fn foo<T>() -> Self::E;
55 | ----------------------- definition of `foo` from trait
@@ -8,7 +8,7 @@ LL | fn foo<T: Default>() -> Self::E {
88 | ^^^^^^^ impl has extra requirement `T: Default`
99
1010error[E0277]: the trait bound `S: Copy` is not satisfied in `(S, T)`
11- --> $DIR/issue-55872-1.rs:15 :9
11+ --> $DIR/issue-55872-1.rs:14 :9
1212 |
1313LL | (S::default(), T::default())
1414 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ within `(S, T)`, the trait `Copy` is not implemented for `S`
@@ -20,7 +20,7 @@ LL | impl<S: Default + std::marker::Copy> Bar for S {
2020 | +++++++++++++++++++
2121
2222error[E0277]: the trait bound `T: Copy` is not satisfied in `(S, T)`
23- --> $DIR/issue-55872-1.rs:15 :9
23+ --> $DIR/issue-55872-1.rs:14 :9
2424 |
2525LL | (S::default(), T::default())
2626 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ within `(S, T)`, the trait `Copy` is not implemented for `T`
@@ -31,13 +31,7 @@ help: consider further restricting this bound
3131LL | fn foo<T: Default + std::marker::Copy>() -> Self::E {
3232 | +++++++++++++++++++
3333
34- error: could not find defining uses
35- --> $DIR/issue-55872-1.rs:10:14
36- |
37- LL | type E = impl Copy;
38- | ^^^^^^^^^
39-
40- error: aborting due to 4 previous errors
34+ error: aborting due to 3 previous errors
4135
4236Some errors have detailed explanations: E0276, E0277.
4337For more information about an error, try `rustc --explain E0276`.
0 commit comments