error[E0207]: the type parameter `T` is not constrained by the impl trait, self type, or predicates --> $DIR/refine-resolution-errors.rs:9:6 | LL | impl Mirror for () { | ^ unconstrained type parameter error[E0277]: the size for values of type `T` cannot be known at compilation time --> $DIR/refine-resolution-errors.rs:11:18 | LL | impl Mirror for () { | - this type parameter needs to be `Sized` LL | LL | type Assoc = T; | ^ doesn't have a size known at compile-time | note: required by a bound in `Mirror::Assoc` --> $DIR/refine-resolution-errors.rs:7:5 | LL | type Assoc; | ^^^^^^^^^^^ required by this bound in `Mirror::Assoc` help: consider removing the `?Sized` bound to make the type parameter `Sized` | LL - impl Mirror for () { LL + impl Mirror for () { | help: consider relaxing the implicit `Sized` restriction | LL | type Assoc: ?Sized; | ++++++++ error: aborting due to 2 previous errors Some errors have detailed explanations: E0207, E0277. For more information about an error, try `rustc --explain E0207`.