error[E0271]: type mismatch resolving `::Item == i32` --> $DIR/impl-trait-return-missing-constraint.rs:25:13 | LL | fn bar() -> impl Bar { | -------- the found opaque type ... LL | fn baz() -> impl Bar { | ^^^^^^^^^^^^^^^^^^^^ expected `i32`, found associated type | = note: expected type `i32` found associated type `::Item` help: consider constraining the associated type `::Item` to `i32` | LL | fn bar() -> impl Bar { | ^^^^^^^^^^^^ error: aborting due to previous error For more information about this error, try `rustc --explain E0271`.