error[E0277]: the size for values of type `impl Iterator + ?Sized` cannot be known at compilation time --> $DIR/apit-unsized.rs:1:8 | LL | fn foo(_: impl Iterator + ?Sized) {} | ^ ---------------------------------- this type parameter needs to be `Sized` | | | doesn't have a size known at compile-time | = help: unsized fn params are gated as an unstable feature help: consider removing the `?Sized` bound to make the type parameter `Sized` | LL - fn foo(_: impl Iterator + ?Sized) {} LL + fn foo(_: impl Iterator) {} | help: function arguments must have a statically known size, borrowed types always have a known size | LL | fn foo(_: &impl Iterator + ?Sized) {} | + error[E0277]: the size for values of type `impl ?Sized` cannot be known at compilation time --> $DIR/apit-unsized.rs:2:8 | LL | fn bar(_: impl ?Sized) {} | ^ ----------- this type parameter needs to be `Sized` | | | doesn't have a size known at compile-time | = help: unsized fn params are gated as an unstable feature help: consider replacing `?Sized` with `Sized` | LL - fn bar(_: impl ?Sized) {} LL + fn bar(_: impl Sized) {} | help: function arguments must have a statically known size, borrowed types always have a known size | LL | fn bar(_: &impl ?Sized) {} | + error: aborting due to 2 previous errors For more information about this error, try `rustc --explain E0277`.