error: #[pin_project] attribute has been removed --> $DIR/remove-attr-from-struct.rs:21:1 | 21 | #[pin_project] //~ ERROR has been removed | ^^^^^^^^^^^^^^ | = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info) error: cannot find attribute `pin` in this scope --> $DIR/remove-attr-from-struct.rs:17:7 | 17 | #[pin] //~ ERROR cannot find attribute `pin` in this scope | ^^^ error: cannot find attribute `pin` in this scope --> $DIR/remove-attr-from-struct.rs:10:7 | 10 | #[pin] //~ ERROR cannot find attribute `pin` in this scope | ^^^ error[E0277]: `PhantomPinned` cannot be unpinned --> $DIR/remove-attr-from-struct.rs:34:5 | 5 | fn is_unpin() {} | ----- required by this bound in `is_unpin` ... 34 | is_unpin::(); //~ ERROR E0277 | ^^^^^^^^^^^^^ within `A`, the trait `Unpin` is not implemented for `PhantomPinned` | = note: required because it appears within the type `A` error[E0277]: `PhantomPinned` cannot be unpinned --> $DIR/remove-attr-from-struct.rs:35:5 | 5 | fn is_unpin() {} | ----- required by this bound in `is_unpin` ... 35 | is_unpin::(); //~ ERROR E0277 | ^^^^^^^^^^^^^ within `B`, the trait `Unpin` is not implemented for `PhantomPinned` | = note: required because it appears within the type `B` error[E0277]: `PhantomPinned` cannot be unpinned --> $DIR/remove-attr-from-struct.rs:39:13 | 39 | let _ = Pin::new(&mut x).project(); //~ ERROR E0277,E0599 | ^^^^^^^^ within `A`, the trait `Unpin` is not implemented for `PhantomPinned` | = note: required because it appears within the type `A` = note: required by `Pin::

::new` error[E0599]: no method named `project` found for struct `Pin<&mut A>` in the current scope --> $DIR/remove-attr-from-struct.rs:39:30 | 39 | let _ = Pin::new(&mut x).project(); //~ ERROR E0277,E0599 | ^^^^^^^ method not found in `Pin<&mut A>` error[E0277]: `PhantomPinned` cannot be unpinned --> $DIR/remove-attr-from-struct.rs:42:13 | 42 | let _ = Pin::new(&mut x).project(); //~ ERROR E0277,E0599 | ^^^^^^^^ within `B`, the trait `Unpin` is not implemented for `PhantomPinned` | = note: required because it appears within the type `B` = note: required by `Pin::

::new` error[E0599]: no method named `project` found for struct `Pin<&mut B>` in the current scope --> $DIR/remove-attr-from-struct.rs:42:30 | 42 | let _ = Pin::new(&mut x).project(); //~ ERROR E0277,E0599 | ^^^^^^^ method not found in `Pin<&mut B>`