about summary refs log tree commit diff
path: root/tests/ui/track-diagnostics/track-caller-for-once-87707.rs
blob: 9b450943f5d7a06f7fa9c2f286549f99f8002db8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// https://github.com/rust-lang/rust/issues/87707
// test for #87707
//@ edition:2018
//@ run-fail
//@ exec-env:RUST_BACKTRACE=0
//@ check-run-results
//@ needs-unwind uses catch_unwind

use std::sync::Once;
use std::panic;

fn main() {
    let o = Once::new();
    let _ = panic::catch_unwind(|| {
        o.call_once(|| panic!("Here Once instance is poisoned."));
    });
    o.call_once(|| {});
}