| 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 |
| --> $DIR/not-panic-safe-2.rs:10:5 |
| | |
| LL | fn assert<T: UnwindSafe + ?Sized>() {} |
| | ----------------------------------- required by `assert` |
| ... |
| LL | assert::<Rc<RefCell<i32>>>(); |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^ `std::cell::UnsafeCell<i32>` may contain interior mutability and a reference may not be safely transferrable across a catch_unwind boundary |
| | |
| = help: within `std::cell::RefCell<i32>`, the trait `std::panic::RefUnwindSafe` is not implemented for `std::cell::UnsafeCell<i32>` |
| = note: required because it appears within the type `std::cell::RefCell<i32>` |
| = note: required because of the requirements on the impl of `std::panic::UnwindSafe` for `std::rc::Rc<std::cell::RefCell<i32>>` |
| |
| 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 |
| --> $DIR/not-panic-safe-2.rs:10:5 |
| | |
| LL | fn assert<T: UnwindSafe + ?Sized>() {} |
| | ----------------------------------- required by `assert` |
| ... |
| LL | assert::<Rc<RefCell<i32>>>(); |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^ `std::cell::UnsafeCell<isize>` may contain interior mutability and a reference may not be safely transferrable across a catch_unwind boundary |
| | |
| = help: within `std::cell::RefCell<i32>`, the trait `std::panic::RefUnwindSafe` is not implemented for `std::cell::UnsafeCell<isize>` |
| = note: required because it appears within the type `std::cell::Cell<isize>` |
| = note: required because it appears within the type `std::cell::RefCell<i32>` |
| = note: required because of the requirements on the impl of `std::panic::UnwindSafe` for `std::rc::Rc<std::cell::RefCell<i32>>` |
| |
| error: aborting due to 2 previous errors |
| |
| For more information about this error, try `rustc --explain E0277`. |