error[E0271]: type mismatch resolving `::Metadata == ()` --> $DIR/pointee-tail-is-generic-errors.rs:13:5 | LL | is_thin::(); | ^^^^^^^^^^^^ expected `()`, found associated type | = note: expected unit type `()` found associated type `::Metadata` = help: consider constraining the associated type `::Metadata` to `()` = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html note: required by a bound in `is_thin` --> $DIR/pointee-tail-is-generic-errors.rs:20:33 | LL | fn is_thin + ?Sized>() {} | ^^^^^^^^^^^^^ required by this bound in `is_thin` error[E0271]: type mismatch resolving `::Metadata == ()` --> $DIR/pointee-tail-is-generic-errors.rs:16:5 | LL | type Opaque = impl std::fmt::Debug + ?Sized; | ----------------------------- the found opaque type ... LL | is_thin::(); | ^^^^^^^^^^^^^^^^^ expected `()`, found associated type | = note: expected unit type `()` found associated type `::Metadata` note: required by a bound in `is_thin` --> $DIR/pointee-tail-is-generic-errors.rs:20:33 | LL | fn is_thin + ?Sized>() {} | ^^^^^^^^^^^^^ required by this bound in `is_thin` help: consider constraining the associated type `::Metadata` to `()` | LL | type Opaque = impl std::fmt::Debug + ?Sized; | +++++++++++++++ error: aborting due to 2 previous errors For more information about this error, try `rustc --explain E0271`.