[INFO] fetching crate base-coroutine 0.2.0... [INFO] checking base-coroutine-0.2.0 against try#c387b04bf028733cd561d62128c8a5eee4bc1458+rustflags=-Dtail_expr_drop_order for pr-130930 [INFO] extracting crate base-coroutine 0.2.0 into /workspace/builds/worker-0-tc2/source [INFO] validating manifest of crates.io crate base-coroutine 0.2.0 on toolchain c387b04bf028733cd561d62128c8a5eee4bc1458 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate base-coroutine 0.2.0 [INFO] finished tweaking crates.io crate base-coroutine 0.2.0 [INFO] tweaked toml for crates.io crate base-coroutine 0.2.0 written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 70 packages to latest compatible versions [INFO] [stderr] Adding generator v0.7.5 (available: v0.8.3) [INFO] [stderr] Adding hermit-abi v0.3.9 (available: v0.4.0) [INFO] [stderr] Adding loom v0.5.6 (available: v0.7.2) [INFO] [stderr] Adding matchers v0.1.0 (available: v0.2.0) [INFO] [stderr] Adding nu-ansi-term v0.46.0 (available: v0.50.1) [INFO] [stderr] Adding object-collection v0.0.3 (available: v0.0.5) [INFO] [stderr] Adding object-collection v0.0.4 (available: v0.0.5) [INFO] [stderr] Adding regex-automata v0.1.10 (available: v0.4.7) [INFO] [stderr] Adding regex-syntax v0.6.29 (available: v0.8.4) [INFO] [stderr] Adding timer-utils v0.0.3 (available: v0.0.4) [INFO] [stderr] Adding windows v0.48.0 (available: v0.58.0) [INFO] [stderr] Adding windows-sys v0.42.0 (available: v0.59.0) [INFO] [stderr] Adding windows-targets v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_aarch64_gnullvm v0.42.2 (available: v0.52.6) [INFO] [stderr] Adding windows_aarch64_gnullvm v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_aarch64_msvc v0.42.2 (available: v0.52.6) [INFO] [stderr] Adding windows_aarch64_msvc v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_i686_gnu v0.42.2 (available: v0.52.6) [INFO] [stderr] Adding windows_i686_gnu v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_i686_msvc v0.42.2 (available: v0.52.6) [INFO] [stderr] Adding windows_i686_msvc v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_x86_64_gnu v0.42.2 (available: v0.52.6) [INFO] [stderr] Adding windows_x86_64_gnu v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_x86_64_gnullvm v0.42.2 (available: v0.52.6) [INFO] [stderr] Adding windows_x86_64_gnullvm v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_x86_64_msvc v0.42.2 (available: v0.52.6) [INFO] [stderr] Adding windows_x86_64_msvc v0.48.5 (available: v0.52.6) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: version requirement `0.5.2+5.3.0-patched` for dependency `jemalloc-sys` includes semver metadata which will be ignored, removing the metadata is recommended to avoid confusion [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] cc4af7b10ad7e30b12c1f3fa3237e1158c11bc3066e83a8d9927e8c8fb068b5f [INFO] running `Command { std: "docker" "start" "-a" "cc4af7b10ad7e30b12c1f3fa3237e1158c11bc3066e83a8d9927e8c8fb068b5f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "cc4af7b10ad7e30b12c1f3fa3237e1158c11bc3066e83a8d9927e8c8fb068b5f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cc4af7b10ad7e30b12c1f3fa3237e1158c11bc3066e83a8d9927e8c8fb068b5f", kill_on_drop: false }` [INFO] [stdout] cc4af7b10ad7e30b12c1f3fa3237e1158c11bc3066e83a8d9927e8c8fb068b5f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail_expr_drop_order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 66da19f290f7c573aa9be3b5927fbfeddde5730ca42d61207510622c669e3334 [INFO] running `Command { std: "docker" "start" "-a" "66da19f290f7c573aa9be3b5927fbfeddde5730ca42d61207510622c669e3334", kill_on_drop: false }` [INFO] [stderr] warning: version requirement `0.5.2+5.3.0-patched` for dependency `jemalloc-sys` includes semver metadata which will be ignored, removing the metadata is recommended to avoid confusion [INFO] [stderr] Checking object-collection v0.0.3 [INFO] [stderr] Compiling jemalloc-sys v0.5.4+5.3.0-patched [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Checking either v1.13.0 [INFO] [stderr] Checking st3 v0.4.1 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking object-collection v0.0.4 [INFO] [stderr] Compiling base-coroutine v0.2.0 (/opt/rustwide/workdir) [INFO] [stderr] Checking timer-utils v0.0.3 [INFO] [stderr] Checking rayon-core v1.12.1 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/id.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | COROUTINE_ID.store(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/id.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | SCHEDULER_ID.store(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/id.rs:20:23 [INFO] [stdout] | [INFO] [stdout] 20 | let val = COROUTINE_ID.fetch_add(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/id.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | COROUTINE_ID.store(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/id.rs:30:23 [INFO] [stdout] | [INFO] [stdout] 30 | let val = SCHEDULER_ID.fetch_add(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/id.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | COROUTINE_ID.store(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `CoroutineResult`, which is not FFI-safe [INFO] [stdout] --> src/coroutine.rs:163:29 [INFO] [stdout] | [INFO] [stdout] 163 | marker: PhantomData<&'a extern "C" fn(Param) -> CoroutineResult>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum [INFO] [stdout] = note: enum has no representation hint [INFO] [stdout] note: the type is defined here [INFO] [stdout] --> src/coroutine.rs:114:1 [INFO] [stdout] | [INFO] [stdout] 114 | pub enum CoroutineResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(improper_ctypes_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:14:14 [INFO] [stdout] | [INFO] [stdout] 14 | unsafe { INSTANCE.local_queue() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | / LOCAL_QUEUES.get_or_init(|| { [INFO] [stdout] 34 | | (0..local_queues) [INFO] [stdout] 35 | | .map(|_| WorkStealQueue::new(local_capacity)) [INFO] [stdout] 36 | | .collect() [INFO] [stdout] 37 | | }); [INFO] [stdout] | |______________^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:52:18 [INFO] [stdout] | [INFO] [stdout] 52 | unsafe { GLOBAL_QUEUE.push(ptr).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:61:13 [INFO] [stdout] | [INFO] [stdout] 61 | / LOCAL_QUEUES [INFO] [stdout] 62 | | .get_mut() [INFO] [stdout] | |__________________________^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:132:29 [INFO] [stdout] | [INFO] [stdout] 132 | let _ = GLOBAL_QUEUE.push(half.pop().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:134:17 [INFO] [stdout] | [INFO] [stdout] 134 | GLOBAL_QUEUE.push(item).map_err(|e| match e { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:183:46 [INFO] [stdout] | [INFO] [stdout] 183 | if let Ok(popped_item) = GLOBAL_QUEUE.pop() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:190:36 [INFO] [stdout] | [INFO] [stdout] 190 | let local_queues = LOCAL_QUEUES.get_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:214:19 [INFO] [stdout] | [INFO] [stdout] 214 | match GLOBAL_QUEUE.pop() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:248:13 [INFO] [stdout] | [INFO] [stdout] 248 | / GLOBAL_LOCK [INFO] [stdout] 249 | | .compare_exchange(false, true, Ordering::Relaxed, Ordering::Relaxed) [INFO] [stdout] | |____________________________________________________________________________________^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:258:23 [INFO] [stdout] | [INFO] [stdout] 258 | match GLOBAL_QUEUE.pop() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:263:13 [INFO] [stdout] | [INFO] [stdout] 263 | GLOBAL_LOCK.store(false, Ordering::Relaxed); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:98:26 [INFO] [stdout] | [INFO] [stdout] 98 | || unsafe { !SUSPEND_TABLE.is_empty() || !SYSTEM_CALL_TABLE.is_empty() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:98:55 [INFO] [stdout] | [INFO] [stdout] 98 | || unsafe { !SUSPEND_TABLE.is_empty() || !SYSTEM_CALL_TABLE.is_empty() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:169:33 [INFO] [stdout] | [INFO] [stdout] 169 | / ... SUSPEND_TABLE.insert_raw( [INFO] [stdout] 170 | | ... timer_utils::add_timeout_time(delay_time), [INFO] [stdout] 171 | | ... coroutine as *mut _ as *mut c_void, [INFO] [stdout] 172 | | ... ); [INFO] [stdout] | |_______________________^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:183:34 [INFO] [stdout] | [INFO] [stdout] 183 | unsafe { SYSTEM_CALL_TABLE.insert(coroutine.get_id(), coroutine) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:201:25 [INFO] [stdout] | [INFO] [stdout] 201 | for _ in 0..SUSPEND_TABLE.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:202:38 [INFO] [stdout] | [INFO] [stdout] 202 | if let Some(entry) = SUSPEND_TABLE.front() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:208:46 [INFO] [stdout] | [INFO] [stdout] 208 | if let Some(mut entry) = SUSPEND_TABLE.pop_front() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:238:27 [INFO] [stdout] | [INFO] [stdout] 238 | if let Some(co) = SYSTEM_CALL_TABLE.remove(&co_id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/monitor.rs:64:18 [INFO] [stdout] | [INFO] [stdout] 64 | unsafe { &mut GLOBAL } [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 64 | unsafe { &raw mut GLOBAL } [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/monitor.rs:133:41 [INFO] [stdout] | [INFO] [stdout] 133 | if let Some(local_queues) = LOCAL_QUEUES.get_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/monitor.rs:137:21 [INFO] [stdout] | [INFO] [stdout] 137 | if !GLOBAL_QUEUE.is_empty() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/monitor.rs:166:41 [INFO] [stdout] | [INFO] [stdout] 166 | let idle_less = LOCAL_QUEUES.get_mut().unwrap().get_mut(min.1).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:111:25 [INFO] [stdout] | [INFO] [stdout] 111 | let index = INDEX.fetch_add(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:113:17 [INFO] [stdout] | [INFO] [stdout] 113 | INDEX.store(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] 115 | EVENT_LOOPS.get_mut(index % num_cpus::get()).unwrap() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:166:13 [INFO] [stdout] | [INFO] [stdout] 166 | READABLE_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:167:13 [INFO] [stdout] | [INFO] [stdout] 167 | READABLE_TOKEN_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:168:13 [INFO] [stdout] | [INFO] [stdout] 168 | WRITABLE_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:169:13 [INFO] [stdout] | [INFO] [stdout] 169 | WRITABLE_TOKEN_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:182:16 [INFO] [stdout] | [INFO] [stdout] 182 | if READABLE_RECORDS.contains(&fd) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:183:20 [INFO] [stdout] | [INFO] [stdout] 183 | if WRITABLE_RECORDS.contains(&fd) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:187:25 [INFO] [stdout] | [INFO] [stdout] 187 | WRITABLE_TOKEN_RECORDS.remove(&fd).unwrap_or(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:190:21 [INFO] [stdout] | [INFO] [stdout] 190 | READABLE_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:207:16 [INFO] [stdout] | [INFO] [stdout] 207 | if WRITABLE_RECORDS.contains(&fd) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:208:20 [INFO] [stdout] | [INFO] [stdout] 208 | if READABLE_RECORDS.contains(&fd) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:212:25 [INFO] [stdout] | [INFO] [stdout] 212 | READABLE_TOKEN_RECORDS.remove(&fd).unwrap_or(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:215:21 [INFO] [stdout] | [INFO] [stdout] 215 | WRITABLE_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:236:13 [INFO] [stdout] | [INFO] [stdout] 236 | READABLE_RECORDS.insert(fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:237:13 [INFO] [stdout] | [INFO] [stdout] 237 | READABLE_TOKEN_RECORDS.insert(fd, token); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:246:13 [INFO] [stdout] | [INFO] [stdout] 246 | WRITABLE_RECORDS.insert(fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:247:13 [INFO] [stdout] | [INFO] [stdout] 247 | WRITABLE_TOKEN_RECORDS.insert(fd, token); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:263:21 [INFO] [stdout] | [INFO] [stdout] 263 | READABLE_TOKEN_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:266:21 [INFO] [stdout] | [INFO] [stdout] 266 | WRITABLE_TOKEN_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 52 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/id.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | COROUTINE_ID.store(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/id.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | SCHEDULER_ID.store(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/id.rs:20:23 [INFO] [stdout] | [INFO] [stdout] 20 | let val = COROUTINE_ID.fetch_add(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/id.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | COROUTINE_ID.store(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/id.rs:30:23 [INFO] [stdout] | [INFO] [stdout] 30 | let val = SCHEDULER_ID.fetch_add(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/id.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | COROUTINE_ID.store(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `CoroutineResult`, which is not FFI-safe [INFO] [stdout] --> src/coroutine.rs:163:29 [INFO] [stdout] | [INFO] [stdout] 163 | marker: PhantomData<&'a extern "C" fn(Param) -> CoroutineResult>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum [INFO] [stdout] = note: enum has no representation hint [INFO] [stdout] note: the type is defined here [INFO] [stdout] --> src/coroutine.rs:114:1 [INFO] [stdout] | [INFO] [stdout] 114 | pub enum CoroutineResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(improper_ctypes_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:14:14 [INFO] [stdout] | [INFO] [stdout] 14 | unsafe { INSTANCE.local_queue() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | / LOCAL_QUEUES.get_or_init(|| { [INFO] [stdout] 34 | | (0..local_queues) [INFO] [stdout] 35 | | .map(|_| WorkStealQueue::new(local_capacity)) [INFO] [stdout] 36 | | .collect() [INFO] [stdout] 37 | | }); [INFO] [stdout] | |______________^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:52:18 [INFO] [stdout] | [INFO] [stdout] 52 | unsafe { GLOBAL_QUEUE.push(ptr).unwrap() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:61:13 [INFO] [stdout] | [INFO] [stdout] 61 | / LOCAL_QUEUES [INFO] [stdout] 62 | | .get_mut() [INFO] [stdout] | |__________________________^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:132:29 [INFO] [stdout] | [INFO] [stdout] 132 | let _ = GLOBAL_QUEUE.push(half.pop().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:134:17 [INFO] [stdout] | [INFO] [stdout] 134 | GLOBAL_QUEUE.push(item).map_err(|e| match e { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:183:46 [INFO] [stdout] | [INFO] [stdout] 183 | if let Ok(popped_item) = GLOBAL_QUEUE.pop() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:190:36 [INFO] [stdout] | [INFO] [stdout] 190 | let local_queues = LOCAL_QUEUES.get_mut().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:214:19 [INFO] [stdout] | [INFO] [stdout] 214 | match GLOBAL_QUEUE.pop() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:248:13 [INFO] [stdout] | [INFO] [stdout] 248 | / GLOBAL_LOCK [INFO] [stdout] 249 | | .compare_exchange(false, true, Ordering::Relaxed, Ordering::Relaxed) [INFO] [stdout] | |____________________________________________________________________________________^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:258:23 [INFO] [stdout] | [INFO] [stdout] 258 | match GLOBAL_QUEUE.pop() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/work_steal.rs:263:13 [INFO] [stdout] | [INFO] [stdout] 263 | GLOBAL_LOCK.store(false, Ordering::Relaxed); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:98:26 [INFO] [stdout] | [INFO] [stdout] 98 | || unsafe { !SUSPEND_TABLE.is_empty() || !SYSTEM_CALL_TABLE.is_empty() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:98:55 [INFO] [stdout] | [INFO] [stdout] 98 | || unsafe { !SUSPEND_TABLE.is_empty() || !SYSTEM_CALL_TABLE.is_empty() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:169:33 [INFO] [stdout] | [INFO] [stdout] 169 | / ... SUSPEND_TABLE.insert_raw( [INFO] [stdout] 170 | | ... timer_utils::add_timeout_time(delay_time), [INFO] [stdout] 171 | | ... coroutine as *mut _ as *mut c_void, [INFO] [stdout] 172 | | ... ); [INFO] [stdout] | |_______________________^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:183:34 [INFO] [stdout] | [INFO] [stdout] 183 | unsafe { SYSTEM_CALL_TABLE.insert(coroutine.get_id(), coroutine) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:201:25 [INFO] [stdout] | [INFO] [stdout] 201 | for _ in 0..SUSPEND_TABLE.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:202:38 [INFO] [stdout] | [INFO] [stdout] 202 | if let Some(entry) = SUSPEND_TABLE.front() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:208:46 [INFO] [stdout] | [INFO] [stdout] 208 | if let Some(mut entry) = SUSPEND_TABLE.pop_front() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/scheduler.rs:238:27 [INFO] [stdout] | [INFO] [stdout] 238 | if let Some(co) = SYSTEM_CALL_TABLE.remove(&co_id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/monitor.rs:64:18 [INFO] [stdout] | [INFO] [stdout] 64 | unsafe { &mut GLOBAL } [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 64 | unsafe { &raw mut GLOBAL } [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/monitor.rs:133:41 [INFO] [stdout] | [INFO] [stdout] 133 | if let Some(local_queues) = LOCAL_QUEUES.get_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/monitor.rs:137:21 [INFO] [stdout] | [INFO] [stdout] 137 | if !GLOBAL_QUEUE.is_empty() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/monitor.rs:166:41 [INFO] [stdout] | [INFO] [stdout] 166 | let idle_less = LOCAL_QUEUES.get_mut().unwrap().get_mut(min.1).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:111:25 [INFO] [stdout] | [INFO] [stdout] 111 | let index = INDEX.fetch_add(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:113:17 [INFO] [stdout] | [INFO] [stdout] 113 | INDEX.store(1, Ordering::SeqCst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:115:13 [INFO] [stdout] | [INFO] [stdout] 115 | EVENT_LOOPS.get_mut(index % num_cpus::get()).unwrap() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:166:13 [INFO] [stdout] | [INFO] [stdout] 166 | READABLE_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:167:13 [INFO] [stdout] | [INFO] [stdout] 167 | READABLE_TOKEN_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:168:13 [INFO] [stdout] | [INFO] [stdout] 168 | WRITABLE_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:169:13 [INFO] [stdout] | [INFO] [stdout] 169 | WRITABLE_TOKEN_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:182:16 [INFO] [stdout] | [INFO] [stdout] 182 | if READABLE_RECORDS.contains(&fd) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:183:20 [INFO] [stdout] | [INFO] [stdout] 183 | if WRITABLE_RECORDS.contains(&fd) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:187:25 [INFO] [stdout] | [INFO] [stdout] 187 | WRITABLE_TOKEN_RECORDS.remove(&fd).unwrap_or(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:190:21 [INFO] [stdout] | [INFO] [stdout] 190 | READABLE_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:207:16 [INFO] [stdout] | [INFO] [stdout] 207 | if WRITABLE_RECORDS.contains(&fd) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:208:20 [INFO] [stdout] | [INFO] [stdout] 208 | if READABLE_RECORDS.contains(&fd) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:212:25 [INFO] [stdout] | [INFO] [stdout] 212 | READABLE_TOKEN_RECORDS.remove(&fd).unwrap_or(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:215:21 [INFO] [stdout] | [INFO] [stdout] 215 | WRITABLE_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:236:13 [INFO] [stdout] | [INFO] [stdout] 236 | READABLE_RECORDS.insert(fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:237:13 [INFO] [stdout] | [INFO] [stdout] 237 | READABLE_TOKEN_RECORDS.insert(fd, token); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:246:13 [INFO] [stdout] | [INFO] [stdout] 246 | WRITABLE_RECORDS.insert(fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:247:13 [INFO] [stdout] | [INFO] [stdout] 247 | WRITABLE_TOKEN_RECORDS.insert(fd, token); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:263:21 [INFO] [stdout] | [INFO] [stdout] 263 | READABLE_TOKEN_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/event_loop/mod.rs:266:21 [INFO] [stdout] | [INFO] [stdout] 266 | WRITABLE_TOKEN_RECORDS.remove(&fd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 52 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 26.68s [INFO] running `Command { std: "docker" "inspect" "66da19f290f7c573aa9be3b5927fbfeddde5730ca42d61207510622c669e3334", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "66da19f290f7c573aa9be3b5927fbfeddde5730ca42d61207510622c669e3334", kill_on_drop: false }` [INFO] [stdout] 66da19f290f7c573aa9be3b5927fbfeddde5730ca42d61207510622c669e3334