error[E0277]: `<impl Iterator as Iterator>::Item` doesn't implement `Debug`
  --> $DIR/impl-trait-with-missing-bounds.rs:6:13
   |
LL |         qux(constraint);
   |         --- ^^^^^^^^^^ `<impl Iterator as Iterator>::Item` cannot be formatted using `{:?}` because it doesn't implement `Debug`
   |         |
   |         required by a bound introduced by this call
   |
   = help: the trait `Debug` is not implemented for `<impl Iterator as Iterator>::Item`
note: required by a bound in `qux`
  --> $DIR/impl-trait-with-missing-bounds.rs:50:16
   |
LL | fn qux(_: impl std::fmt::Debug) {}
   |                ^^^^^^^^^^^^^^^ required by this bound in `qux`
help: introduce a type parameter with a trait bound instead of using `impl Trait`
   |
LL | fn foo<I: Iterator>(constraints: I) where <I as Iterator>::Item: Debug {
   |       +++++++++++++              ~  ++++++++++++++++++++++++++++++++++

error[E0277]: `<impl Iterator as Iterator>::Item` doesn't implement `Debug`
  --> $DIR/impl-trait-with-missing-bounds.rs:14:13
   |
LL |         qux(constraint);
   |         --- ^^^^^^^^^^ `<impl Iterator as Iterator>::Item` cannot be formatted using `{:?}` because it doesn't implement `Debug`
   |         |
   |         required by a bound introduced by this call
   |
   = help: the trait `Debug` is not implemented for `<impl Iterator as Iterator>::Item`
note: required by a bound in `qux`
  --> $DIR/impl-trait-with-missing-bounds.rs:50:16
   |
LL | fn qux(_: impl std::fmt::Debug) {}
   |                ^^^^^^^^^^^^^^^ required by this bound in `qux`
help: introduce a type parameter with a trait bound instead of using `impl Trait`
   |
LL | fn bar<T, I: Iterator>(t: T, constraints: I) where T: std::fmt::Debug, <I as Iterator>::Item: Debug {
   |         +++++++++++++                     ~                          ++++++++++++++++++++++++++++++

error[E0277]: `<impl Iterator as Iterator>::Item` doesn't implement `Debug`
  --> $DIR/impl-trait-with-missing-bounds.rs:22:13
   |
LL |         qux(constraint);
   |         --- ^^^^^^^^^^ `<impl Iterator as Iterator>::Item` cannot be formatted using `{:?}` because it doesn't implement `Debug`
   |         |
   |         required by a bound introduced by this call
   |
   = help: the trait `Debug` is not implemented for `<impl Iterator as Iterator>::Item`
note: required by a bound in `qux`
  --> $DIR/impl-trait-with-missing-bounds.rs:50:16
   |
LL | fn qux(_: impl std::fmt::Debug) {}
   |                ^^^^^^^^^^^^^^^ required by this bound in `qux`
help: introduce a type parameter with a trait bound instead of using `impl Trait`
   |
LL | fn baz<I: Iterator>(t: impl std::fmt::Debug, constraints: I) where <I as Iterator>::Item: Debug {
   |       +++++++++++++                                       ~  ++++++++++++++++++++++++++++++++++

error[E0277]: `<impl Iterator as Iterator>::Item` doesn't implement `Debug`
  --> $DIR/impl-trait-with-missing-bounds.rs:30:13
   |
LL |         qux(constraint);
   |         --- ^^^^^^^^^^ `<impl Iterator as Iterator>::Item` cannot be formatted using `{:?}` because it doesn't implement `Debug`
   |         |
   |         required by a bound introduced by this call
   |
   = help: the trait `Debug` is not implemented for `<impl Iterator as Iterator>::Item`
note: required by a bound in `qux`
  --> $DIR/impl-trait-with-missing-bounds.rs:50:16
   |
LL | fn qux(_: impl std::fmt::Debug) {}
   |                ^^^^^^^^^^^^^^^ required by this bound in `qux`
help: introduce a type parameter with a trait bound instead of using `impl Trait`
   |
LL | fn bat<I, T: std::fmt::Debug, U: Iterator>(t: T, constraints: U, _: I) where <U as Iterator>::Item: Debug {
   |                             +++++++++++++                     ~        ++++++++++++++++++++++++++++++++++

error[E0277]: `<impl Iterator + std::fmt::Debug as Iterator>::Item` doesn't implement `Debug`
  --> $DIR/impl-trait-with-missing-bounds.rs:37:13
   |
LL |         qux(constraint);
   |         --- ^^^^^^^^^^ `<impl Iterator + std::fmt::Debug as Iterator>::Item` cannot be formatted using `{:?}` because it doesn't implement `Debug`
   |         |
   |         required by a bound introduced by this call
   |
   = help: the trait `Debug` is not implemented for `<impl Iterator + std::fmt::Debug as Iterator>::Item`
note: required by a bound in `qux`
  --> $DIR/impl-trait-with-missing-bounds.rs:50:16
   |
LL | fn qux(_: impl std::fmt::Debug) {}
   |                ^^^^^^^^^^^^^^^ required by this bound in `qux`
help: introduce a type parameter with a trait bound instead of using `impl Trait`
   |
LL | fn bak<I: Iterator + std::fmt::Debug>(constraints: I) where <I as Iterator>::Item: Debug {
   |       +++++++++++++++++++++++++++++++              ~  ++++++++++++++++++++++++++++++++++

error[E0277]: `<impl Iterator as Iterator>::Item` doesn't implement `Debug`
  --> $DIR/impl-trait-with-missing-bounds.rs:45:13
   |
LL |         qux(constraint);
   |         --- ^^^^^^^^^^ `<impl Iterator as Iterator>::Item` cannot be formatted using `{:?}` because it doesn't implement `Debug`
   |         |
   |         required by a bound introduced by this call
   |
   = help: the trait `Debug` is not implemented for `<impl Iterator as Iterator>::Item`
note: required by a bound in `qux`
  --> $DIR/impl-trait-with-missing-bounds.rs:50:16
   |
LL | fn qux(_: impl std::fmt::Debug) {}
   |                ^^^^^^^^^^^^^^^ required by this bound in `qux`
help: introduce a type parameter with a trait bound instead of using `impl Trait`
   |
LL | fn baw<I: Iterator>(constraints: I) where <I as Iterator>::Item: Debug {
   |       ~~~~~~~~~~~~~              ~  ++++++++++++++++++++++++++++++++++

error: aborting due to 6 previous errors

For more information about this error, try `rustc --explain E0277`.
