diff options
Diffstat (limited to 'tests/ui/structs-enums/class-dtor.rs')
-rw-r--r-- | tests/ui/structs-enums/class-dtor.rs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/ui/structs-enums/class-dtor.rs b/tests/ui/structs-enums/class-dtor.rs new file mode 100644 index 000000000..583a5e240 --- /dev/null +++ b/tests/ui/structs-enums/class-dtor.rs @@ -0,0 +1,25 @@ +// run-pass +#![allow(dead_code)] +#![allow(non_camel_case_types)] + +// pretty-expanded FIXME #23616 + +struct cat { + done : extern "C" fn(usize), + meows : usize, +} + +impl Drop for cat { + fn drop(&mut self) { + (self.done)(self.meows); + } +} + +fn cat(done: extern "C" fn(usize)) -> cat { + cat { + meows: 0, + done: done + } +} + +pub fn main() {} |