diff options
Diffstat (limited to 'src/test/ui/issues/issue-30530.rs')
-rw-r--r-- | src/test/ui/issues/issue-30530.rs | 28 |
1 files changed, 0 insertions, 28 deletions
diff --git a/src/test/ui/issues/issue-30530.rs b/src/test/ui/issues/issue-30530.rs deleted file mode 100644 index 111fb8aa5..000000000 --- a/src/test/ui/issues/issue-30530.rs +++ /dev/null @@ -1,28 +0,0 @@ -// run-pass -// Regression test for Issue #30530: alloca's created for storing -// intermediate scratch values during brace-less match arms need to be -// initialized with their drop-flag set to "dropped" (or else we end -// up running the destructors on garbage data at the end of the -// function). - -pub enum Handler { - Default, - #[allow(dead_code)] - Custom(*mut Box<dyn Fn()>), -} - -fn main() { - #[allow(unused_must_use)] { - take(Handler::Default, Box::new(main)); - } -} - -#[inline(never)] -pub fn take(h: Handler, f: Box<dyn Fn()>) -> Box<dyn Fn()> { - unsafe { - match h { - Handler::Custom(ptr) => *Box::from_raw(ptr), - Handler::Default => f, - } - } -} |