1 error[E0271]: type mismatch resolving `<Bar as Iterator>::Item == Box<(dyn for<'r> Fn(&'r (dyn ToString + 'r)) -> Option<String> + 'static)>`
2 --> $DIR/issue-70877.rs:11:12
4 LL | type FooRet = impl std::fmt::Debug;
5 | -------------------- the expected opaque type
7 LL | type Foo = impl Iterator<Item = FooItem>;
8 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected opaque type, found enum `Option`
10 = note: expected struct `Box<(dyn for<'r> Fn(&'r (dyn ToString + 'r)) -> impl Debug + 'static)>`
11 found struct `Box<(dyn for<'r> Fn(&'r (dyn ToString + 'r)) -> Option<String> + 'static)>`
13 error: aborting due to previous error
15 For more information about this error, try `rustc --explain E0271`.