From: Alexis Bourget Date: Thu, 10 Sep 2020 13:15:30 +0000 (+0200) Subject: Move panic safety traits tests X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=ac39debeba2b63a39a3833e2d7451f0b1f95b5f2;p=rust.git Move panic safety traits tests --- diff --git a/library/core/tests/lib.rs b/library/core/tests/lib.rs index 4db391f3e56..4211d0e95a9 100644 --- a/library/core/tests/lib.rs +++ b/library/core/tests/lib.rs @@ -78,6 +78,7 @@ mod num; mod ops; mod option; +mod panic_safe; mod pattern; mod ptr; mod result; diff --git a/library/core/tests/panic_safe.rs b/library/core/tests/panic_safe.rs new file mode 100644 index 00000000000..3104ba539c3 --- /dev/null +++ b/library/core/tests/panic_safe.rs @@ -0,0 +1,56 @@ +#![allow(dead_code)] + +use std::cell::RefCell; +use std::panic::{AssertUnwindSafe, UnwindSafe}; +use std::rc::Rc; +use std::sync::{Arc, Mutex, RwLock}; + +struct Foo { + a: i32, +} + +fn assert() {} + +#[test] +fn test_panic_safety_traits() { + assert::(); + assert::<&i32>(); + assert::<*mut i32>(); + assert::<*const i32>(); + assert::(); + assert::(); + assert::<&str>(); + assert::(); + assert::<&Foo>(); + assert::>(); + assert::(); + assert::>(); + assert::>(); + assert::>(); + assert::>(); + assert::<&Mutex>(); + assert::<&RwLock>(); + assert::>(); + assert::>(); + assert::>(); + + { + trait Trait: UnwindSafe {} + assert::>(); + } + + fn bar() { + assert::>(); + assert::>(); + } + + fn baz() { + assert::>(); + assert::>(); + assert::>(); + assert::>(); + assert::<&AssertUnwindSafe>(); + assert::>>(); + assert::>>(); + } +} diff --git a/src/test/ui/panics/panic-safe.rs b/src/test/ui/panics/panic-safe.rs deleted file mode 100644 index 9867cc56406..00000000000 --- a/src/test/ui/panics/panic-safe.rs +++ /dev/null @@ -1,51 +0,0 @@ -// run-pass -#![allow(dead_code)] - -use std::panic::{UnwindSafe, AssertUnwindSafe}; -use std::cell::RefCell; -use std::sync::{Mutex, RwLock, Arc}; -use std::rc::Rc; - -struct Foo { a: i32 } - -fn assert() {} - -fn main() { - assert::(); - assert::<&i32>(); - assert::<*mut i32>(); - assert::<*const i32>(); - assert::(); - assert::(); - assert::<&str>(); - assert::(); - assert::<&Foo>(); - assert::>(); - assert::(); - assert::>(); - assert::>(); - assert::>(); - assert::>(); - assert::<&Mutex>(); - assert::<&RwLock>(); - assert::>(); - assert::>(); - assert::>(); - - trait Trait: UnwindSafe {} - assert::>(); - - fn bar() { - assert::>(); - assert::>(); - } - fn baz() { - assert::>(); - assert::>(); - assert::>(); - assert::>(); - assert::<&AssertUnwindSafe>(); - assert::>>(); - assert::>>(); - } -}