|
1 |
| -error: unconstrained opaque type |
2 |
| - --> $DIR/recursive-type-alias-impl-trait-declaration-too-subtle.rs:4:16 |
| 1 | +error: cannot implement trait on type alias impl trait |
| 2 | + --> $DIR/recursive-type-alias-impl-trait-declaration-too-subtle.rs:20:5 |
3 | 3 | |
|
4 |
| -LL | type Foo = impl PartialEq<(Foo, i32)>; |
5 |
| - | ^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 4 | +LL | impl PartialEq<(Foo, i32)> for Bar { |
| 5 | + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
6 | 6 | |
|
7 |
| - = note: `Foo` must be used in combination with a concrete type within the same module |
8 |
| - |
9 |
| -error: unconstrained opaque type |
10 |
| - --> $DIR/recursive-type-alias-impl-trait-declaration-too-subtle.rs:17:16 |
| 7 | +note: type alias impl trait defined here |
| 8 | + --> $DIR/recursive-type-alias-impl-trait-declaration-too-subtle.rs:16:16 |
11 | 9 | |
|
12 | 10 | LL | type Foo = impl PartialEq<(Foo, i32)>;
|
13 | 11 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
14 |
| - | |
15 |
| - = note: `Foo` must be used in combination with a concrete type within the same module |
16 |
| - |
17 |
| -error[E0276]: impl has stricter requirements than trait |
18 |
| - --> $DIR/recursive-type-alias-impl-trait-declaration-too-subtle.rs:23:9 |
19 |
| - | |
20 |
| -LL | fn eq(&self, _other: &(Bar, i32)) -> bool { |
21 |
| - | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ impl has extra requirement `b::Bar: PartialEq<(b::Bar, i32)>` |
22 | 12 |
|
23 |
| -error: aborting due to 3 previous errors |
| 13 | +error: aborting due to previous error |
24 | 14 |
|
25 |
| -For more information about this error, try `rustc --explain E0276`. |
0 commit comments