error[E0277]: the size for values of type `T` cannot be known at compilation time --> tests/ui/pin_project/project_replace_unsized_fn_params.rs:6:8 | 6 | struct Struct { | ^^^^^^^-^^^^^^^^^ | | | | | this type parameter needs to be `std::marker::Sized` | doesn't have a size known at compile-time | note: required because it appears within the type `__StructProjectionOwned` --> tests/ui/pin_project/project_replace_unsized_fn_params.rs:6:8 | 6 | struct Struct { | ^^^^^^ = note: the return type of a function must have a statically known size help: consider removing the `?Sized` bound to make the type parameter `Sized` | 6 - struct Struct { 6 + struct Struct { | error[E0277]: the size for values of type `T` cannot be known at compilation time --> tests/ui/pin_project/project_replace_unsized_fn_params.rs:5:1 | 5 | #[pin_project(project_replace)] //~ ERROR E0277 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time 6 | struct Struct { | - this type parameter needs to be `std::marker::Sized` | note: required because it appears within the type `Struct` --> tests/ui/pin_project/project_replace_unsized_fn_params.rs:6:8 | 6 | struct Struct { | ^^^^^^ note: required by a bound in `UnsafeOverwriteGuard::::new` --> src/lib.rs | | impl UnsafeOverwriteGuard { | ^ required by this bound in `UnsafeOverwriteGuard::::new` = note: this error originates in the derive macro `::pin_project::__private::__PinProjectInternalDerive` (in Nightly builds, run with -Z macro-backtrace for more info) help: consider removing the `?Sized` bound to make the type parameter `Sized` | 6 - struct Struct { 6 + struct Struct { | error[E0277]: the size for values of type `T` cannot be known at compilation time --> tests/ui/pin_project/project_replace_unsized_fn_params.rs:7:5 | 5 | #[pin_project(project_replace)] //~ ERROR E0277 | ------------------------------- required by a bound introduced by this call 6 | struct Struct { | - this type parameter needs to be `std::marker::Sized` 7 | f: T, | ^ doesn't have a size known at compile-time | note: required by a bound in `std::ptr::read` --> $RUST/core/src/ptr/mod.rs | | pub const unsafe fn read(src: *const T) -> T { | ^ required by this bound in `std::ptr::read` help: consider removing the `?Sized` bound to make the type parameter `Sized` | 6 - struct Struct { 6 + struct Struct { | error[E0277]: the size for values of type `T` cannot be known at compilation time --> tests/ui/pin_project/project_replace_unsized_fn_params.rs:11:8 | 11 | struct TupleStruct(T); | ^^^^^^^^^^^^-^^^^^^^^^ | | | | | this type parameter needs to be `std::marker::Sized` | doesn't have a size known at compile-time | note: required because it appears within the type `__TupleStructProjectionOwned` --> tests/ui/pin_project/project_replace_unsized_fn_params.rs:11:8 | 11 | struct TupleStruct(T); | ^^^^^^^^^^^ = note: the return type of a function must have a statically known size help: consider removing the `?Sized` bound to make the type parameter `Sized` | 11 - struct TupleStruct(T); 11 + struct TupleStruct(T); | error[E0277]: the size for values of type `T` cannot be known at compilation time --> tests/ui/pin_project/project_replace_unsized_fn_params.rs:10:1 | 10 | #[pin_project(project_replace)] //~ ERROR E0277 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time 11 | struct TupleStruct(T); | - this type parameter needs to be `std::marker::Sized` | note: required because it appears within the type `TupleStruct` --> tests/ui/pin_project/project_replace_unsized_fn_params.rs:11:8 | 11 | struct TupleStruct(T); | ^^^^^^^^^^^ note: required by a bound in `UnsafeOverwriteGuard::::new` --> src/lib.rs | | impl UnsafeOverwriteGuard { | ^ required by this bound in `UnsafeOverwriteGuard::::new` = note: this error originates in the derive macro `::pin_project::__private::__PinProjectInternalDerive` (in Nightly builds, run with -Z macro-backtrace for more info) help: consider removing the `?Sized` bound to make the type parameter `Sized` | 11 - struct TupleStruct(T); 11 + struct TupleStruct(T); |