1 use pin_project::pin_project; 2 3 #[pin_project] 4 struct Struct1 {} //~ ERROR may not be used on structs with zero fields 5 6 #[pin_project] 7 struct Struct2(); //~ ERROR may not be used on structs with zero fields 8 9 #[pin_project] 10 struct Struct3; //~ ERROR may not be used on structs with units 11 12 #[pin_project] 13 enum Enum1 {} //~ ERROR may not be used on enums without variants 14 15 #[pin_project] 16 enum Enum2 { 17 A = 2, //~ ERROR may not be used on enums with discriminants 18 } 19 20 #[pin_project] 21 enum Enum3 { 22 A, //~ ERROR may not be used on enums that have no field 23 B, 24 } 25 26 #[pin_project] 27 union Union { 28 //~^ ERROR may only be used on structs or enums 29 x: u8, 30 } 31 32 fn main() {} 33