@@ -24,38 +24,19 @@ LL | fn wrong_bound1<'b,'c,'d:'a+'c>(self, b: Inv<'b>, c: Inv<'c>, d: Inv<'d
2424 |
2525 = note: expected type `fn(&'a isize, Inv<'c>, Inv<'c>, Inv<'d>)`
2626 found type `fn(&'a isize, Inv<'_>, Inv<'c>, Inv<'d>)`
27- note: the lifetime 'c as defined on the method body at 37:5...
28- --> $DIR/regions-bound-missing-bound-in-impl.rs:37:5
29- |
30- LL | fn wrong_bound1<'b,'c,'d:'a+'c>(self, b: Inv<'b>, c: Inv<'c>, d: Inv<'d>) {
31- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
32- note: ...does not necessarily outlive the lifetime 'c as defined on the method body at 37:24
27+ note: the lifetime 'c as defined on the method body at 37:24...
3328 --> $DIR/regions-bound-missing-bound-in-impl.rs:37:24
3429 |
3530LL | fn wrong_bound1<'b,'c,'d:'a+'c>(self, b: Inv<'b>, c: Inv<'c>, d: Inv<'d>) {
3631 | ^^
37-
38- error[E0308]: method not compatible with trait
39- --> $DIR/regions-bound-missing-bound-in-impl.rs:37:5
40- |
41- LL | fn wrong_bound1<'b,'c,'d:'a+'c>(self, b: Inv<'b>, c: Inv<'c>, d: Inv<'d>) {
42- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ lifetime mismatch
43- |
44- = note: expected type `fn(&'a isize, Inv<'c>, Inv<'c>, Inv<'d>)`
45- found type `fn(&'a isize, Inv<'_>, Inv<'c>, Inv<'d>)`
46- note: the lifetime 'c as defined on the method body at 37:24...
32+ note: ...does not necessarily outlive the lifetime 'c as defined on the method body at 37:24
4733 --> $DIR/regions-bound-missing-bound-in-impl.rs:37:24
4834 |
4935LL | fn wrong_bound1<'b,'c,'d:'a+'c>(self, b: Inv<'b>, c: Inv<'c>, d: Inv<'d>) {
5036 | ^^
51- note: ...does not necessarily outlive the lifetime 'c as defined on the method body at 37:5
52- --> $DIR/regions-bound-missing-bound-in-impl.rs:37:5
53- |
54- LL | fn wrong_bound1<'b,'c,'d:'a+'c>(self, b: Inv<'b>, c: Inv<'c>, d: Inv<'d>) {
55- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
5637
5738error[E0195]: lifetime parameters or bounds on method `wrong_bound2` do not match the trait declaration
58- --> $DIR/regions-bound-missing-bound-in-impl.rs:52 :5
39+ --> $DIR/regions-bound-missing-bound-in-impl.rs:51 :5
5940 |
6041LL | fn wrong_bound2<'b,'c,'d:'a+'b>(self, b: Inv<'b>, c: Inv<'c>, d: Inv<'d>);
6142 | ---------------- lifetimes in impl do not match this method in trait
@@ -64,15 +45,15 @@ LL | fn wrong_bound2(self, b: Inv, c: Inv, d: Inv) {
6445 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ lifetimes do not match method in trait
6546
6647error[E0276]: impl has stricter requirements than trait
67- --> $DIR/regions-bound-missing-bound-in-impl.rs:59 :5
48+ --> $DIR/regions-bound-missing-bound-in-impl.rs:58 :5
6849 |
6950LL | fn another_bound<'x: 'a>(self, x: Inv<'x>, y: Inv<'t>);
7051 | ------------------------------------------------------- definition of `another_bound` from trait
7152...
7253LL | fn another_bound<'x: 't>(self, x: Inv<'x>, y: Inv<'t>) {
7354 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ impl has extra requirement `'x: 't`
7455
75- error: aborting due to 6 previous errors
56+ error: aborting due to 5 previous errors
7657
7758Some errors occurred: E0195, E0276, E0308.
7859For more information about an error, try `rustc --explain E0195`.
0 commit comments