error: `self` parameter is only allowed in associated functions --> tests/ui/pinned_drop/self.rs:20:26 | 20 | fn f(self: ()) {} //~ ERROR `self` parameter is only allowed in associated functions | ^^^^ not semantically valid as function parameter ... 23 | t!(); | ---- in this macro invocation | = note: associated functions are those in `impl` or `trait` definitions = note: this error originates in the macro `t` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0434]: can't capture dynamic environment in a fn item --> tests/ui/pinned_drop/self.rs:18:29 | 18 | let _ = self; //~ ERROR E0434 | ^^^^ ... 23 | t!(); | ---- in this macro invocation | = help: use the `|| { ... }` closure form instead = note: this error originates in the macro `t` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0423]: expected value, found struct `S` --> tests/ui/pinned_drop/self.rs:42:27 | 34 | / pub struct S { 35 | | f: (), 36 | | } | |_____- `S` defined here ... 42 | let _: Self = Self; //~ ERROR E0423 | ^^^^ help: use struct literal syntax instead: `S { f: val }` error[E0308]: mismatched types --> tests/ui/pinned_drop/self.rs:41:25 | 41 | let _: () = self; //~ ERROR E0308 | -- ^^^^ expected `()`, found `Pin<&mut S>` | | | expected due to this | = note: expected unit type `()` found struct `Pin<&mut self_span::S>` error[E0308]: mismatched types --> tests/ui/pinned_drop/self.rs:54:25 | 54 | let _: () = self; //~ ERROR E0308 | -- ^^^^ expected `()`, found `Pin<&mut E>` | | | expected due to this | = note: expected unit type `()` found struct `Pin<&mut E>` error[E0533]: expected value, found struct variant `E::V` --> tests/ui/pinned_drop/self.rs:55:27 | 55 | let _: Self = Self::V; //~ ERROR E0533 | ^^^^^^^ not a value | help: you might have meant to create a new value of the struct | 55 | let _: Self = Self::V { f: /* value */ }; //~ ERROR E0533 | ++++++++++++++++++