|
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