|
1 | | -error[E0277]: the type `UnsafeCell<usize>` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary |
| 1 | +error[E0277]: the type `UnsafeCell<mlua::state::RawLua>` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary |
2 | 2 | --> tests/compile/ref_nounwindsafe.rs:8:18 |
3 | 3 | | |
4 | 4 | 8 | catch_unwind(move || table.set("a", "b").unwrap()); |
5 | | - | ------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `UnsafeCell<usize>` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary |
| 5 | + | ------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `UnsafeCell<mlua::state::RawLua>` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary |
6 | 6 | | | |
7 | 7 | | required by a bound introduced by this call |
8 | 8 | | |
9 | | - = help: within `rc::RcInner<mlua::types::sync::inner::ReentrantMutex<mlua::state::RawLua>>`, the trait `RefUnwindSafe` is not implemented for `UnsafeCell<usize>` |
10 | | -note: required because it appears within the type `Cell<usize>` |
11 | | - --> $RUST/core/src/cell.rs |
| 9 | + = help: within `alloc::sync::ArcInner<lock_api::remutex::ReentrantMutex<parking_lot::raw_mutex::RawMutex, parking_lot::remutex::RawThreadId, mlua::state::RawLua>>`, the trait `RefUnwindSafe` is not implemented for `UnsafeCell<mlua::state::RawLua>` |
| 10 | +note: required because it appears within the type `lock_api::remutex::ReentrantMutex<parking_lot::raw_mutex::RawMutex, parking_lot::remutex::RawThreadId, mlua::state::RawLua>` |
| 11 | + --> $CARGO/lock_api-$VERSION/src/remutex.rs |
12 | 12 | | |
13 | | - | pub struct Cell<T: ?Sized> { |
14 | | - | ^^^^ |
15 | | -note: required because it appears within the type `rc::RcInner<mlua::types::sync::inner::ReentrantMutex<mlua::state::RawLua>>` |
16 | | - --> $RUST/alloc/src/rc.rs |
| 13 | + | pub struct ReentrantMutex<R, G, T: ?Sized> { |
| 14 | + | ^^^^^^^^^^^^^^ |
| 15 | +note: required because it appears within the type `alloc::sync::ArcInner<lock_api::remutex::ReentrantMutex<parking_lot::raw_mutex::RawMutex, parking_lot::remutex::RawThreadId, mlua::state::RawLua>>` |
| 16 | + --> $RUST/alloc/src/sync.rs |
17 | 17 | | |
18 | | - | struct RcInner<T: ?Sized> { |
19 | | - | ^^^^^^^ |
20 | | - = note: required for `NonNull<rc::RcInner<mlua::types::sync::inner::ReentrantMutex<mlua::state::RawLua>>>` to implement `UnwindSafe` |
21 | | -note: required because it appears within the type `std::rc::Weak<mlua::types::sync::inner::ReentrantMutex<mlua::state::RawLua>>` |
22 | | - --> $RUST/alloc/src/rc.rs |
| 18 | + | struct ArcInner<T: ?Sized> { |
| 19 | + | ^^^^^^^^ |
| 20 | + = note: required for `NonNull<alloc::sync::ArcInner<lock_api::remutex::ReentrantMutex<parking_lot::raw_mutex::RawMutex, parking_lot::remutex::RawThreadId, mlua::state::RawLua>>>` to implement `UnwindSafe` |
| 21 | +note: required because it appears within the type `std::sync::Weak<lock_api::remutex::ReentrantMutex<parking_lot::raw_mutex::RawMutex, parking_lot::remutex::RawThreadId, mlua::state::RawLua>>` |
| 22 | + --> $RUST/alloc/src/sync.rs |
23 | 23 | | |
24 | 24 | | pub struct Weak< |
25 | 25 | | ^^^^ |
@@ -49,105 +49,38 @@ note: required by a bound in `std::panic::catch_unwind` |
49 | 49 | | pub fn catch_unwind<F: FnOnce() -> R + UnwindSafe, R>(f: F) -> Result<R> { |
50 | 50 | | ^^^^^^^^^^ required by this bound in `catch_unwind` |
51 | 51 |
|
52 | | -error[E0277]: the type `UnsafeCell<*mut lua_State>` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary |
| 52 | +error[E0277]: the type `UnsafeCell<usize>` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary |
53 | 53 | --> tests/compile/ref_nounwindsafe.rs:8:18 |
54 | 54 | | |
55 | 55 | 8 | catch_unwind(move || table.set("a", "b").unwrap()); |
56 | | - | ------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `UnsafeCell<*mut lua_State>` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary |
| 56 | + | ------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `UnsafeCell<usize>` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary |
57 | 57 | | | |
58 | 58 | | required by a bound introduced by this call |
59 | 59 | | |
60 | | - = help: within `rc::RcInner<mlua::types::sync::inner::ReentrantMutex<mlua::state::RawLua>>`, the trait `RefUnwindSafe` is not implemented for `UnsafeCell<*mut lua_State>` |
61 | | -note: required because it appears within the type `Cell<*mut lua_State>` |
| 60 | + = help: within `alloc::sync::ArcInner<lock_api::remutex::ReentrantMutex<parking_lot::raw_mutex::RawMutex, parking_lot::remutex::RawThreadId, mlua::state::RawLua>>`, the trait `RefUnwindSafe` is not implemented for `UnsafeCell<usize>` |
| 61 | +note: required because it appears within the type `Cell<usize>` |
62 | 62 | --> $RUST/core/src/cell.rs |
63 | 63 | | |
64 | 64 | | pub struct Cell<T: ?Sized> { |
65 | 65 | | ^^^^ |
66 | | -note: required because it appears within the type `mlua::state::RawLua` |
67 | | - --> src/state/raw.rs |
68 | | - | |
69 | | - | pub struct RawLua { |
70 | | - | ^^^^^^ |
71 | | -note: required because it appears within the type `mlua::types::sync::inner::ReentrantMutex<mlua::state::RawLua>` |
72 | | - --> src/types/sync.rs |
73 | | - | |
74 | | - | pub(crate) struct ReentrantMutex<T>(T); |
75 | | - | ^^^^^^^^^^^^^^ |
76 | | -note: required because it appears within the type `rc::RcInner<mlua::types::sync::inner::ReentrantMutex<mlua::state::RawLua>>` |
77 | | - --> $RUST/alloc/src/rc.rs |
78 | | - | |
79 | | - | struct RcInner<T: ?Sized> { |
80 | | - | ^^^^^^^ |
81 | | - = note: required for `NonNull<rc::RcInner<mlua::types::sync::inner::ReentrantMutex<mlua::state::RawLua>>>` to implement `UnwindSafe` |
82 | | -note: required because it appears within the type `std::rc::Weak<mlua::types::sync::inner::ReentrantMutex<mlua::state::RawLua>>` |
83 | | - --> $RUST/alloc/src/rc.rs |
84 | | - | |
85 | | - | pub struct Weak< |
86 | | - | ^^^^ |
87 | | -note: required because it appears within the type `WeakLua` |
88 | | - --> src/state.rs |
89 | | - | |
90 | | - | pub struct WeakLua(XWeak<ReentrantMutex<RawLua>>); |
91 | | - | ^^^^^^^ |
92 | | -note: required because it appears within the type `mlua::types::value_ref::ValueRef` |
93 | | - --> src/types/value_ref.rs |
94 | | - | |
95 | | - | pub struct ValueRef { |
96 | | - | ^^^^^^^^ |
97 | | -note: required because it appears within the type `LuaTable` |
98 | | - --> src/table.rs |
99 | | - | |
100 | | - | pub struct Table(pub(crate) ValueRef); |
101 | | - | ^^^^^ |
102 | | -note: required because it's used within this closure |
103 | | - --> tests/compile/ref_nounwindsafe.rs:8:18 |
104 | | - | |
105 | | -8 | catch_unwind(move || table.set("a", "b").unwrap()); |
106 | | - | ^^^^^^^ |
107 | | -note: required by a bound in `std::panic::catch_unwind` |
108 | | - --> $RUST/std/src/panic.rs |
109 | | - | |
110 | | - | pub fn catch_unwind<F: FnOnce() -> R + UnwindSafe, R>(f: F) -> Result<R> { |
111 | | - | ^^^^^^^^^^ required by this bound in `catch_unwind` |
112 | | - |
113 | | -error[E0277]: the type `UnsafeCell<state::extra::ExtraData>` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary |
114 | | - --> tests/compile/ref_nounwindsafe.rs:8:18 |
115 | | - | |
116 | | -8 | catch_unwind(move || table.set("a", "b").unwrap()); |
117 | | - | ------------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `UnsafeCell<state::extra::ExtraData>` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary |
118 | | - | | |
119 | | - | required by a bound introduced by this call |
120 | | - | |
121 | | - = help: the trait `RefUnwindSafe` is not implemented for `UnsafeCell<state::extra::ExtraData>` |
122 | | - = note: required for `Rc<UnsafeCell<state::extra::ExtraData>>` to implement `RefUnwindSafe` |
123 | | -note: required because it appears within the type `MaybeDangling<Rc<UnsafeCell<state::extra::ExtraData>>>` |
124 | | - --> $RUST/core/src/mem/maybe_dangling.rs |
125 | | - | |
126 | | - | pub struct MaybeDangling<P: ?Sized>(P); |
127 | | - | ^^^^^^^^^^^^^ |
128 | | -note: required because it appears within the type `ManuallyDrop<Rc<UnsafeCell<state::extra::ExtraData>>>` |
129 | | - --> $RUST/core/src/mem/manually_drop.rs |
130 | | - | |
131 | | - | pub struct ManuallyDrop<T: ?Sized> { |
132 | | - | ^^^^^^^^^^^^ |
133 | | -note: required because it appears within the type `mlua::state::RawLua` |
134 | | - --> src/state/raw.rs |
135 | | - | |
136 | | - | pub struct RawLua { |
137 | | - | ^^^^^^ |
138 | | -note: required because it appears within the type `mlua::types::sync::inner::ReentrantMutex<mlua::state::RawLua>` |
139 | | - --> src/types/sync.rs |
140 | | - | |
141 | | - | pub(crate) struct ReentrantMutex<T>(T); |
142 | | - | ^^^^^^^^^^^^^^ |
143 | | -note: required because it appears within the type `rc::RcInner<mlua::types::sync::inner::ReentrantMutex<mlua::state::RawLua>>` |
144 | | - --> $RUST/alloc/src/rc.rs |
145 | | - | |
146 | | - | struct RcInner<T: ?Sized> { |
147 | | - | ^^^^^^^ |
148 | | - = note: required for `NonNull<rc::RcInner<mlua::types::sync::inner::ReentrantMutex<mlua::state::RawLua>>>` to implement `UnwindSafe` |
149 | | -note: required because it appears within the type `std::rc::Weak<mlua::types::sync::inner::ReentrantMutex<mlua::state::RawLua>>` |
150 | | - --> $RUST/alloc/src/rc.rs |
| 66 | +note: required because it appears within the type `lock_api::remutex::RawReentrantMutex<parking_lot::raw_mutex::RawMutex, parking_lot::remutex::RawThreadId>` |
| 67 | + --> $CARGO/lock_api-$VERSION/src/remutex.rs |
| 68 | + | |
| 69 | + | pub struct RawReentrantMutex<R, G> { |
| 70 | + | ^^^^^^^^^^^^^^^^^ |
| 71 | +note: required because it appears within the type `lock_api::remutex::ReentrantMutex<parking_lot::raw_mutex::RawMutex, parking_lot::remutex::RawThreadId, mlua::state::RawLua>` |
| 72 | + --> $CARGO/lock_api-$VERSION/src/remutex.rs |
| 73 | + | |
| 74 | + | pub struct ReentrantMutex<R, G, T: ?Sized> { |
| 75 | + | ^^^^^^^^^^^^^^ |
| 76 | +note: required because it appears within the type `alloc::sync::ArcInner<lock_api::remutex::ReentrantMutex<parking_lot::raw_mutex::RawMutex, parking_lot::remutex::RawThreadId, mlua::state::RawLua>>` |
| 77 | + --> $RUST/alloc/src/sync.rs |
| 78 | + | |
| 79 | + | struct ArcInner<T: ?Sized> { |
| 80 | + | ^^^^^^^^ |
| 81 | + = note: required for `NonNull<alloc::sync::ArcInner<lock_api::remutex::ReentrantMutex<parking_lot::raw_mutex::RawMutex, parking_lot::remutex::RawThreadId, mlua::state::RawLua>>>` to implement `UnwindSafe` |
| 82 | +note: required because it appears within the type `std::sync::Weak<lock_api::remutex::ReentrantMutex<parking_lot::raw_mutex::RawMutex, parking_lot::remutex::RawThreadId, mlua::state::RawLua>>` |
| 83 | + --> $RUST/alloc/src/sync.rs |
151 | 84 | | |
152 | 85 | | pub struct Weak< |
153 | 86 | | ^^^^ |
|
0 commit comments