1 use std::pin::Pin; 2 3 use pin_project::{pin_project, pinned_drop}; 4 5 #[pin_project(PinnedDrop)] 6 struct S { 7 #[pin] 8 f: u8, 9 } 10 11 #[pinned_drop] 12 impl PinnedDrop for S { drop(self: Pin<&mut Self>)13 fn drop(self: Pin<&mut Self>) { 14 self.project().f.get_unchecked_mut(); //~ ERROR call to unsafe function is unsafe and requires unsafe function or block [E0133] 15 } 16 } 17 main()18fn main() {} 19