warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes --> $DIR/issue-87429-specialization.rs:3:12 | LL | #![feature(specialization)] | ^^^^^^^^^^^^^^ | = note: see issue #31844 for more information = help: consider using `min_specialization` instead, which is more stable and complete = note: `#[warn(incomplete_features)]` on by default error[E0277]: can't compare `Foo` with `Foo` --> $DIR/issue-87429-specialization.rs:20:31 | LL | default type Member<'a> = Foo; | ^^^ no implementation for `Foo == Foo` | = help: the trait `PartialEq` is not implemented for `Foo` note: required by a bound in `Family::Member` --> $DIR/issue-87429-specialization.rs:7:22 | LL | type Member<'a>: for<'b> PartialEq>; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Family::Member` help: consider annotating `Foo` with `#[derive(PartialEq)]` | LL + #[derive(PartialEq)] LL | struct Foo; | error: aborting due to previous error; 1 warning emitted For more information about this error, try `rustc --explain E0277`.