]>
git.proxmox.com Git - rustc.git/blob - tests/ui/generator/panic-drops.rs
5 #![feature(generators, generator_trait)]
7 use std
::ops
::Generator
;
10 use std
::sync
::atomic
::{AtomicUsize, Ordering}
;
12 static A
: AtomicUsize
= AtomicUsize
::new(0);
18 A
.fetch_add(1, Ordering
::SeqCst
);
22 fn bool_true() -> bool
{
36 assert_eq
!(A
.load(Ordering
::SeqCst
), 0);
37 let res
= panic
::catch_unwind(panic
::AssertUnwindSafe(|| {
38 Pin
::new(&mut foo
).resume(())
40 assert
!(res
.is_err());
41 assert_eq
!(A
.load(Ordering
::SeqCst
), 1);
51 assert_eq
!(A
.load(Ordering
::SeqCst
), 1);
52 let res
= panic
::catch_unwind(panic
::AssertUnwindSafe(|| {
53 Pin
::new(&mut foo
).resume(())
55 assert
!(res
.is_err());
56 assert_eq
!(A
.load(Ordering
::SeqCst
), 1);