error[E0277]: the trait bound `(): InOut<_>` is not satisfied --> $DIR/issue-25076.rs:10:20 | LL | do_fold(bot(), ()); | ------- ^^ the trait `InOut<_>` is not implemented for `()` | | | required by a bound introduced by this call | help: this trait has no implementations, consider adding one --> $DIR/issue-25076.rs:3:1 | LL | trait InOut { type Out; } | ^^^^^^^^^^^^^^ note: required by a bound in `do_fold` --> $DIR/issue-25076.rs:5:18 | LL | fn do_fold>(init: B, f: F) {} | ^^^^^^^^^^^^^^^ required by this bound in `do_fold` error: aborting due to previous error For more information about this error, try `rustc --explain E0277`.