error[E0038]: the trait `Foo` cannot be made into an object
  --> $DIR/dyn-compatibility.rs:14:33
   |
LL |     let i = Box::new(42_u32) as Box<dyn Foo>;
   |                                 ^^^^^^^^^^^^ `Foo` cannot be made into an object
   |
note: for a trait to be "dyn-compatible" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit <https://doc.rust-lang.org/reference/items/traits.html#object-safety>
  --> $DIR/dyn-compatibility.rs:4:22
   |
LL | trait Foo {
   |       --- this trait cannot be made into an object...
LL |     fn baz(&self) -> impl Debug;
   |                      ^^^^^^^^^^ ...because method `baz` references an `impl Trait` type in its return type
   = help: consider moving `baz` to another trait
   = help: only type `u32` implements the trait, consider using it directly instead

error[E0038]: the trait `Foo` cannot be made into an object
  --> $DIR/dyn-compatibility.rs:17:15
   |
LL |     let s = i.baz();
   |               ^^^ `Foo` cannot be made into an object
   |
note: for a trait to be "dyn-compatible" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit <https://doc.rust-lang.org/reference/items/traits.html#object-safety>
  --> $DIR/dyn-compatibility.rs:4:22
   |
LL | trait Foo {
   |       --- this trait cannot be made into an object...
LL |     fn baz(&self) -> impl Debug;
   |                      ^^^^^^^^^^ ...because method `baz` references an `impl Trait` type in its return type
   = help: consider moving `baz` to another trait
   = help: only type `u32` implements the trait, consider using it directly instead

error[E0038]: the trait `Foo` cannot be made into an object
  --> $DIR/dyn-compatibility.rs:17:13
   |
LL |     let s = i.baz();
   |             ^^^^^^^ `Foo` cannot be made into an object
   |
note: for a trait to be "dyn-compatible" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit <https://doc.rust-lang.org/reference/items/traits.html#object-safety>
  --> $DIR/dyn-compatibility.rs:4:22
   |
LL | trait Foo {
   |       --- this trait cannot be made into an object...
LL |     fn baz(&self) -> impl Debug;
   |                      ^^^^^^^^^^ ...because method `baz` references an `impl Trait` type in its return type
   = help: consider moving `baz` to another trait
   = help: only type `u32` implements the trait, consider using it directly instead

error[E0038]: the trait `Foo` cannot be made into an object
  --> $DIR/dyn-compatibility.rs:14:13
   |
LL |     let i = Box::new(42_u32) as Box<dyn Foo>;
   |             ^^^^^^^^^^^^^^^^ `Foo` cannot be made into an object
   |
note: for a trait to be "dyn-compatible" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit <https://doc.rust-lang.org/reference/items/traits.html#object-safety>
  --> $DIR/dyn-compatibility.rs:4:22
   |
LL | trait Foo {
   |       --- this trait cannot be made into an object...
LL |     fn baz(&self) -> impl Debug;
   |                      ^^^^^^^^^^ ...because method `baz` references an `impl Trait` type in its return type
   = help: consider moving `baz` to another trait
   = help: only type `u32` implements the trait, consider using it directly instead
   = note: required for the cast from `Box<u32>` to `Box<dyn Foo>`

error: aborting due to 4 previous errors

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