| error: to use a constant of type `TypeId` in a pattern, `TypeId` must be annotated with `#[derive(PartialEq)]` |
| --> $DIR/typeid-equality-by-subtyping.rs:18:9 |
| | |
| LL | WHAT_A_TYPE => 0, |
| | ^^^^^^^^^^^ |
| | |
| = note: the traits must be derived, manual `impl`s are not sufficient |
| = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details |
| |
| error[E0277]: the trait bound `for<'a, 'b> fn(&'a (), &'b ()): WithAssoc<T>` is not satisfied |
| --> $DIR/typeid-equality-by-subtyping.rs:44:51 |
| | |
| LL | fn unsound<T>(x: <One as WithAssoc<T>>::Assoc) -> <Two as WithAssoc<T>>::Assoc |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `WithAssoc<T>` is not implemented for `for<'a, 'b> fn(&'a (), &'b ())` |
| |
| error[E0277]: the trait bound `for<'a, 'b> fn(&'a (), &'b ()): WithAssoc<T>` is not satisfied |
| --> $DIR/typeid-equality-by-subtyping.rs:47:1 |
| | |
| LL | / { |
| LL | | let x: <Two as WithAssoc<T>>::Assoc = generic::<One, T>(x); |
| LL | | x |
| LL | | } |
| | |_^ the trait `WithAssoc<T>` is not implemented for `for<'a, 'b> fn(&'a (), &'b ())` |
| |
| error: aborting due to 3 previous errors |
| |
| For more information about this error, try `rustc --explain E0277`. |