1 error[E0277]: the type `std::cell::UnsafeCell<i32>` may contain interior mutability and a reference may not be safely transferrable across a catch_unwind boundary
2 --> $DIR/not-panic-safe-4.rs:9:5
4 LL | fn assert<T: UnwindSafe + ?Sized>() {}
5 | ---------- required by this bound in `assert`
7 LL | assert::<&RefCell<i32>>();
8 | ^^^^^^^^^^^^^^^^^^^^^^^ `std::cell::UnsafeCell<i32>` may contain interior mutability and a reference may not be safely transferrable across a catch_unwind boundary
10 = help: within `std::cell::RefCell<i32>`, the trait `std::panic::RefUnwindSafe` is not implemented for `std::cell::UnsafeCell<i32>`
11 = note: required because it appears within the type `std::cell::RefCell<i32>`
12 = note: required because of the requirements on the impl of `std::panic::UnwindSafe` for `&std::cell::RefCell<i32>`
14 error[E0277]: the type `std::cell::UnsafeCell<isize>` may contain interior mutability and a reference may not be safely transferrable across a catch_unwind boundary
15 --> $DIR/not-panic-safe-4.rs:9:5
17 LL | fn assert<T: UnwindSafe + ?Sized>() {}
18 | ---------- required by this bound in `assert`
20 LL | assert::<&RefCell<i32>>();
21 | ^^^^^^^^^^^^^^^^^^^^^^^ `std::cell::UnsafeCell<isize>` may contain interior mutability and a reference may not be safely transferrable across a catch_unwind boundary
23 = help: within `std::cell::RefCell<i32>`, the trait `std::panic::RefUnwindSafe` is not implemented for `std::cell::UnsafeCell<isize>`
24 = note: required because it appears within the type `std::cell::Cell<isize>`
25 = note: required because it appears within the type `std::cell::RefCell<i32>`
26 = note: required because of the requirements on the impl of `std::panic::UnwindSafe` for `&std::cell::RefCell<i32>`
28 error: aborting due to 2 previous errors
30 For more information about this error, try `rustc --explain E0277`.