cargo +nightly build --target wasm32-unknown-emscripten fails with
error[E0277]: the type `UnsafeCell<isize>` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary
--> src\queue.rs:79:30
|
79 | Closure::new(move |_| state.run_all())
| ------------ ^^^^^^^^^^^^^^^^^^^^^^^^ `UnsafeCell<isize>` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary
| |
| required by a bound introduced by this call
|
= help: within `QueueState`, the trait `RefUnwindSafe` is not implemented for `UnsafeCell<isize>`
note: required because it appears within the type `Cell<isize>`
--> C:\Users\HeartofPhos\.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\core\src\cell.rs:315:12
|
315 | pub struct Cell<T: ?Sized> {
| ^^^^
note: required because it appears within the type `RefCell<VecDeque<singlethread::Job>>`
--> C:\Users\HeartofPhos\.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\core\src\cell.rs:852:12
|
852 | pub struct RefCell<T: ?Sized> {
| ^^^^^^^
note: required because it appears within the type `QueueState`
--> src\queue.rs:24:8
|
24 | struct QueueState {
| ^^^^^^^^^^
= note: required for `Rc<QueueState>` to implement `UnwindSafe`
note: required because `state` is used within this closure
--> src\queue.rs:79:39
|
79 | Closure::new(move |_| state.run_all())
| ^^^^^
= note: required for `{closure@src\queue.rs:79:30: 79:38}` to implement `wasm_bindgen::__rt::marker::MaybeUnwindSafe`
note: required by a bound in `ScopedClosure::<'static, T>::new`
--> C:\Users\HeartofPhos\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasm-bindgen-0.2.114\src\closure.rs:244:33
|
242 | pub fn new<F>(t: F) -> Self
| --- required by a bound in this associated function
243 | where
244 | F: IntoWasmClosure<T> + MaybeUnwindSafe + 'static,
| ^^^^^^^^^^^^^^^ required by this bound in `ScopedClosure::<'static, T>::new`
For more information about this error, try `rustc --explain E0277`.
error: could not compile `web-task` (lib) due to 1 previous error
updating Cargo.toml with wasm-bindgen = { version = "=0.2.108", default-features = false } successfully compiles
cargo +nightly build --target wasm32-unknown-emscriptenfails withupdating
Cargo.tomlwithwasm-bindgen = { version = "=0.2.108", default-features = false }successfully compiles