[INFO] fetching crate substrate-wasmtime-runtime 0.16.0-threadsafe.4... [INFO] checking substrate-wasmtime-runtime-0.16.0-threadsafe.4 against try#c387b04bf028733cd561d62128c8a5eee4bc1458+rustflags=-Dtail_expr_drop_order for pr-130930 [INFO] extracting crate substrate-wasmtime-runtime 0.16.0-threadsafe.4 into /workspace/builds/worker-6-tc2/source [INFO] validating manifest of crates.io crate substrate-wasmtime-runtime 0.16.0-threadsafe.4 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 substrate-wasmtime-runtime 0.16.0-threadsafe.4 [INFO] finished tweaking crates.io crate substrate-wasmtime-runtime 0.16.0-threadsafe.4 [INFO] tweaked toml for crates.io crate substrate-wasmtime-runtime 0.16.0-threadsafe.4 written to /workspace/builds/worker-6-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 105 packages to latest compatible versions [INFO] [stderr] Adding base64 v0.12.3 (available: v0.22.1) [INFO] [stderr] Adding bitflags v1.3.2 (available: v2.6.0) [INFO] [stderr] Adding block-buffer v0.7.3 (available: v0.10.4) [INFO] [stderr] Adding block-padding v0.1.5 (available: v0.3.3) [INFO] [stderr] Adding cfg-if v0.1.10 (available: v1.0.0) [INFO] [stderr] Adding cranelift-bforest v0.63.0 (available: v0.112.1) [INFO] [stderr] Adding cranelift-codegen v0.63.0 (available: v0.112.1) [INFO] [stderr] Adding cranelift-codegen-meta v0.63.0 (available: v0.112.1) [INFO] [stderr] Adding cranelift-codegen-shared v0.63.0 (available: v0.112.1) [INFO] [stderr] Adding cranelift-entity v0.63.0 (available: v0.112.1) [INFO] [stderr] Adding cranelift-frontend v0.63.0 (available: v0.112.1) [INFO] [stderr] Adding cranelift-wasm v0.63.0 (available: v0.112.1) [INFO] [stderr] Adding digest v0.8.1 (available: v0.10.7) [INFO] [stderr] Adding directories v2.0.2 (available: v5.0.1) [INFO] [stderr] Adding dirs-sys v0.3.7 (available: v0.4.1) [INFO] [stderr] Adding env_logger v0.10.2 (available: v0.11.5) [INFO] [stderr] Adding errno v0.2.8 (available: v0.3.9) [INFO] [stderr] Adding file-per-thread-logger v0.1.6 (available: v0.2.0) [INFO] [stderr] Adding generic-array v0.12.4 (available: v1.1.0) [INFO] [stderr] Adding gimli v0.20.0 (available: v0.31.0) [INFO] [stderr] Adding hashbrown v0.12.3 (available: v0.14.5) [INFO] [stderr] Adding indexmap v1.9.3 (available: v2.5.0) [INFO] [stderr] Adding itertools v0.9.0 (available: v0.13.0) [INFO] [stderr] Adding memoffset v0.5.6 (available: v0.9.1) [INFO] [stderr] Adding more-asserts v0.2.2 (available: v0.3.1) [INFO] [stderr] Adding opaque-debug v0.2.3 (available: v0.3.1) [INFO] [stderr] Adding regalloc v0.0.21 (available: v0.0.34) [INFO] [stderr] Adding region v2.2.0 (available: v3.0.2) [INFO] [stderr] Adding rustc-hash v1.1.0 (available: v2.0.0) [INFO] [stderr] Adding sha2 v0.8.2 (available: v0.10.8) [INFO] [stderr] Adding target-lexicon v0.10.0 (available: v0.12.16) [INFO] [stderr] Adding toml v0.5.11 (available: v0.8.19) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (available: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding wasmparser v0.51.4 (available: v0.217.0) [INFO] [stderr] Adding wasmtime-environ v0.16.0 (available: v25.0.1) [INFO] [stderr] Adding windows-sys v0.52.0 (available: v0.59.0) [INFO] [stderr] Adding zstd v0.5.4+zstd.1.4.7 (available: v0.13.2) [INFO] [stderr] Adding zstd-safe v2.0.6+zstd.1.4.7 (available: v7.2.1) [INFO] [stderr] Adding zstd-sys v1.4.18+zstd.1.4.7 (available: v1.6.3+zstd.1.5.2) [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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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] 5dc017a22962c1601507801066aa85272336e515f1022b6d9a32393a4a886542 [INFO] running `Command { std: "docker" "start" "-a" "5dc017a22962c1601507801066aa85272336e515f1022b6d9a32393a4a886542", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5dc017a22962c1601507801066aa85272336e515f1022b6d9a32393a4a886542", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5dc017a22962c1601507801066aa85272336e515f1022b6d9a32393a4a886542", kill_on_drop: false }` [INFO] [stdout] 5dc017a22962c1601507801066aa85272336e515f1022b6d9a32393a4a886542 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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] 84de002eb0f1f6f17350e666510ff83af27cd508d3106a4ac174fff446b4e2d2 [INFO] running `Command { std: "docker" "start" "-a" "84de002eb0f1f6f17350e666510ff83af27cd508d3106a4ac174fff446b4e2d2", kill_on_drop: false }` [INFO] [stderr] Compiling either v1.13.0 [INFO] [stderr] Compiling libc v0.2.159 [INFO] [stderr] Compiling cranelift-codegen-shared v0.63.0 [INFO] [stderr] Compiling glob v0.3.1 [INFO] [stderr] Compiling target-lexicon v0.10.0 [INFO] [stderr] Compiling serde_derive v1.0.210 [INFO] [stderr] Compiling thiserror-impl v1.0.64 [INFO] [stderr] Checking rustc-hash v1.1.0 [INFO] [stderr] Checking regalloc v0.0.21 [INFO] [stderr] Compiling itertools v0.9.0 [INFO] [stderr] Checking generic-array v0.12.4 [INFO] [stderr] Checking gimli v0.20.0 [INFO] [stderr] Checking byte-tools v0.3.1 [INFO] [stderr] Compiling zstd-safe v2.0.6+zstd.1.4.7 [INFO] [stderr] Checking block-padding v0.1.5 [INFO] [stderr] Checking is-terminal v0.4.13 [INFO] [stderr] Checking humantime v2.1.0 [INFO] [stderr] Checking termcolor v1.4.1 [INFO] [stderr] Checking block-buffer v0.7.3 [INFO] [stderr] Checking digest v0.8.1 [INFO] [stderr] Checking dirs-sys v0.3.7 [INFO] [stderr] Compiling memoffset v0.5.6 [INFO] [stderr] Compiling jobserver v0.1.32 [INFO] [stderr] Checking env_logger v0.10.2 [INFO] [stderr] Checking opaque-debug v0.2.3 [INFO] [stderr] Checking fake-simd v0.1.2 [INFO] [stderr] Compiling wasmtime-environ v0.16.0 [INFO] [stderr] Checking wasmparser v0.51.4 [INFO] [stderr] Checking sha2 v0.8.2 [INFO] [stderr] Checking file-per-thread-logger v0.1.6 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Compiling cc v1.1.22 [INFO] [stderr] Checking thiserror v1.0.64 [INFO] [stderr] Checking directories v2.0.2 [INFO] [stderr] Checking errno v0.2.8 [INFO] [stderr] Checking more-asserts v0.2.2 [INFO] [stderr] Checking base64 v0.12.3 [INFO] [stderr] Checking backtrace v0.3.74 [INFO] [stderr] Checking region v2.2.0 [INFO] [stderr] Compiling zstd-sys v1.4.18+zstd.1.4.7 [INFO] [stderr] Compiling substrate-wasmtime-runtime v0.16.0-threadsafe.4 (/opt/rustwide/workdir) [INFO] [stderr] Checking serde v1.0.210 [INFO] [stderr] Checking cranelift-entity v0.63.0 [INFO] [stderr] Checking cranelift-bforest v0.63.0 [INFO] [stderr] Checking toml v0.5.11 [INFO] [stderr] Compiling cranelift-codegen-meta v0.63.0 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Compiling cranelift-codegen v0.63.0 [INFO] [stderr] Checking cranelift-frontend v0.63.0 [INFO] [stderr] Checking cranelift-wasm v0.63.0 [INFO] [stderr] Checking zstd v0.5.4+zstd.1.4.7 [INFO] [stdout] warning: unexpected `cfg` condition value: `clippy` [INFO] [stdout] --> src/lib.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | #![cfg_attr(feature = "clippy", plugin(clippy(conf_file = "../../clippy.toml")))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/lib.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | feature = "cargo-clippy", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/lib.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | feature = "cargo-clippy", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `clippy` [INFO] [stdout] --> src/lib.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | #![cfg_attr(feature = "clippy", plugin(clippy(conf_file = "../../clippy.toml")))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/lib.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | feature = "cargo-clippy", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/lib.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | feature = "cargo-clippy", [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `cargo-clippy` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated constant `region::Protection::ReadWrite`: Use Protection::READ_WRITE instead [INFO] [stdout] --> src/mmap.rs:185:75 [INFO] [stdout] | [INFO] [stdout] 185 | unsafe { region::protect(ptr.add(start), len, region::Protection::ReadWrite) } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated constant `region::Protection::ReadWrite`: Use Protection::READ_WRITE instead [INFO] [stdout] --> src/mmap.rs:185:75 [INFO] [stdout] | [INFO] [stdout] 185 | unsafe { region::protect(ptr.add(start), len, region::Protection::ReadWrite) } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `UnwindReason` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/traphandlers.rs:440:15 [INFO] [stdout] | [INFO] [stdout] 434 | self, [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 438 | let _reset = self.update_stack_limit(max_wasm_stack)?; [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 439 | let ret = tls::set(&self, || closure(&self)); [INFO] [stdout] 440 | match self.unwind.replace(UnwindReason::None) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `needs_signal_handlers` is never read [INFO] [stdout] --> src/memory.rs:58:16 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct MmapMemory { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 58 | pub(crate) needs_signal_handlers: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MmapMemory` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:65:22 [INFO] [stdout] | [INFO] [stdout] 65 | register(&mut PREV_SIGSEGV, libc::SIGSEGV); [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] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 65 | register(&raw mut PREV_SIGSEGV, libc::SIGSEGV); [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:68:22 [INFO] [stdout] | [INFO] [stdout] 68 | register(&mut PREV_SIGILL, libc::SIGILL); [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] 68 | register(&raw mut PREV_SIGILL, libc::SIGILL); [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:72:26 [INFO] [stdout] | [INFO] [stdout] 72 | register(&mut PREV_SIGFPE, libc::SIGFPE); [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] 72 | register(&raw mut PREV_SIGFPE, libc::SIGFPE); [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:78:26 [INFO] [stdout] | [INFO] [stdout] 78 | register(&mut PREV_SIGBUS, libc::SIGBUS); [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] 78 | register(&raw mut PREV_SIGBUS, libc::SIGBUS); [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:88:34 [INFO] [stdout] | [INFO] [stdout] 88 | libc::SIGSEGV => &PREV_SIGSEGV, [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] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 88 | libc::SIGSEGV => &raw const PREV_SIGSEGV, [INFO] [stdout] | ~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:89:33 [INFO] [stdout] | [INFO] [stdout] 89 | libc::SIGBUS => &PREV_SIGBUS, [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] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 89 | libc::SIGBUS => &raw const PREV_SIGBUS, [INFO] [stdout] | ~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:90:33 [INFO] [stdout] | [INFO] [stdout] 90 | libc::SIGFPE => &PREV_SIGFPE, [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] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 90 | libc::SIGFPE => &raw const PREV_SIGFPE, [INFO] [stdout] | ~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:91:33 [INFO] [stdout] | [INFO] [stdout] 91 | libc::SIGILL => &PREV_SIGILL, [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] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 91 | libc::SIGILL => &raw const PREV_SIGILL, [INFO] [stdout] | ~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error; 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `substrate-wasmtime-runtime` (lib test) due to 2 previous errors; 13 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: this value of type `UnwindReason` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/traphandlers.rs:440:15 [INFO] [stdout] | [INFO] [stdout] 434 | self, [INFO] [stdout] | ---- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 438 | let _reset = self.update_stack_limit(max_wasm_stack)?; [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 439 | let ret = tls::set(&self, || closure(&self)); [INFO] [stdout] 440 | match self.unwind.replace(UnwindReason::None) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `needs_signal_handlers` is never read [INFO] [stdout] --> src/memory.rs:58:16 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct MmapMemory { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 58 | pub(crate) needs_signal_handlers: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MmapMemory` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:65:22 [INFO] [stdout] | [INFO] [stdout] 65 | register(&mut PREV_SIGSEGV, libc::SIGSEGV); [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] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 65 | register(&raw mut PREV_SIGSEGV, libc::SIGSEGV); [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:68:22 [INFO] [stdout] | [INFO] [stdout] 68 | register(&mut PREV_SIGILL, libc::SIGILL); [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] 68 | register(&raw mut PREV_SIGILL, libc::SIGILL); [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:72:26 [INFO] [stdout] | [INFO] [stdout] 72 | register(&mut PREV_SIGFPE, libc::SIGFPE); [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] 72 | register(&raw mut PREV_SIGFPE, libc::SIGFPE); [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:78:26 [INFO] [stdout] | [INFO] [stdout] 78 | register(&mut PREV_SIGBUS, libc::SIGBUS); [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] 78 | register(&raw mut PREV_SIGBUS, libc::SIGBUS); [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:88:34 [INFO] [stdout] | [INFO] [stdout] 88 | libc::SIGSEGV => &PREV_SIGSEGV, [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] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 88 | libc::SIGSEGV => &raw const PREV_SIGSEGV, [INFO] [stdout] | ~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:89:33 [INFO] [stdout] | [INFO] [stdout] 89 | libc::SIGBUS => &PREV_SIGBUS, [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] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 89 | libc::SIGBUS => &raw const PREV_SIGBUS, [INFO] [stdout] | ~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:90:33 [INFO] [stdout] | [INFO] [stdout] 90 | libc::SIGFPE => &PREV_SIGFPE, [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] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 90 | libc::SIGFPE => &raw const PREV_SIGFPE, [INFO] [stdout] | ~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/traphandlers.rs:91:33 [INFO] [stdout] | [INFO] [stdout] 91 | libc::SIGILL => &PREV_SIGILL, [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] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 91 | libc::SIGILL => &raw const PREV_SIGILL, [INFO] [stdout] | ~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error; 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `substrate-wasmtime-runtime` (lib) due to 2 previous errors; 13 warnings emitted [INFO] running `Command { std: "docker" "inspect" "84de002eb0f1f6f17350e666510ff83af27cd508d3106a4ac174fff446b4e2d2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "84de002eb0f1f6f17350e666510ff83af27cd508d3106a4ac174fff446b4e2d2", kill_on_drop: false }` [INFO] [stdout] 84de002eb0f1f6f17350e666510ff83af27cd508d3106a4ac174fff446b4e2d2