error[E0277]: the size for values of type `T` cannot be known at compilation time --> $DIR/project_replace_unsized.rs:3:15 | 3 | #[pin_project(project_replace)] //~ ERROR E0277 | ^^^^^^^^^^^^^^^ doesn't have a size known at compile-time 4 | struct Struct { | - this type parameter needs to be `std::marker::Sized` | note: required because it appears within the type `Struct` --> $DIR/project_replace_unsized.rs:4:8 | 4 | struct Struct { | ^^^^^^ = help: unsized fn params are gated as an unstable feature help: function arguments must have a statically known size, borrowed types always have a known size | 3 | #[pin_project(&project_replace)] //~ ERROR E0277 | ^ error[E0277]: the size for values of type `T` cannot be known at compilation time --> $DIR/project_replace_unsized.rs:3:1 | 3 | #[pin_project(project_replace)] //~ ERROR E0277 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time 4 | struct Struct { | - this type parameter needs to be `std::marker::Sized` | note: required because it appears within the type `Struct` --> $DIR/project_replace_unsized.rs:4:8 | 4 | struct Struct { | ^^^^^^ note: required by `UnsafeOverwriteGuard` --> $DIR/lib.rs:269:5 | 269 | pub struct UnsafeOverwriteGuard { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ = note: this error originates in the derive macro `::pin_project::__private::__PinProjectInternalDerive` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the size for values of type `T` cannot be known at compilation time --> $DIR/project_replace_unsized.rs:5:5 | 4 | struct Struct { | - this type parameter needs to be `std::marker::Sized` 5 | f: T, | ^ doesn't have a size known at compile-time error[E0277]: the size for values of type `T` cannot be known at compilation time --> $DIR/project_replace_unsized.rs:8:15 | 8 | #[pin_project(project_replace)] //~ ERROR E0277 | ^^^^^^^^^^^^^^^ doesn't have a size known at compile-time 9 | struct TupleStruct(T); | - this type parameter needs to be `std::marker::Sized` | note: required because it appears within the type `TupleStruct` --> $DIR/project_replace_unsized.rs:9:8 | 9 | struct TupleStruct(T); | ^^^^^^^^^^^ = help: unsized fn params are gated as an unstable feature help: function arguments must have a statically known size, borrowed types always have a known size | 8 | #[pin_project(&project_replace)] //~ ERROR E0277 | ^ error[E0277]: the size for values of type `T` cannot be known at compilation time --> $DIR/project_replace_unsized.rs:8:1 | 8 | #[pin_project(project_replace)] //~ ERROR E0277 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time 9 | struct TupleStruct(T); | - this type parameter needs to be `std::marker::Sized` | note: required because it appears within the type `TupleStruct` --> $DIR/project_replace_unsized.rs:9:8 | 9 | struct TupleStruct(T); | ^^^^^^^^^^^ note: required by `UnsafeOverwriteGuard` --> $DIR/lib.rs:269:5 | 269 | pub struct UnsafeOverwriteGuard { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ = note: this error originates in the derive macro `::pin_project::__private::__PinProjectInternalDerive` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the size for values of type `T` cannot be known at compilation time --> $DIR/project_replace_unsized.rs:9:8 | 9 | struct TupleStruct(T); | ^^^^^^^^^^^ - this type parameter needs to be `std::marker::Sized` | | | doesn't have a size known at compile-time | = note: all function arguments must have a statically known size = help: unsized fn params are gated as an unstable feature