error[E0277]: the trait bound `::Assoc: Child` is not satisfied --> $DIR/missing-assoc-type-bound-restriction.rs:17:1 | LL | trait Parent { | ------------ required by `Parent` ... LL | impl> Parent for ParentWrapper { | ^ - help: consider further restricting the associated type: `where ::Assoc: Child` | _| | | LL | | LL | | LL | | type Ty = A; LL | | type Assoc = ChildWrapper; LL | | LL | | } | |_^ the trait `Child` is not implemented for `::Assoc` error[E0277]: the trait bound `::Assoc: Child` is not satisfied --> $DIR/missing-assoc-type-bound-restriction.rs:17:28 | LL | impl> Parent for ParentWrapper { | ^^^^^^ - help: consider further restricting the associated type: `where ::Assoc: Child` | | | the trait `Child` is not implemented for `::Assoc` | = note: required because of the requirements on the impl of `Child` for `ChildWrapper<::Assoc>` error[E0277]: the trait bound `::Assoc: Child` is not satisfied --> $DIR/missing-assoc-type-bound-restriction.rs:21:5 | LL | trait Parent { | ------------ required by `Parent` ... LL | impl> Parent for ParentWrapper { | - help: consider further restricting the associated type: `where ::Assoc: Child` ... LL | type Assoc = ChildWrapper; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Child` is not implemented for `::Assoc` error: aborting due to 3 previous errors For more information about this error, try `rustc --explain E0277`.