error[E0271]: type mismatch resolving `<ModelT as Vehicle>::Color == Blue`
  --> $DIR/associated-types-binding-to-type-defined-in-supertrait.rs:31:10
   |
LL | fn b() { blue_car(ModelT); }
   |          ^^^^^^^^ expected struct `Blue`, found struct `Black`
   |
note: required by a bound in `blue_car`
  --> $DIR/associated-types-binding-to-type-defined-in-supertrait.rs:27:19
   |
LL | fn blue_car<C:Car<Color=Blue>>(c: C) {
   |                   ^^^^^^^^^^ required by this bound in `blue_car`

error[E0271]: type mismatch resolving `<ModelU as Vehicle>::Color == Black`
  --> $DIR/associated-types-binding-to-type-defined-in-supertrait.rs:32:10
   |
LL | fn c() { black_car(ModelU); }
   |          ^^^^^^^^^ expected struct `Black`, found struct `Blue`
   |
note: required by a bound in `black_car`
  --> $DIR/associated-types-binding-to-type-defined-in-supertrait.rs:24:20
   |
LL | fn black_car<C:Car<Color=Black>>(c: C) {
   |                    ^^^^^^^^^^^ required by this bound in `black_car`

error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0271`.
