summaryrefslogtreecommitdiffstats
path: root/tests/ui/panics/panic-in-cleanup.rs
blob: 84880f1881cac0669ae63015af39f58c1079d91c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// run-fail
// exec-env:RUST_BACKTRACE=0
// check-run-results
// error-pattern: panic in a destructor during cleanup
// normalize-stderr-test: "\n +[0-9]+:[^\n]+" -> ""
// normalize-stderr-test: "\n +at [^\n]+" -> ""
// normalize-stderr-test: "(core/src/panicking\.rs):[0-9]+:[0-9]+" -> "$1:$$LINE:$$COL"
// needs-unwind
// ignore-emscripten "RuntimeError" junk in output
// ignore-msvc SEH doesn't do panic-during-cleanup the same way as everyone else

struct Bomb;

impl Drop for Bomb {
    fn drop(&mut self) {
        panic!("BOOM");
    }
}

fn main() {
    let _b = Bomb;
    panic!();
}