diff options
Diffstat (limited to 'src/test/ui/drop/drop-struct-as-object.rs')
-rw-r--r-- | src/test/ui/drop/drop-struct-as-object.rs | 36 |
1 files changed, 0 insertions, 36 deletions
diff --git a/src/test/ui/drop/drop-struct-as-object.rs b/src/test/ui/drop/drop-struct-as-object.rs deleted file mode 100644 index 377027a4f..000000000 --- a/src/test/ui/drop/drop-struct-as-object.rs +++ /dev/null @@ -1,36 +0,0 @@ -// run-pass -#![allow(unused_variables)] -#![allow(non_upper_case_globals)] - -// Test that destructor on a struct runs successfully after the struct -// is boxed and converted to an object. - -static mut value: usize = 0; - -struct Cat { - name : usize, -} - -trait Dummy { - fn get(&self) -> usize; -} - -impl Dummy for Cat { - fn get(&self) -> usize { self.name } -} - -impl Drop for Cat { - fn drop(&mut self) { - unsafe { value = self.name; } - } -} - -pub fn main() { - { - let x = Box::new(Cat {name: 22}); - let nyan: Box<dyn Dummy> = x as Box<dyn Dummy>; - } - unsafe { - assert_eq!(value, 22); - } -} |