error[E0221]: ambiguous associated type `Color` in bounds of `C` --> $DIR/associated-type-projection-ambig-between-bound-and-where-clause.rs:16:24 | LL | type Color; | ---------- ambiguous `Color` from `Vehicle` ... LL | type Color; | ---------- ambiguous `Color` from `Box` ... LL | fn a(_: C::Color) { | ^^^^^^^^ ambiguous associated type `Color` | help: use fully qualified syntax to disambiguate | LL | fn a(_: ::Color) { | ~~~~~~~~~~~~ help: use fully qualified syntax to disambiguate | LL | fn a(_: ::Color) { | ~~~~~~~~~~~~~~~~ error[E0221]: ambiguous associated type `Color` in bounds of `C` --> $DIR/associated-type-projection-ambig-between-bound-and-where-clause.rs:20:12 | LL | type Color; | ---------- ambiguous `Color` from `Vehicle` ... LL | type Color; | ---------- ambiguous `Color` from `Box` ... LL | fn b(_: C::Color) where C : Vehicle+Box { | ^^^^^^^^ ambiguous associated type `Color` | help: use fully qualified syntax to disambiguate | LL | fn b(_: ::Color) where C : Vehicle+Box { | ~~~~~~~~~~~~ help: use fully qualified syntax to disambiguate | LL | fn b(_: ::Color) where C : Vehicle+Box { | ~~~~~~~~~~~~~~~~ error[E0221]: ambiguous associated type `Color` in bounds of `C` --> $DIR/associated-type-projection-ambig-between-bound-and-where-clause.rs:24:12 | LL | type Color; | ---------- ambiguous `Color` from `Vehicle` ... LL | type Color; | ---------- ambiguous `Color` from `Box` ... LL | fn c(_: C::Color) where C : Vehicle, C : Box { | ^^^^^^^^ ambiguous associated type `Color` | help: use fully qualified syntax to disambiguate | LL | fn c(_: ::Color) where C : Vehicle, C : Box { | ~~~~~~~~~~~~ help: use fully qualified syntax to disambiguate | LL | fn c(_: ::Color) where C : Vehicle, C : Box { | ~~~~~~~~~~~~~~~~ error[E0221]: ambiguous associated type `Color` in bounds of `X` --> $DIR/associated-type-projection-ambig-between-bound-and-where-clause.rs:35:20 | LL | type Color; | ---------- ambiguous `Color` from `Vehicle` ... LL | type Color; | ---------- ambiguous `Color` from `Box` ... LL | fn e(&self, _: X::Color) where X : Box; | ^^^^^^^^ ambiguous associated type `Color` | help: use fully qualified syntax to disambiguate | LL | fn e(&self, _: ::Color) where X : Box; | ~~~~~~~~~~~~ help: use fully qualified syntax to disambiguate | LL | fn e(&self, _: ::Color) where X : Box; | ~~~~~~~~~~~~~~~~ error[E0221]: ambiguous associated type `Color` in bounds of `X` --> $DIR/associated-type-projection-ambig-between-bound-and-where-clause.rs:38:20 | LL | type Color; | ---------- ambiguous `Color` from `Vehicle` ... LL | type Color; | ---------- ambiguous `Color` from `Box` ... LL | fn f(&self, _: X::Color) where X : Box { } | ^^^^^^^^ ambiguous associated type `Color` | help: use fully qualified syntax to disambiguate | LL | fn f(&self, _: ::Color) where X : Box { } | ~~~~~~~~~~~~ help: use fully qualified syntax to disambiguate | LL | fn f(&self, _: ::Color) where X : Box { } | ~~~~~~~~~~~~~~~~ error[E0221]: ambiguous associated type `Color` in bounds of `X` --> $DIR/associated-type-projection-ambig-between-bound-and-where-clause.rs:30:20 | LL | type Color; | ---------- ambiguous `Color` from `Vehicle` ... LL | type Color; | ---------- ambiguous `Color` from `Box` ... LL | fn d(&self, _: X::Color) where X : Box { } | ^^^^^^^^ ambiguous associated type `Color` | help: use fully qualified syntax to disambiguate | LL | fn d(&self, _: ::Color) where X : Box { } | ~~~~~~~~~~~~ help: use fully qualified syntax to disambiguate | LL | fn d(&self, _: ::Color) where X : Box { } | ~~~~~~~~~~~~~~~~ error: aborting due to 6 previous errors For more information about this error, try `rustc --explain E0221`.