1 error[E0271]: type mismatch resolving `<ModelT as Vehicle>::Color == Blue`
2 --> $DIR/associated-types-binding-to-type-defined-in-supertrait.rs:47:10
4 LL | fn b() { blue_car(ModelT); } //~ ERROR type mismatch
5 | ^^^^^^^^ expected struct `Black`, found struct `Blue`
7 = note: expected type `Black`
9 note: required by `blue_car`
10 --> $DIR/associated-types-binding-to-type-defined-in-supertrait.rs:43:1
12 LL | fn blue_car<C:Car<Color=Blue>>(c: C) {
13 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
15 error[E0271]: type mismatch resolving `<ModelU as Vehicle>::Color == Black`
16 --> $DIR/associated-types-binding-to-type-defined-in-supertrait.rs:48:10
18 LL | fn c() { black_car(ModelU); } //~ ERROR type mismatch
19 | ^^^^^^^^^ expected struct `Blue`, found struct `Black`
21 = note: expected type `Blue`
23 note: required by `black_car`
24 --> $DIR/associated-types-binding-to-type-defined-in-supertrait.rs:40:1
26 LL | fn black_car<C:Car<Color=Black>>(c: C) {
27 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
29 error: aborting due to 2 previous errors
31 For more information about this error, try `rustc --explain E0271`.