error[E0271]: type mismatch resolving `>, ...>>, ...>>, ...> as Future>::Error == Foo` --> $DIR/E0271.rs:18:5 | LL | / Box::new( LL | | Ok::<_, ()>( LL | | Err::<(), _>( LL | | Ok::<_, ()>( ... | LL | | ) LL | | ) | |_____^ type mismatch resolving `, ...>>, ...> as Future>::Error == Foo` | note: expected this to be `Foo` --> $DIR/E0271.rs:8:18 | LL | type Error = E; | ^ = note: required for the cast from `Box>, ()>>, ()>>, ()>>` to `Box<(dyn Future + 'static)>` error: aborting due to previous error For more information about this error, try `rustc --explain E0271`.