summaryrefslogtreecommitdiff
path: root/tests/ui/not-panic/not-panic-safe-4.stderr
blob: b1361cfd87ef2ead6a11d1d5b541ad478f036900 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
error[E0277]: the type `UnsafeCell<i32>` may contain interior mutability and a reference may not be safely transferrable across a catch_unwind boundary
  --> $DIR/not-panic-safe-4.rs:9:14
   |
LL |     assert::<&RefCell<i32>>();
   |              ^^^^^^^^^^^^^ `UnsafeCell<i32>` may contain interior mutability and a reference may not be safely transferrable across a catch_unwind boundary
   |
   = help: within `RefCell<i32>`, the trait `RefUnwindSafe` is not implemented for `UnsafeCell<i32>`
note: required because it appears within the type `RefCell<i32>`
  --> $SRC_DIR/core/src/cell.rs:LL:COL
   = note: required for `&RefCell<i32>` to implement `UnwindSafe`
note: required by a bound in `assert`
  --> $DIR/not-panic-safe-4.rs:6:14
   |
LL | fn assert<T: UnwindSafe + ?Sized>() {}
   |              ^^^^^^^^^^ required by this bound in `assert`
help: consider removing the leading `&`-reference
   |
LL -     assert::<&RefCell<i32>>();
LL +     assert::<RefCell<i32>>();
   |

error[E0277]: the type `UnsafeCell<isize>` may contain interior mutability and a reference may not be safely transferrable across a catch_unwind boundary
  --> $DIR/not-panic-safe-4.rs:9:14
   |
LL |     assert::<&RefCell<i32>>();
   |              ^^^^^^^^^^^^^ `UnsafeCell<isize>` may contain interior mutability and a reference may not be safely transferrable across a catch_unwind boundary
   |
   = help: within `RefCell<i32>`, the trait `RefUnwindSafe` is not implemented for `UnsafeCell<isize>`
note: required because it appears within the type `Cell<isize>`
  --> $SRC_DIR/core/src/cell.rs:LL:COL
note: required because it appears within the type `RefCell<i32>`
  --> $SRC_DIR/core/src/cell.rs:LL:COL
   = note: required for `&RefCell<i32>` to implement `UnwindSafe`
note: required by a bound in `assert`
  --> $DIR/not-panic-safe-4.rs:6:14
   |
LL | fn assert<T: UnwindSafe + ?Sized>() {}
   |              ^^^^^^^^^^ required by this bound in `assert`
help: consider removing the leading `&`-reference
   |
LL -     assert::<&RefCell<i32>>();
LL +     assert::<RefCell<i32>>();
   |

error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0277`.