[INFO] fetching crate lucet-runtime-internals 0.6.1... [INFO] testing lucet-runtime-internals-0.6.1 against beta-2025-10-28 for beta-1.92-2 [INFO] extracting crate lucet-runtime-internals 0.6.1 into /workspace/builds/worker-1-tc2/source [INFO] started tweaking crates.io crate lucet-runtime-internals 0.6.1 [INFO] finished tweaking crates.io crate lucet-runtime-internals 0.6.1 [INFO] tweaked toml for crates.io crate lucet-runtime-internals 0.6.1 written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate lucet-runtime-internals 0.6.1 on toolchain beta-2025-10-28 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 88 packages to latest compatible versions [INFO] [stderr] Adding bincode v1.3.3 (available: v2.0.1) [INFO] [stderr] Adding bitflags v1.3.2 (available: v2.10.0) [INFO] [stderr] Adding getrandom v0.1.3 (available: v0.1.16) [INFO] [stderr] Adding libloading v0.5.2 (available: v0.8.9) [INFO] [stderr] Adding memoffset v0.5.6 (available: v0.9.1) [INFO] [stderr] Adding nix v0.15.0 (available: v0.30.1) [INFO] [stderr] Adding num-derive v0.3.3 (available: v0.4.2) [INFO] [stderr] Adding raw-cpuid v6.1.0 (available: v11.6.0) [INFO] [stderr] Adding subtle v2.4.1 (available: v2.6.1) [INFO] [stderr] Adding thiserror v1.0.69 (available: v2.0.17) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] bcfcd2566f1c86913f015712ffd9fbbf80d9558f9f7e939288bd741897adf3c5 [INFO] running `Command { std: "docker" "start" "-a" "bcfcd2566f1c86913f015712ffd9fbbf80d9558f9f7e939288bd741897adf3c5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "bcfcd2566f1c86913f015712ffd9fbbf80d9558f9f7e939288bd741897adf3c5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bcfcd2566f1c86913f015712ffd9fbbf80d9558f9f7e939288bd741897adf3c5", kill_on_drop: false }` [INFO] [stdout] bcfcd2566f1c86913f015712ffd9fbbf80d9558f9f7e939288bd741897adf3c5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d3ad0540279536dfa48869af9f9ec5bee700dde43ebea711334031e6bbc83cc5 [INFO] running `Command { std: "docker" "start" "-a" "d3ad0540279536dfa48869af9f9ec5bee700dde43ebea711334031e6bbc83cc5", kill_on_drop: false }` [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling find-msvc-tools v0.1.4 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling libc v0.2.177 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling generic-array v0.14.9 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling failure_derive v0.1.8 [INFO] [stderr] Compiling subtle v2.4.1 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling opaque-debug v0.3.1 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling cc v1.2.44 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling memoffset v0.5.6 [INFO] [stderr] Compiling serde-big-array v0.2.0 [INFO] [stderr] Compiling anyhow v1.0.100 [INFO] [stderr] Compiling plain v0.2.3 [INFO] [stderr] Compiling flate2 v1.1.5 [INFO] [stderr] Compiling uuid v0.7.4 [INFO] [stderr] Compiling parity-wasm v0.40.3 [INFO] [stderr] Compiling nix v0.15.0 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling void v1.0.2 [INFO] [stderr] Compiling cranelift-entity v0.51.0 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling scroll v0.9.2 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Compiling digest v0.9.0 [INFO] [stderr] Compiling crypto-mac v0.10.1 [INFO] [stderr] Compiling cipher v0.2.5 [INFO] [stderr] Compiling block-buffer v0.9.0 [INFO] [stderr] Compiling sha2 v0.9.9 [INFO] [stderr] Compiling hmac v0.10.1 [INFO] [stderr] Compiling pbkdf2 v0.6.0 [INFO] [stderr] Compiling salsa20 v0.7.2 [INFO] [stderr] Compiling scrypt v0.5.0 [INFO] [stderr] Compiling raw-cpuid v6.1.0 [INFO] [stderr] Compiling libloading v0.5.2 [INFO] [stderr] Compiling lucet-runtime-internals v0.6.1 (/opt/rustwide/workdir) [INFO] [stderr] Compiling rpassword v5.0.1 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling getrandom v0.1.3 [INFO] [stderr] Compiling minisign v0.5.23 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling scroll_derive v0.9.5 [INFO] [stderr] Compiling derivative v1.0.4 [INFO] [stderr] Compiling goblin v0.0.24 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Compiling bincode v1.3.3 [INFO] [stderr] Compiling num-derive v0.3.3 [INFO] [stderr] Compiling lucet-runtime-macros v0.6.1 [INFO] [stderr] Compiling target-lexicon v0.8.1 [INFO] [stderr] Compiling failure v0.1.8 [INFO] [stderr] Compiling object v0.14.1 [INFO] [stderr] Compiling lucet-module v0.6.1 [INFO] [stdout] warning: use of deprecated type alias `std::panic::PanicInfo`: use `PanicHookInfo` instead [INFO] [stdout] --> src/instance/signals.rs:273:53 [INFO] [stdout] | [INFO] [stdout] 273 | saved_panic_hook: Option) + Sync + Send + 'static>>>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::panic::PanicInfo`: use `PanicHookInfo` instead [INFO] [stdout] --> src/instance/signals.rs:312:55 [INFO] [stdout] | [INFO] [stdout] 312 | fn setup_guest_panic_hook() -> Arc) + Sync + Send + 'static>> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[no_mangle]` attribute cannot be used on foreign functions [INFO] [stdout] --> src/instance/state.rs:171:5 [INFO] [stdout] | [INFO] [stdout] 171 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[no_mangle]` can be applied to functions, methods, and statics [INFO] [stdout] = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/c_api.rs:66:30 [INFO] [stdout] | [INFO] [stdout] 66 | #[derive(Clone, Copy, Debug, FromPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_lucet_error` [INFO] [stdout] 67 | pub enum lucet_error { [INFO] [stdout] | ----------- `lucet_error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/c_api.rs:333:34 [INFO] [stdout] | [INFO] [stdout] 333 | #[derive(Clone, Copy, Debug, FromPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_lucet_result_tag` [INFO] [stdout] 334 | pub enum lucet_result_tag { [INFO] [stdout] | ---------------- `lucet_result_tag` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/mod.rs:179:13 [INFO] [stdout] | [INFO] [stdout] 179 | Box::from_raw(self.internal.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 179 | let _ = Box::from_raw(self.internal.as_ptr()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique [INFO] [stdout] --> src/context/mod.rs:399:12 [INFO] [stdout] | [INFO] [stdout] 399 | if backstop_callback != Context::default_backstop_callback { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the address of the same function can vary between different codegen units [INFO] [stdout] = note: furthermore, different functions could have the same address after being merged together [INFO] [stdout] = note: for more information visit [INFO] [stdout] = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default [INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint [INFO] [stdout] | [INFO] [stdout] 399 - if backstop_callback != Context::default_backstop_callback { [INFO] [stdout] 399 + if !std::ptr::fn_addr_eq(backstop_callback, Context::default_backstop_callback as extern "C" fn(*mut Instance)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/instance/execution.rs:129:22 [INFO] [stdout] | [INFO] [stdout] 129 | let terminable = (*instance) [INFO] [stdout] | ^ -------- this raw pointer has type `*mut Instance` [INFO] [stdout] | ______________________| [INFO] [stdout] | | [INFO] [stdout] 130 | | .kill_state [INFO] [stdout] 131 | | .terminable [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] = note: references are created through calls to explicit `Deref(Mut)::deref(_mut)` implementations [INFO] [stdout] = note: `#[warn(dangerous_implicit_autorefs)]` on by default [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 129 ~ let terminable = (&(*instance) [INFO] [stdout] 130 ~ .kill_state) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:148:40 [INFO] [stdout] | [INFO] [stdout] 148 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 148 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("heap"))); [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 148 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap"))); [INFO] [stdout] 148 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("heap"))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:163:40 [INFO] [stdout] | [INFO] [stdout] 163 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap_mut"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 163 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("heap_mut"))); [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 163 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap_mut"))); [INFO] [stdout] 163 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("heap_mut"))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:210:36 [INFO] [stdout] | [INFO] [stdout] 210 | Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 210 | Some(Err(_)) => panic!("{:?}", TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 210 - Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stdout] 210 + Some(Err(_)) => std::panic::panic_any(TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:211:28 [INFO] [stdout] | [INFO] [stdout] 211 | None => panic!(TerminationDetails::CtxNotFound), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 211 | None => panic!("{:?}", TerminationDetails::CtxNotFound), [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 211 - None => panic!(TerminationDetails::CtxNotFound), [INFO] [stdout] 211 + None => std::panic::panic_any(TerminationDetails::CtxNotFound), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:225:36 [INFO] [stdout] | [INFO] [stdout] 225 | Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 225 | Some(Err(_)) => panic!("{:?}", TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 225 - Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stdout] 225 + Some(Err(_)) => std::panic::panic_any(TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:226:28 [INFO] [stdout] | [INFO] [stdout] 226 | None => panic!(TerminationDetails::CtxNotFound), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 226 | None => panic!("{:?}", TerminationDetails::CtxNotFound), [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 226 - None => panic!(TerminationDetails::CtxNotFound), [INFO] [stdout] 226 + None => std::panic::panic_any(TerminationDetails::CtxNotFound), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:254:40 [INFO] [stdout] | [INFO] [stdout] 254 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 254 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("globals"))); [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 254 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals"))); [INFO] [stdout] 254 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("globals"))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:266:40 [INFO] [stdout] | [INFO] [stdout] 266 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals_mut"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 266 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("globals_mut"))); [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 266 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals_mut"))); [INFO] [stdout] 266 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("globals_mut"))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:385:39 [INFO] [stdout] | [INFO] [stdout] 385 | .unwrap_or_else(|| panic!(TerminationDetails::YieldTypeMismatch)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 385 | .unwrap_or_else(|| panic!("{:?}", TerminationDetails::YieldTypeMismatch)) [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 385 - .unwrap_or_else(|| panic!(TerminationDetails::YieldTypeMismatch)) [INFO] [stdout] 385 + .unwrap_or_else(|| std::panic::panic_any(TerminationDetails::YieldTypeMismatch)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 23.03s [INFO] running `Command { std: "docker" "inspect" "d3ad0540279536dfa48869af9f9ec5bee700dde43ebea711334031e6bbc83cc5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d3ad0540279536dfa48869af9f9ec5bee700dde43ebea711334031e6bbc83cc5", kill_on_drop: false }` [INFO] [stdout] d3ad0540279536dfa48869af9f9ec5bee700dde43ebea711334031e6bbc83cc5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e494c4c6d355c5862d84964b6d6ec41b27d7b08d654b6e33b34e56eba303281b [INFO] running `Command { std: "docker" "start" "-a" "e494c4c6d355c5862d84964b6d6ec41b27d7b08d654b6e33b34e56eba303281b", kill_on_drop: false }` [INFO] [stdout] warning: use of deprecated type alias `std::panic::PanicInfo`: use `PanicHookInfo` instead [INFO] [stdout] --> src/instance/signals.rs:273:53 [INFO] [stdout] | [INFO] [stdout] 273 | saved_panic_hook: Option) + Sync + Send + 'static>>>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::panic::PanicInfo`: use `PanicHookInfo` instead [INFO] [stdout] --> src/instance/signals.rs:312:55 [INFO] [stdout] | [INFO] [stdout] 312 | fn setup_guest_panic_hook() -> Arc) + Sync + Send + 'static>> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[no_mangle]` attribute cannot be used on foreign functions [INFO] [stdout] --> src/instance/state.rs:171:5 [INFO] [stdout] | [INFO] [stdout] 171 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[no_mangle]` can be applied to functions, methods, and statics [INFO] [stdout] = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/c_api.rs:66:30 [INFO] [stdout] | [INFO] [stdout] 66 | #[derive(Clone, Copy, Debug, FromPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_lucet_error` [INFO] [stdout] 67 | pub enum lucet_error { [INFO] [stdout] | ----------- `lucet_error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/c_api.rs:333:34 [INFO] [stdout] | [INFO] [stdout] 333 | #[derive(Clone, Copy, Debug, FromPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_lucet_result_tag` [INFO] [stdout] 334 | pub enum lucet_result_tag { [INFO] [stdout] | ---------------- `lucet_result_tag` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/mod.rs:179:13 [INFO] [stdout] | [INFO] [stdout] 179 | Box::from_raw(self.internal.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 179 | let _ = Box::from_raw(self.internal.as_ptr()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique [INFO] [stdout] --> src/context/mod.rs:399:12 [INFO] [stdout] | [INFO] [stdout] 399 | if backstop_callback != Context::default_backstop_callback { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the address of the same function can vary between different codegen units [INFO] [stdout] = note: furthermore, different functions could have the same address after being merged together [INFO] [stdout] = note: for more information visit [INFO] [stdout] = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default [INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint [INFO] [stdout] | [INFO] [stdout] 399 - if backstop_callback != Context::default_backstop_callback { [INFO] [stdout] 399 + if !std::ptr::fn_addr_eq(backstop_callback, Context::default_backstop_callback as extern "C" fn(*mut Instance)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/instance/execution.rs:129:22 [INFO] [stdout] | [INFO] [stdout] 129 | let terminable = (*instance) [INFO] [stdout] | ^ -------- this raw pointer has type `*mut Instance` [INFO] [stdout] | ______________________| [INFO] [stdout] | | [INFO] [stdout] 130 | | .kill_state [INFO] [stdout] 131 | | .terminable [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] = note: references are created through calls to explicit `Deref(Mut)::deref(_mut)` implementations [INFO] [stdout] = note: `#[warn(dangerous_implicit_autorefs)]` on by default [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 129 ~ let terminable = (&(*instance) [INFO] [stdout] 130 ~ .kill_state) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:148:40 [INFO] [stdout] | [INFO] [stdout] 148 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 148 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("heap"))); [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 148 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap"))); [INFO] [stdout] 148 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("heap"))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling lucet-runtime-internals v0.6.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:163:40 [INFO] [stdout] | [INFO] [stdout] 163 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap_mut"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 163 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("heap_mut"))); [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 163 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap_mut"))); [INFO] [stdout] 163 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("heap_mut"))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:210:36 [INFO] [stdout] | [INFO] [stdout] 210 | Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 210 | Some(Err(_)) => panic!("{:?}", TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 210 - Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stdout] 210 + Some(Err(_)) => std::panic::panic_any(TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:211:28 [INFO] [stdout] | [INFO] [stdout] 211 | None => panic!(TerminationDetails::CtxNotFound), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 211 | None => panic!("{:?}", TerminationDetails::CtxNotFound), [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 211 - None => panic!(TerminationDetails::CtxNotFound), [INFO] [stdout] 211 + None => std::panic::panic_any(TerminationDetails::CtxNotFound), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:225:36 [INFO] [stdout] | [INFO] [stdout] 225 | Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 225 | Some(Err(_)) => panic!("{:?}", TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 225 - Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stdout] 225 + Some(Err(_)) => std::panic::panic_any(TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:226:28 [INFO] [stdout] | [INFO] [stdout] 226 | None => panic!(TerminationDetails::CtxNotFound), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 226 | None => panic!("{:?}", TerminationDetails::CtxNotFound), [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 226 - None => panic!(TerminationDetails::CtxNotFound), [INFO] [stdout] 226 + None => std::panic::panic_any(TerminationDetails::CtxNotFound), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:254:40 [INFO] [stdout] | [INFO] [stdout] 254 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 254 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("globals"))); [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 254 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals"))); [INFO] [stdout] 254 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("globals"))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:266:40 [INFO] [stdout] | [INFO] [stdout] 266 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals_mut"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 266 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("globals_mut"))); [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 266 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals_mut"))); [INFO] [stdout] 266 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("globals_mut"))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:385:39 [INFO] [stdout] | [INFO] [stdout] 385 | .unwrap_or_else(|| panic!(TerminationDetails::YieldTypeMismatch)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 385 | .unwrap_or_else(|| panic!("{:?}", TerminationDetails::YieldTypeMismatch)) [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 385 - .unwrap_or_else(|| panic!(TerminationDetails::YieldTypeMismatch)) [INFO] [stdout] 385 + .unwrap_or_else(|| std::panic::panic_any(TerminationDetails::YieldTypeMismatch)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/region/mmap.rs:486:10 [INFO] [stdout] | [INFO] [stdout] 486 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::panic::PanicInfo`: use `PanicHookInfo` instead [INFO] [stdout] --> src/instance/signals.rs:273:53 [INFO] [stdout] | [INFO] [stdout] 273 | saved_panic_hook: Option) + Sync + Send + 'static>>>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated type alias `std::panic::PanicInfo`: use `PanicHookInfo` instead [INFO] [stdout] --> src/instance/signals.rs:312:55 [INFO] [stdout] | [INFO] [stdout] 312 | fn setup_guest_panic_hook() -> Arc) + Sync + Send + 'static>> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[no_mangle]` attribute cannot be used on foreign functions [INFO] [stdout] --> src/instance/state.rs:171:5 [INFO] [stdout] | [INFO] [stdout] 171 | #[no_mangle] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[no_mangle]` can be applied to functions, methods, and statics [INFO] [stdout] = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/c_api.rs:66:30 [INFO] [stdout] | [INFO] [stdout] 66 | #[derive(Clone, Copy, Debug, FromPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_lucet_error` [INFO] [stdout] 67 | pub enum lucet_error { [INFO] [stdout] | ----------- `lucet_error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/c_api.rs:333:34 [INFO] [stdout] | [INFO] [stdout] 333 | #[derive(Clone, Copy, Debug, FromPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_lucet_result_tag` [INFO] [stdout] 334 | pub enum lucet_result_tag { [INFO] [stdout] | ---------------- `lucet_result_tag` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/mod.rs:179:13 [INFO] [stdout] | [INFO] [stdout] 179 | Box::from_raw(self.internal.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 179 | let _ = Box::from_raw(self.internal.as_ptr()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique [INFO] [stdout] --> src/context/mod.rs:399:12 [INFO] [stdout] | [INFO] [stdout] 399 | if backstop_callback != Context::default_backstop_callback { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the address of the same function can vary between different codegen units [INFO] [stdout] = note: furthermore, different functions could have the same address after being merged together [INFO] [stdout] = note: for more information visit [INFO] [stdout] = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default [INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint [INFO] [stdout] | [INFO] [stdout] 399 - if backstop_callback != Context::default_backstop_callback { [INFO] [stdout] 399 + if !std::ptr::fn_addr_eq(backstop_callback, Context::default_backstop_callback as extern "C" fn(*mut Instance)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/tests/c_child.rs:69:5 [INFO] [stdout] | [INFO] [stdout] 69 | / test_body!(stack, { [INFO] [stdout] 70 | | extern "C" { [INFO] [stdout] 71 | | fn arg_printing_child(); [INFO] [stdout] ... | [INFO] [stdout] 84 | | ); [INFO] [stdout] 85 | | }); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 69 | let _ = test_body!(stack, { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/tests/c_child.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 91 | / test_body!(stack, { [INFO] [stdout] 92 | | extern "C" { [INFO] [stdout] 93 | | fn arg_printing_child(); [INFO] [stdout] ... | [INFO] [stdout] 119 | | ); [INFO] [stdout] 120 | | }); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 91 | let _ = test_body!(stack, { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/tests/c_child.rs:125:5 [INFO] [stdout] | [INFO] [stdout] 125 | / test_body!(stack, { [INFO] [stdout] 126 | | extern "C" { [INFO] [stdout] 127 | | fn context_set_child(); [INFO] [stdout] ... | [INFO] [stdout] 135 | | ); [INFO] [stdout] 136 | | }); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 125 | let _ = test_body!(stack, { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/tests/c_child.rs:141:5 [INFO] [stdout] | [INFO] [stdout] 141 | / test_body!(stack, { [INFO] [stdout] 142 | | extern "C" { [INFO] [stdout] 143 | | fn context_set_child(); [INFO] [stdout] ... | [INFO] [stdout] 159 | | ); [INFO] [stdout] 160 | | }); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 141 | let _ = test_body!(stack, { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/tests/c_child.rs:165:5 [INFO] [stdout] | [INFO] [stdout] 165 | / test_body!(stack, { [INFO] [stdout] 166 | | extern "C" { [INFO] [stdout] 167 | | fn returning_child(); [INFO] [stdout] ... | [INFO] [stdout] 172 | | assert_eq!("hello from the child! returning...\n", &get_output()); [INFO] [stdout] 173 | | }); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 165 | let _ = test_body!(stack, { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/tests/c_child.rs:195:5 [INFO] [stdout] | [INFO] [stdout] 195 | child_n_args!(child_3_args, "the good three args boy", 10, 11, 12); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 195 | let _ = child_n_args!(child_3_args, "the good three args boy", 10, 11, 12); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/tests/c_child.rs:200:5 [INFO] [stdout] | [INFO] [stdout] 200 | child_n_args!(child_4_args, "the large four args boy", 20, 21, 22, 23); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 200 | let _ = child_n_args!(child_4_args, "the large four args boy", 20, 21, 22, 23); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/tests/c_child.rs:205:5 [INFO] [stdout] | [INFO] [stdout] 205 | child_n_args!(child_5_args, "the big five args son", 30, 31, 32, 33, 34); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 205 | let _ = child_n_args!(child_5_args, "the big five args son", 30, 31, 32, 33, 34); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/tests/c_child.rs:210:5 [INFO] [stdout] | [INFO] [stdout] 210 | / child_n_args!( [INFO] [stdout] 211 | | child_6_args, [INFO] [stdout] 212 | | "6 args, hahaha long boy", [INFO] [stdout] 213 | | 40, [INFO] [stdout] ... | [INFO] [stdout] 218 | | 45 [INFO] [stdout] 219 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 210 | let _ = child_n_args!( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/tests/c_child.rs:224:5 [INFO] [stdout] | [INFO] [stdout] 224 | / child_n_args!( [INFO] [stdout] 225 | | child_7_args, [INFO] [stdout] 226 | | "7 args, hahaha long boy", [INFO] [stdout] 227 | | 50, [INFO] [stdout] ... | [INFO] [stdout] 233 | | 56 [INFO] [stdout] 234 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 224 | let _ = child_n_args!( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/tests/c_child.rs:239:5 [INFO] [stdout] | [INFO] [stdout] 239 | / child_n_args!( [INFO] [stdout] 240 | | child_8_args, [INFO] [stdout] 241 | | "8 args, hahaha long boy", [INFO] [stdout] 242 | | 60, [INFO] [stdout] ... | [INFO] [stdout] 249 | | 67 [INFO] [stdout] 250 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 239 | let _ = child_n_args!( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/tests/c_child.rs:255:5 [INFO] [stdout] | [INFO] [stdout] 255 | / child_n_args!( [INFO] [stdout] 256 | | child_9_args, [INFO] [stdout] 257 | | "9 args, hahaha long boy", [INFO] [stdout] 258 | | 70, [INFO] [stdout] ... | [INFO] [stdout] 266 | | 78 [INFO] [stdout] 267 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 255 | let _ = child_n_args!( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/context/tests/c_child.rs:272:5 [INFO] [stdout] | [INFO] [stdout] 272 | / child_n_args!( [INFO] [stdout] 273 | | child_10_args, [INFO] [stdout] 274 | | "10 args, hahaha very long boy", [INFO] [stdout] 275 | | 80, [INFO] [stdout] ... | [INFO] [stdout] 284 | | 89 [INFO] [stdout] 285 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 272 | let _ = child_n_args!( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:77:28 [INFO] [stdout] | [INFO] [stdout] 77 | unsafe { Context::swap(CHILD.as_mut().unwrap(), PARENT.as_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] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:77:53 [INFO] [stdout] | [INFO] [stdout] 77 | unsafe { Context::swap(CHILD.as_mut().unwrap(), PARENT.as_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 mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:91:28 [INFO] [stdout] | [INFO] [stdout] 91 | unsafe { Context::swap(CHILD.as_mut().unwrap(), PARENT.as_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 mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:91:53 [INFO] [stdout] | [INFO] [stdout] 91 | unsafe { Context::swap(CHILD.as_mut().unwrap(), PARENT.as_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 mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 102 | init_and_swap!(stack, arg_printing_child, [arg0, arg1]); [INFO] [stdout] | ------------------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 102 | init_and_swap!(stack, arg_printing_child, [arg0, arg1]); [INFO] [stdout] | ------------------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 117 | init_and_swap!(stack, arg_printing_child, [arg0, arg1]); [INFO] [stdout] | ------------------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 117 | init_and_swap!(stack, arg_printing_child, [arg0, arg1]); [INFO] [stdout] | ------------------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:125:27 [INFO] [stdout] | [INFO] [stdout] 125 | Context::swap(PARENT.as_mut().unwrap(), CHILD.as_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 mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:125:53 [INFO] [stdout] | [INFO] [stdout] 125 | Context::swap(PARENT.as_mut().unwrap(), CHILD.as_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 [INFO] [stdout] --> src/context/tests/rust_child.rs:142:22 [INFO] [stdout] | [INFO] [stdout] 142 | Context::set(PARENT.as_ref().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 [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 149 | init_and_swap!(stack, context_set_child, []); [INFO] [stdout] | -------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 149 | init_and_swap!(stack, context_set_child, []); [INFO] [stdout] | -------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 158 | init_and_swap!(stack, context_set_child, []); [INFO] [stdout] | -------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 158 | init_and_swap!(stack, context_set_child, []); [INFO] [stdout] | -------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 162 | init_and_swap!(stack, context_set_child, []); [INFO] [stdout] | -------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 162 | init_and_swap!(stack, context_set_child, []); [INFO] [stdout] | -------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 181 | init_and_swap!(stack, returning_child, []); [INFO] [stdout] | ------------------------------------------ in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 181 | init_and_swap!(stack, returning_child, []); [INFO] [stdout] | ------------------------------------------ in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 194 | init_and_swap!(stack, add, [Val::U32(100), Val::U32(20)]); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 194 | init_and_swap!(stack, add, [Val::U32(100), Val::U32(20)]); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 213 | init_and_swap!(stack, add, [Val::U64(100), Val::U64(20)]); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 213 | init_and_swap!(stack, add, [Val::U64(100), Val::U64(20)]); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:216:24 [INFO] [stdout] | [INFO] [stdout] 216 | assert_eq!(CHILD.as_ref().unwrap().get_retval_gp(0), 120); [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 [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 228 | init_and_swap!(stack, add, [Val::F32(100.0), Val::F32(20.0)]); [INFO] [stdout] | ------------------------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 228 | init_and_swap!(stack, add, [Val::F32(100.0), Val::F32(20.0)]); [INFO] [stdout] | ------------------------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:231:23 [INFO] [stdout] | [INFO] [stdout] 231 | let reg = CHILD.as_ref().unwrap().get_retval_fp(); [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 [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 244 | init_and_swap!(stack, add, [Val::F64(100.0), Val::F64(20.0)]); [INFO] [stdout] | ------------------------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 244 | init_and_swap!(stack, add, [Val::F64(100.0), Val::F64(20.0)]); [INFO] [stdout] | ------------------------------------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:247:23 [INFO] [stdout] | [INFO] [stdout] 247 | let reg = CHILD.as_ref().unwrap().get_retval_fp(); [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 [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 277 | / child_n_args!(child_3_args, "the good three args boy", { [INFO] [stdout] 278 | | arg1: 10, [INFO] [stdout] 279 | | arg2: 11, [INFO] [stdout] 280 | | arg3: 12 [INFO] [stdout] 281 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 277 | / child_n_args!(child_3_args, "the good three args boy", { [INFO] [stdout] 278 | | arg1: 10, [INFO] [stdout] 279 | | arg2: 11, [INFO] [stdout] 280 | | arg3: 12 [INFO] [stdout] 281 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 283 | / child_n_args!(child_4_args, "the large four args boy", { [INFO] [stdout] 284 | | arg1: 20, [INFO] [stdout] 285 | | arg2: 21, [INFO] [stdout] 286 | | arg3: 22, [INFO] [stdout] 287 | | arg4: 23 [INFO] [stdout] 288 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 283 | / child_n_args!(child_4_args, "the large four args boy", { [INFO] [stdout] 284 | | arg1: 20, [INFO] [stdout] 285 | | arg2: 21, [INFO] [stdout] 286 | | arg3: 22, [INFO] [stdout] 287 | | arg4: 23 [INFO] [stdout] 288 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 290 | / child_n_args!(child_5_args, "the big five args son", { [INFO] [stdout] 291 | | arg1: 30, [INFO] [stdout] 292 | | arg2: 31, [INFO] [stdout] 293 | | arg3: 32, [INFO] [stdout] 294 | | arg4: 33, [INFO] [stdout] 295 | | arg5: 34 [INFO] [stdout] 296 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 290 | / child_n_args!(child_5_args, "the big five args son", { [INFO] [stdout] 291 | | arg1: 30, [INFO] [stdout] 292 | | arg2: 31, [INFO] [stdout] 293 | | arg3: 32, [INFO] [stdout] 294 | | arg4: 33, [INFO] [stdout] 295 | | arg5: 34 [INFO] [stdout] 296 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 298 | / child_n_args!(child_6_args, "6 args, hahaha long boy", { [INFO] [stdout] 299 | | arg1: 40, [INFO] [stdout] 300 | | arg2: 41, [INFO] [stdout] 301 | | arg3: 42, [INFO] [stdout] ... | [INFO] [stdout] 304 | | arg6: 45 [INFO] [stdout] 305 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 298 | / child_n_args!(child_6_args, "6 args, hahaha long boy", { [INFO] [stdout] 299 | | arg1: 40, [INFO] [stdout] 300 | | arg2: 41, [INFO] [stdout] 301 | | arg3: 42, [INFO] [stdout] ... | [INFO] [stdout] 304 | | arg6: 45 [INFO] [stdout] 305 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 307 | / child_n_args!(child_7_args, "7 args, hahaha long boy", { [INFO] [stdout] 308 | | arg1: 50, [INFO] [stdout] 309 | | arg2: 51, [INFO] [stdout] 310 | | arg3: 52, [INFO] [stdout] ... | [INFO] [stdout] 314 | | arg7: 56 [INFO] [stdout] 315 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 307 | / child_n_args!(child_7_args, "7 args, hahaha long boy", { [INFO] [stdout] 308 | | arg1: 50, [INFO] [stdout] 309 | | arg2: 51, [INFO] [stdout] 310 | | arg3: 52, [INFO] [stdout] ... | [INFO] [stdout] 314 | | arg7: 56 [INFO] [stdout] 315 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 317 | / child_n_args!(child_8_args, "8 args, hahaha long boy", { [INFO] [stdout] 318 | | arg1: 60, [INFO] [stdout] 319 | | arg2: 61, [INFO] [stdout] 320 | | arg3: 62, [INFO] [stdout] ... | [INFO] [stdout] 325 | | arg8: 67 [INFO] [stdout] 326 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 317 | / child_n_args!(child_8_args, "8 args, hahaha long boy", { [INFO] [stdout] 318 | | arg1: 60, [INFO] [stdout] 319 | | arg2: 61, [INFO] [stdout] 320 | | arg3: 62, [INFO] [stdout] ... | [INFO] [stdout] 325 | | arg8: 67 [INFO] [stdout] 326 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 328 | / child_n_args!(child_9_args, "9 args, hahaha long boy", { [INFO] [stdout] 329 | | arg1: 70, [INFO] [stdout] 330 | | arg2: 71, [INFO] [stdout] 331 | | arg3: 72, [INFO] [stdout] ... | [INFO] [stdout] 337 | | arg9: 78 [INFO] [stdout] 338 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 328 | / child_n_args!(child_9_args, "9 args, hahaha long boy", { [INFO] [stdout] 329 | | arg1: 70, [INFO] [stdout] 330 | | arg2: 71, [INFO] [stdout] 331 | | arg3: 72, [INFO] [stdout] ... | [INFO] [stdout] 337 | | arg9: 78 [INFO] [stdout] 338 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 340 | / child_n_args!(child_10_args, "10 args, hahaha very long boy", { [INFO] [stdout] 341 | | arg1: 80, [INFO] [stdout] 342 | | arg2: 81, [INFO] [stdout] 343 | | arg3: 82, [INFO] [stdout] ... | [INFO] [stdout] 350 | | arg10: 89 [INFO] [stdout] 351 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 340 | / child_n_args!(child_10_args, "10 args, hahaha very long boy", { [INFO] [stdout] 341 | | arg1: 80, [INFO] [stdout] 342 | | arg2: 81, [INFO] [stdout] 343 | | arg3: 82, [INFO] [stdout] ... | [INFO] [stdout] 350 | | arg10: 89 [INFO] [stdout] 351 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 377 | / child_n_fp_args!(child_6_fp_args, "6 args, hahaha long boy", { [INFO] [stdout] 378 | | arg1: 40.0, [INFO] [stdout] 379 | | arg2: 41.0, [INFO] [stdout] 380 | | arg3: 42.0, [INFO] [stdout] ... | [INFO] [stdout] 383 | | arg6: 45.0 [INFO] [stdout] 384 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 377 | / child_n_fp_args!(child_6_fp_args, "6 args, hahaha long boy", { [INFO] [stdout] 378 | | arg1: 40.0, [INFO] [stdout] 379 | | arg2: 41.0, [INFO] [stdout] 380 | | arg3: 42.0, [INFO] [stdout] ... | [INFO] [stdout] 383 | | arg6: 45.0 [INFO] [stdout] 384 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 386 | / child_n_fp_args!(child_7_fp_args, "7 args, hahaha long boy", { [INFO] [stdout] 387 | | arg1: 50.0, [INFO] [stdout] 388 | | arg2: 51.0, [INFO] [stdout] 389 | | arg3: 52.0, [INFO] [stdout] ... | [INFO] [stdout] 393 | | arg7: 56.0 [INFO] [stdout] 394 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 386 | / child_n_fp_args!(child_7_fp_args, "7 args, hahaha long boy", { [INFO] [stdout] 387 | | arg1: 50.0, [INFO] [stdout] 388 | | arg2: 51.0, [INFO] [stdout] 389 | | arg3: 52.0, [INFO] [stdout] ... | [INFO] [stdout] 393 | | arg7: 56.0 [INFO] [stdout] 394 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 396 | / child_n_fp_args!(child_8_fp_args, "8 args, hahaha long boy", { [INFO] [stdout] 397 | | arg1: 60.0, [INFO] [stdout] 398 | | arg2: 61.0, [INFO] [stdout] 399 | | arg3: 62.0, [INFO] [stdout] ... | [INFO] [stdout] 404 | | arg8: 67.0 [INFO] [stdout] 405 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 396 | / child_n_fp_args!(child_8_fp_args, "8 args, hahaha long boy", { [INFO] [stdout] 397 | | arg1: 60.0, [INFO] [stdout] 398 | | arg2: 61.0, [INFO] [stdout] 399 | | arg3: 62.0, [INFO] [stdout] ... | [INFO] [stdout] 404 | | arg8: 67.0 [INFO] [stdout] 405 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 407 | / child_n_fp_args!(child_9_fp_args, "9 args, hahaha long boy", { [INFO] [stdout] 408 | | arg1: 70.0, [INFO] [stdout] 409 | | arg2: 71.0, [INFO] [stdout] 410 | | arg3: 72.0, [INFO] [stdout] ... | [INFO] [stdout] 416 | | arg9: 78.0 [INFO] [stdout] 417 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 407 | / child_n_fp_args!(child_9_fp_args, "9 args, hahaha long boy", { [INFO] [stdout] 408 | | arg1: 70.0, [INFO] [stdout] 409 | | arg2: 71.0, [INFO] [stdout] 410 | | arg3: 72.0, [INFO] [stdout] ... | [INFO] [stdout] 416 | | arg9: 78.0 [INFO] [stdout] 417 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 419 | / child_n_fp_args!(child_10_fp_args, "10 args, hahaha very long boy", { [INFO] [stdout] 420 | | arg1: 80.0, [INFO] [stdout] 421 | | arg2: 81.0, [INFO] [stdout] 422 | | arg3: 82.0, [INFO] [stdout] ... | [INFO] [stdout] 429 | | arg10: 89.0 [INFO] [stdout] 430 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 419 | / child_n_fp_args!(child_10_fp_args, "10 args, hahaha very long boy", { [INFO] [stdout] 420 | | arg1: 80.0, [INFO] [stdout] 421 | | arg2: 81.0, [INFO] [stdout] 422 | | arg3: 82.0, [INFO] [stdout] ... | [INFO] [stdout] 429 | | arg10: 89.0 [INFO] [stdout] 430 | | }); [INFO] [stdout] | |__- in this macro invocation [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: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 449 | / init_and_swap!( [INFO] [stdout] 450 | | stack, [INFO] [stdout] 451 | | guest_fn, [INFO] [stdout] ... | [INFO] [stdout] 461 | | ); [INFO] [stdout] | |_________- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 449 | / init_and_swap!( [INFO] [stdout] 450 | | stack, [INFO] [stdout] 451 | | guest_fn, [INFO] [stdout] ... | [INFO] [stdout] 461 | | ); [INFO] [stdout] | |_________- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | PARENT.as_mut().unwrap(), [INFO] [stdout] | ^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 479 | init_and_swap!(stack, guest_fn, []); [INFO] [stdout] | ----------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/context/tests/rust_child.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | CHILD.as_mut().unwrap(), [INFO] [stdout] | ^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 479 | init_and_swap!(stack, guest_fn, []); [INFO] [stdout] | ----------------------------------- in this macro invocation [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: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/instance/execution.rs:129:22 [INFO] [stdout] | [INFO] [stdout] 129 | let terminable = (*instance) [INFO] [stdout] | ^ -------- this raw pointer has type `*mut Instance` [INFO] [stdout] | ______________________| [INFO] [stdout] | | [INFO] [stdout] 130 | | .kill_state [INFO] [stdout] 131 | | .terminable [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] = note: references are created through calls to explicit `Deref(Mut)::deref(_mut)` implementations [INFO] [stdout] = note: `#[warn(dangerous_implicit_autorefs)]` on by default [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 129 ~ let terminable = (&(*instance) [INFO] [stdout] 130 ~ .kill_state) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:148:40 [INFO] [stdout] | [INFO] [stdout] 148 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 148 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("heap"))); [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 148 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap"))); [INFO] [stdout] 148 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("heap"))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:163:40 [INFO] [stdout] | [INFO] [stdout] 163 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap_mut"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 163 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("heap_mut"))); [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 163 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap_mut"))); [INFO] [stdout] 163 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("heap_mut"))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:210:36 [INFO] [stdout] | [INFO] [stdout] 210 | Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 210 | Some(Err(_)) => panic!("{:?}", TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 210 - Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stdout] 210 + Some(Err(_)) => std::panic::panic_any(TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:211:28 [INFO] [stdout] | [INFO] [stdout] 211 | None => panic!(TerminationDetails::CtxNotFound), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 211 | None => panic!("{:?}", TerminationDetails::CtxNotFound), [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 211 - None => panic!(TerminationDetails::CtxNotFound), [INFO] [stdout] 211 + None => std::panic::panic_any(TerminationDetails::CtxNotFound), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:225:36 [INFO] [stdout] | [INFO] [stdout] 225 | Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 225 | Some(Err(_)) => panic!("{:?}", TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 225 - Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stdout] 225 + Some(Err(_)) => std::panic::panic_any(TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:226:28 [INFO] [stdout] | [INFO] [stdout] 226 | None => panic!(TerminationDetails::CtxNotFound), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 226 | None => panic!("{:?}", TerminationDetails::CtxNotFound), [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 226 - None => panic!(TerminationDetails::CtxNotFound), [INFO] [stdout] 226 + None => std::panic::panic_any(TerminationDetails::CtxNotFound), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:254:40 [INFO] [stdout] | [INFO] [stdout] 254 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 254 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("globals"))); [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 254 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals"))); [INFO] [stdout] 254 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("globals"))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:266:40 [INFO] [stdout] | [INFO] [stdout] 266 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals_mut"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 266 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("globals_mut"))); [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 266 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals_mut"))); [INFO] [stdout] 266 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("globals_mut"))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/vmctx.rs:385:39 [INFO] [stdout] | [INFO] [stdout] 385 | .unwrap_or_else(|| panic!(TerminationDetails::YieldTypeMismatch)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stdout] | [INFO] [stdout] 385 | .unwrap_or_else(|| panic!("{:?}", TerminationDetails::YieldTypeMismatch)) [INFO] [stdout] | +++++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 385 - .unwrap_or_else(|| panic!(TerminationDetails::YieldTypeMismatch)) [INFO] [stdout] 385 + .unwrap_or_else(|| std::panic::panic_any(TerminationDetails::YieldTypeMismatch)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2.13s [INFO] running `Command { std: "docker" "inspect" "e494c4c6d355c5862d84964b6d6ec41b27d7b08d654b6e33b34e56eba303281b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e494c4c6d355c5862d84964b6d6ec41b27d7b08d654b6e33b34e56eba303281b", kill_on_drop: false }` [INFO] [stdout] e494c4c6d355c5862d84964b6d6ec41b27d7b08d654b6e33b34e56eba303281b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] f7f54c0ce4ddeee26e003c2456393454a6cba2bb55afa854b3883fec6416815f [INFO] running `Command { std: "docker" "start" "-a" "f7f54c0ce4ddeee26e003c2456393454a6cba2bb55afa854b3883fec6416815f", kill_on_drop: false }` [INFO] [stderr] warning: use of deprecated type alias `std::panic::PanicInfo`: use `PanicHookInfo` instead [INFO] [stderr] --> src/instance/signals.rs:273:53 [INFO] [stderr] | [INFO] [stderr] 273 | saved_panic_hook: Option) + Sync + Send + 'static>>>, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated type alias `std::panic::PanicInfo`: use `PanicHookInfo` instead [INFO] [stderr] --> src/instance/signals.rs:312:55 [INFO] [stderr] | [INFO] [stderr] 312 | fn setup_guest_panic_hook() -> Arc) + Sync + Send + 'static>> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[no_mangle]` attribute cannot be used on foreign functions [INFO] [stderr] --> src/instance/state.rs:171:5 [INFO] [stderr] | [INFO] [stderr] 171 | #[no_mangle] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = help: `#[no_mangle]` can be applied to functions, methods, and statics [INFO] [stderr] = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/c_api.rs:66:30 [INFO] [stderr] | [INFO] [stderr] 66 | #[derive(Clone, Copy, Debug, FromPrimitive)] [INFO] [stderr] | ^------------ [INFO] [stderr] | | [INFO] [stderr] | `FromPrimitive` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_lucet_error` [INFO] [stderr] 67 | pub enum lucet_error { [INFO] [stderr] | ----------- `lucet_error` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/c_api.rs:333:34 [INFO] [stderr] | [INFO] [stderr] 333 | #[derive(Clone, Copy, Debug, FromPrimitive)] [INFO] [stderr] | ^------------ [INFO] [stderr] | | [INFO] [stderr] | `FromPrimitive` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_lucet_result_tag` [INFO] [stderr] 334 | pub enum lucet_result_tag { [INFO] [stderr] | ---------------- `lucet_result_tag` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/context/mod.rs:179:13 [INFO] [stderr] | [INFO] [stderr] 179 | Box::from_raw(self.internal.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 179 | let _ = Box::from_raw(self.internal.as_ptr()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique [INFO] [stderr] --> src/context/mod.rs:399:12 [INFO] [stderr] | [INFO] [stderr] 399 | if backstop_callback != Context::default_backstop_callback { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: the address of the same function can vary between different codegen units [INFO] [stderr] = note: furthermore, different functions could have the same address after being merged together [INFO] [stderr] = note: for more information visit [INFO] [stderr] = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default [INFO] [stderr] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint [INFO] [stderr] | [INFO] [stderr] 399 - if backstop_callback != Context::default_backstop_callback { [INFO] [stderr] 399 + if !std::ptr::fn_addr_eq(backstop_callback, Context::default_backstop_callback as extern "C" fn(*mut Instance)) { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stderr] --> src/instance/execution.rs:129:22 [INFO] [stderr] | [INFO] [stderr] 129 | let terminable = (*instance) [INFO] [stderr] | ^ -------- this raw pointer has type `*mut Instance` [INFO] [stderr] | ______________________| [INFO] [stderr] | | [INFO] [stderr] 130 | | .kill_state [INFO] [stderr] 131 | | .terminable [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stderr] = note: references are created through calls to explicit `Deref(Mut)::deref(_mut)` implementations [INFO] [stderr] = note: `#[warn(dangerous_implicit_autorefs)]` on by default [INFO] [stderr] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stderr] | [INFO] [stderr] 129 ~ let terminable = (&(*instance) [INFO] [stderr] 130 ~ .kill_state) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/vmctx.rs:148:40 [INFO] [stderr] | [INFO] [stderr] 148 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap"))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stderr] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stderr] | [INFO] [stderr] 148 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("heap"))); [INFO] [stderr] | +++++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 148 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap"))); [INFO] [stderr] 148 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("heap"))); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/vmctx.rs:163:40 [INFO] [stderr] | [INFO] [stderr] 163 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap_mut"))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stderr] | [INFO] [stderr] 163 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("heap_mut"))); [INFO] [stderr] | +++++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 163 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("heap_mut"))); [INFO] [stderr] 163 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("heap_mut"))); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/vmctx.rs:210:36 [INFO] [stderr] | [INFO] [stderr] 210 | Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stderr] | [INFO] [stderr] 210 | Some(Err(_)) => panic!("{:?}", TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stderr] | +++++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 210 - Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stderr] 210 + Some(Err(_)) => std::panic::panic_any(TerminationDetails::BorrowError("get_embed_ctx")), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/vmctx.rs:211:28 [INFO] [stderr] | [INFO] [stderr] 211 | None => panic!(TerminationDetails::CtxNotFound), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stderr] | [INFO] [stderr] 211 | None => panic!("{:?}", TerminationDetails::CtxNotFound), [INFO] [stderr] | +++++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 211 - None => panic!(TerminationDetails::CtxNotFound), [INFO] [stderr] 211 + None => std::panic::panic_any(TerminationDetails::CtxNotFound), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/vmctx.rs:225:36 [INFO] [stderr] | [INFO] [stderr] 225 | Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stderr] | [INFO] [stderr] 225 | Some(Err(_)) => panic!("{:?}", TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stderr] | +++++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 225 - Some(Err(_)) => panic!(TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stderr] 225 + Some(Err(_)) => std::panic::panic_any(TerminationDetails::BorrowError("get_embed_ctx_mut")), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/vmctx.rs:226:28 [INFO] [stderr] | [INFO] [stderr] 226 | None => panic!(TerminationDetails::CtxNotFound), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stderr] | [INFO] [stderr] 226 | None => panic!("{:?}", TerminationDetails::CtxNotFound), [INFO] [stderr] | +++++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 226 - None => panic!(TerminationDetails::CtxNotFound), [INFO] [stderr] 226 + None => std::panic::panic_any(TerminationDetails::CtxNotFound), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/vmctx.rs:254:40 [INFO] [stderr] | [INFO] [stderr] 254 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals"))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stderr] | [INFO] [stderr] 254 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("globals"))); [INFO] [stderr] | +++++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 254 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals"))); [INFO] [stderr] 254 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("globals"))); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/vmctx.rs:266:40 [INFO] [stderr] | [INFO] [stderr] 266 | .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals_mut"))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stderr] | [INFO] [stderr] 266 | .unwrap_or_else(|_| panic!("{:?}", TerminationDetails::BorrowError("globals_mut"))); [INFO] [stderr] | +++++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 266 - .unwrap_or_else(|_| panic!(TerminationDetails::BorrowError("globals_mut"))); [INFO] [stderr] 266 + .unwrap_or_else(|_| std::panic::panic_any(TerminationDetails::BorrowError("globals_mut"))); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/vmctx.rs:385:39 [INFO] [stderr] | [INFO] [stderr] 385 | .unwrap_or_else(|| panic!(TerminationDetails::YieldTypeMismatch)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{:?}" format string to use the `Debug` implementation of `TerminationDetails` [INFO] [stderr] | [INFO] [stderr] 385 | .unwrap_or_else(|| panic!("{:?}", TerminationDetails::YieldTypeMismatch)) [INFO] [stderr] | +++++++ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 385 - .unwrap_or_else(|| panic!(TerminationDetails::YieldTypeMismatch)) [INFO] [stderr] 385 + .unwrap_or_else(|| std::panic::panic_any(TerminationDetails::YieldTypeMismatch)) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> src/region/mmap.rs:486:10 [INFO] [stderr] | [INFO] [stderr] 486 | }; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/context/tests/c_child.rs:69:5 [INFO] [stderr] | [INFO] [stderr] 69 | / test_body!(stack, { [INFO] [stderr] 70 | | extern "C" { [INFO] [stderr] 71 | | fn arg_printing_child(); [INFO] [stderr] ... | [INFO] [stderr] 84 | | ); [INFO] [stderr] 85 | | }); [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 69 | let _ = test_body!(stack, { [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/context/tests/c_child.rs:91:5 [INFO] [stderr] | [INFO] [stderr] 91 | / test_body!(stack, { [INFO] [stderr] 92 | | extern "C" { [INFO] [stderr] 93 | | fn arg_printing_child(); [INFO] [stderr] ... | [INFO] [stderr] 119 | | ); [INFO] [stderr] 120 | | }); [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 91 | let _ = test_body!(stack, { [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/context/tests/c_child.rs:125:5 [INFO] [stderr] | [INFO] [stderr] 125 | / test_body!(stack, { [INFO] [stderr] 126 | | extern "C" { [INFO] [stderr] 127 | | fn context_set_child(); [INFO] [stderr] ... | [INFO] [stderr] 135 | | ); [INFO] [stderr] 136 | | }); [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 125 | let _ = test_body!(stack, { [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/context/tests/c_child.rs:141:5 [INFO] [stderr] | [INFO] [stderr] 141 | / test_body!(stack, { [INFO] [stderr] 142 | | extern "C" { [INFO] [stderr] 143 | | fn context_set_child(); [INFO] [stderr] ... | [INFO] [stderr] 159 | | ); [INFO] [stderr] 160 | | }); [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 141 | let _ = test_body!(stack, { [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/context/tests/c_child.rs:165:5 [INFO] [stderr] | [INFO] [stderr] 165 | / test_body!(stack, { [INFO] [stderr] 166 | | extern "C" { [INFO] [stderr] 167 | | fn returning_child(); [INFO] [stderr] ... | [INFO] [stderr] 172 | | assert_eq!("hello from the child! returning...\n", &get_output()); [INFO] [stderr] 173 | | }); [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 165 | let _ = test_body!(stack, { [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/context/tests/c_child.rs:195:5 [INFO] [stderr] | [INFO] [stderr] 195 | child_n_args!(child_3_args, "the good three args boy", 10, 11, 12); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 195 | let _ = child_n_args!(child_3_args, "the good three args boy", 10, 11, 12); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/context/tests/c_child.rs:200:5 [INFO] [stderr] | [INFO] [stderr] 200 | child_n_args!(child_4_args, "the large four args boy", 20, 21, 22, 23); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 200 | let _ = child_n_args!(child_4_args, "the large four args boy", 20, 21, 22, 23); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/context/tests/c_child.rs:205:5 [INFO] [stderr] | [INFO] [stderr] 205 | child_n_args!(child_5_args, "the big five args son", 30, 31, 32, 33, 34); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 205 | let _ = child_n_args!(child_5_args, "the big five args son", 30, 31, 32, 33, 34); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/context/tests/c_child.rs:210:5 [INFO] [stderr] | [INFO] [stderr] 210 | / child_n_args!( [INFO] [stderr] 211 | | child_6_args, [INFO] [stderr] 212 | | "6 args, hahaha long boy", [INFO] [stderr] 213 | | 40, [INFO] [stderr] ... | [INFO] [stderr] 218 | | 45 [INFO] [stderr] 219 | | ); [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 210 | let _ = child_n_args!( [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/context/tests/c_child.rs:224:5 [INFO] [stderr] | [INFO] [stderr] 224 | / child_n_args!( [INFO] [stderr] 225 | | child_7_args, [INFO] [stderr] 226 | | "7 args, hahaha long boy", [INFO] [stderr] 227 | | 50, [INFO] [stderr] ... | [INFO] [stderr] 233 | | 56 [INFO] [stderr] 234 | | ); [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 224 | let _ = child_n_args!( [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/context/tests/c_child.rs:239:5 [INFO] [stderr] | [INFO] [stderr] 239 | / child_n_args!( [INFO] [stderr] 240 | | child_8_args, [INFO] [stderr] 241 | | "8 args, hahaha long boy", [INFO] [stderr] 242 | | 60, [INFO] [stderr] ... | [INFO] [stderr] 249 | | 67 [INFO] [stderr] 250 | | ); [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 239 | let _ = child_n_args!( [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/context/tests/c_child.rs:255:5 [INFO] [stderr] | [INFO] [stderr] 255 | / child_n_args!( [INFO] [stderr] 256 | | child_9_args, [INFO] [stderr] 257 | | "9 args, hahaha long boy", [INFO] [stderr] 258 | | 70, [INFO] [stderr] ... | [INFO] [stderr] 266 | | 78 [INFO] [stderr] 267 | | ); [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 255 | let _ = child_n_args!( [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/context/tests/c_child.rs:272:5 [INFO] [stderr] | [INFO] [stderr] 272 | / child_n_args!( [INFO] [stderr] 273 | | child_10_args, [INFO] [stderr] 274 | | "10 args, hahaha very long boy", [INFO] [stderr] 275 | | 80, [INFO] [stderr] ... | [INFO] [stderr] 284 | | 89 [INFO] [stderr] 285 | | ); [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 272 | let _ = child_n_args!( [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:77:28 [INFO] [stderr] | [INFO] [stderr] 77 | unsafe { Context::swap(CHILD.as_mut().unwrap(), PARENT.as_mut().unwrap()) }; [INFO] [stderr] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:77:53 [INFO] [stderr] | [INFO] [stderr] 77 | unsafe { Context::swap(CHILD.as_mut().unwrap(), PARENT.as_mut().unwrap()) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:91:28 [INFO] [stderr] | [INFO] [stderr] 91 | unsafe { Context::swap(CHILD.as_mut().unwrap(), PARENT.as_mut().unwrap()) }; [INFO] [stderr] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:91:53 [INFO] [stderr] | [INFO] [stderr] 91 | unsafe { Context::swap(CHILD.as_mut().unwrap(), PARENT.as_mut().unwrap()) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 102 | init_and_swap!(stack, arg_printing_child, [arg0, arg1]); [INFO] [stderr] | ------------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 102 | init_and_swap!(stack, arg_printing_child, [arg0, arg1]); [INFO] [stderr] | ------------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 117 | init_and_swap!(stack, arg_printing_child, [arg0, arg1]); [INFO] [stderr] | ------------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 117 | init_and_swap!(stack, arg_printing_child, [arg0, arg1]); [INFO] [stderr] | ------------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:125:27 [INFO] [stderr] | [INFO] [stderr] 125 | Context::swap(PARENT.as_mut().unwrap(), CHILD.as_mut().unwrap()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:125:53 [INFO] [stderr] | [INFO] [stderr] 125 | Context::swap(PARENT.as_mut().unwrap(), CHILD.as_mut().unwrap()); [INFO] [stderr] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:142:22 [INFO] [stderr] | [INFO] [stderr] 142 | Context::set(PARENT.as_ref().unwrap()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 149 | init_and_swap!(stack, context_set_child, []); [INFO] [stderr] | -------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 149 | init_and_swap!(stack, context_set_child, []); [INFO] [stderr] | -------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 158 | init_and_swap!(stack, context_set_child, []); [INFO] [stderr] | -------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 158 | init_and_swap!(stack, context_set_child, []); [INFO] [stderr] | -------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 162 | init_and_swap!(stack, context_set_child, []); [INFO] [stderr] | -------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 162 | init_and_swap!(stack, context_set_child, []); [INFO] [stderr] | -------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 181 | init_and_swap!(stack, returning_child, []); [INFO] [stderr] | ------------------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 181 | init_and_swap!(stack, returning_child, []); [INFO] [stderr] | ------------------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 194 | init_and_swap!(stack, add, [Val::U32(100), Val::U32(20)]); [INFO] [stderr] | --------------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 194 | init_and_swap!(stack, add, [Val::U32(100), Val::U32(20)]); [INFO] [stderr] | --------------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 213 | init_and_swap!(stack, add, [Val::U64(100), Val::U64(20)]); [INFO] [stderr] | --------------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 213 | init_and_swap!(stack, add, [Val::U64(100), Val::U64(20)]); [INFO] [stderr] | --------------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:216:24 [INFO] [stderr] | [INFO] [stderr] 216 | assert_eq!(CHILD.as_ref().unwrap().get_retval_gp(0), 120); [INFO] [stderr] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 228 | init_and_swap!(stack, add, [Val::F32(100.0), Val::F32(20.0)]); [INFO] [stderr] | ------------------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 228 | init_and_swap!(stack, add, [Val::F32(100.0), Val::F32(20.0)]); [INFO] [stderr] | ------------------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:231:23 [INFO] [stderr] | [INFO] [stderr] 231 | let reg = CHILD.as_ref().unwrap().get_retval_fp(); [INFO] [stderr] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 244 | init_and_swap!(stack, add, [Val::F64(100.0), Val::F64(20.0)]); [INFO] [stderr] | ------------------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 244 | init_and_swap!(stack, add, [Val::F64(100.0), Val::F64(20.0)]); [INFO] [stderr] | ------------------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:247:23 [INFO] [stderr] | [INFO] [stderr] 247 | let reg = CHILD.as_ref().unwrap().get_retval_fp(); [INFO] [stderr] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 277 | / child_n_args!(child_3_args, "the good three args boy", { [INFO] [stderr] 278 | | arg1: 10, [INFO] [stderr] 279 | | arg2: 11, [INFO] [stderr] 280 | | arg3: 12 [INFO] [stderr] 281 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 277 | / child_n_args!(child_3_args, "the good three args boy", { [INFO] [stderr] 278 | | arg1: 10, [INFO] [stderr] 279 | | arg2: 11, [INFO] [stderr] 280 | | arg3: 12 [INFO] [stderr] 281 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 283 | / child_n_args!(child_4_args, "the large four args boy", { [INFO] [stderr] 284 | | arg1: 20, [INFO] [stderr] 285 | | arg2: 21, [INFO] [stderr] 286 | | arg3: 22, [INFO] [stderr] 287 | | arg4: 23 [INFO] [stderr] 288 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 283 | / child_n_args!(child_4_args, "the large four args boy", { [INFO] [stderr] 284 | | arg1: 20, [INFO] [stderr] 285 | | arg2: 21, [INFO] [stderr] 286 | | arg3: 22, [INFO] [stderr] 287 | | arg4: 23 [INFO] [stderr] 288 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 290 | / child_n_args!(child_5_args, "the big five args son", { [INFO] [stderr] 291 | | arg1: 30, [INFO] [stderr] 292 | | arg2: 31, [INFO] [stderr] 293 | | arg3: 32, [INFO] [stderr] 294 | | arg4: 33, [INFO] [stderr] 295 | | arg5: 34 [INFO] [stderr] 296 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 290 | / child_n_args!(child_5_args, "the big five args son", { [INFO] [stderr] 291 | | arg1: 30, [INFO] [stderr] 292 | | arg2: 31, [INFO] [stderr] 293 | | arg3: 32, [INFO] [stderr] 294 | | arg4: 33, [INFO] [stderr] 295 | | arg5: 34 [INFO] [stderr] 296 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 298 | / child_n_args!(child_6_args, "6 args, hahaha long boy", { [INFO] [stderr] 299 | | arg1: 40, [INFO] [stderr] 300 | | arg2: 41, [INFO] [stderr] 301 | | arg3: 42, [INFO] [stderr] ... | [INFO] [stderr] 304 | | arg6: 45 [INFO] [stderr] 305 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 298 | / child_n_args!(child_6_args, "6 args, hahaha long boy", { [INFO] [stderr] 299 | | arg1: 40, [INFO] [stderr] 300 | | arg2: 41, [INFO] [stderr] 301 | | arg3: 42, [INFO] [stderr] ... | [INFO] [stderr] 304 | | arg6: 45 [INFO] [stderr] 305 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 307 | / child_n_args!(child_7_args, "7 args, hahaha long boy", { [INFO] [stderr] 308 | | arg1: 50, [INFO] [stderr] 309 | | arg2: 51, [INFO] [stderr] 310 | | arg3: 52, [INFO] [stderr] ... | [INFO] [stderr] 314 | | arg7: 56 [INFO] [stderr] 315 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 307 | / child_n_args!(child_7_args, "7 args, hahaha long boy", { [INFO] [stderr] 308 | | arg1: 50, [INFO] [stderr] 309 | | arg2: 51, [INFO] [stderr] 310 | | arg3: 52, [INFO] [stderr] ... | [INFO] [stderr] 314 | | arg7: 56 [INFO] [stderr] 315 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 317 | / child_n_args!(child_8_args, "8 args, hahaha long boy", { [INFO] [stderr] 318 | | arg1: 60, [INFO] [stderr] 319 | | arg2: 61, [INFO] [stderr] 320 | | arg3: 62, [INFO] [stderr] ... | [INFO] [stderr] 325 | | arg8: 67 [INFO] [stderr] 326 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 317 | / child_n_args!(child_8_args, "8 args, hahaha long boy", { [INFO] [stderr] 318 | | arg1: 60, [INFO] [stderr] 319 | | arg2: 61, [INFO] [stderr] 320 | | arg3: 62, [INFO] [stderr] ... | [INFO] [stderr] 325 | | arg8: 67 [INFO] [stderr] 326 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 328 | / child_n_args!(child_9_args, "9 args, hahaha long boy", { [INFO] [stderr] 329 | | arg1: 70, [INFO] [stderr] 330 | | arg2: 71, [INFO] [stderr] 331 | | arg3: 72, [INFO] [stderr] ... | [INFO] [stderr] 337 | | arg9: 78 [INFO] [stderr] 338 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 328 | / child_n_args!(child_9_args, "9 args, hahaha long boy", { [INFO] [stderr] 329 | | arg1: 70, [INFO] [stderr] 330 | | arg2: 71, [INFO] [stderr] 331 | | arg3: 72, [INFO] [stderr] ... | [INFO] [stderr] 337 | | arg9: 78 [INFO] [stderr] 338 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 340 | / child_n_args!(child_10_args, "10 args, hahaha very long boy", { [INFO] [stderr] 341 | | arg1: 80, [INFO] [stderr] 342 | | arg2: 81, [INFO] [stderr] 343 | | arg3: 82, [INFO] [stderr] ... | [INFO] [stderr] 350 | | arg10: 89 [INFO] [stderr] 351 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 340 | / child_n_args!(child_10_args, "10 args, hahaha very long boy", { [INFO] [stderr] 341 | | arg1: 80, [INFO] [stderr] 342 | | arg2: 81, [INFO] [stderr] 343 | | arg3: 82, [INFO] [stderr] ... | [INFO] [stderr] 350 | | arg10: 89 [INFO] [stderr] 351 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 377 | / child_n_fp_args!(child_6_fp_args, "6 args, hahaha long boy", { [INFO] [stderr] 378 | | arg1: 40.0, [INFO] [stderr] 379 | | arg2: 41.0, [INFO] [stderr] 380 | | arg3: 42.0, [INFO] [stderr] ... | [INFO] [stderr] 383 | | arg6: 45.0 [INFO] [stderr] 384 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 377 | / child_n_fp_args!(child_6_fp_args, "6 args, hahaha long boy", { [INFO] [stderr] 378 | | arg1: 40.0, [INFO] [stderr] 379 | | arg2: 41.0, [INFO] [stderr] 380 | | arg3: 42.0, [INFO] [stderr] ... | [INFO] [stderr] 383 | | arg6: 45.0 [INFO] [stderr] 384 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 386 | / child_n_fp_args!(child_7_fp_args, "7 args, hahaha long boy", { [INFO] [stderr] 387 | | arg1: 50.0, [INFO] [stderr] 388 | | arg2: 51.0, [INFO] [stderr] 389 | | arg3: 52.0, [INFO] [stderr] ... | [INFO] [stderr] 393 | | arg7: 56.0 [INFO] [stderr] 394 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 386 | / child_n_fp_args!(child_7_fp_args, "7 args, hahaha long boy", { [INFO] [stderr] 387 | | arg1: 50.0, [INFO] [stderr] 388 | | arg2: 51.0, [INFO] [stderr] 389 | | arg3: 52.0, [INFO] [stderr] ... | [INFO] [stderr] 393 | | arg7: 56.0 [INFO] [stderr] 394 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 396 | / child_n_fp_args!(child_8_fp_args, "8 args, hahaha long boy", { [INFO] [stderr] 397 | | arg1: 60.0, [INFO] [stderr] 398 | | arg2: 61.0, [INFO] [stderr] 399 | | arg3: 62.0, [INFO] [stderr] ... | [INFO] [stderr] 404 | | arg8: 67.0 [INFO] [stderr] 405 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 396 | / child_n_fp_args!(child_8_fp_args, "8 args, hahaha long boy", { [INFO] [stderr] 397 | | arg1: 60.0, [INFO] [stderr] 398 | | arg2: 61.0, [INFO] [stderr] 399 | | arg3: 62.0, [INFO] [stderr] ... | [INFO] [stderr] 404 | | arg8: 67.0 [INFO] [stderr] 405 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 407 | / child_n_fp_args!(child_9_fp_args, "9 args, hahaha long boy", { [INFO] [stderr] 408 | | arg1: 70.0, [INFO] [stderr] 409 | | arg2: 71.0, [INFO] [stderr] 410 | | arg3: 72.0, [INFO] [stderr] ... | [INFO] [stderr] 416 | | arg9: 78.0 [INFO] [stderr] 417 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 407 | / child_n_fp_args!(child_9_fp_args, "9 args, hahaha long boy", { [INFO] [stderr] 408 | | arg1: 70.0, [INFO] [stderr] 409 | | arg2: 71.0, [INFO] [stderr] 410 | | arg3: 72.0, [INFO] [stderr] ... | [INFO] [stderr] 416 | | arg9: 78.0 [INFO] [stderr] 417 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 419 | / child_n_fp_args!(child_10_fp_args, "10 args, hahaha very long boy", { [INFO] [stderr] 420 | | arg1: 80.0, [INFO] [stderr] 421 | | arg2: 81.0, [INFO] [stderr] 422 | | arg3: 82.0, [INFO] [stderr] ... | [INFO] [stderr] 429 | | arg10: 89.0 [INFO] [stderr] 430 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 419 | / child_n_fp_args!(child_10_fp_args, "10 args, hahaha very long boy", { [INFO] [stderr] 420 | | arg1: 80.0, [INFO] [stderr] 421 | | arg2: 81.0, [INFO] [stderr] 422 | | arg3: 82.0, [INFO] [stderr] ... | [INFO] [stderr] 429 | | arg10: 89.0 [INFO] [stderr] 430 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` which comes from the expansion of the macro `child_n_fp_args` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 449 | / init_and_swap!( [INFO] [stderr] 450 | | stack, [INFO] [stderr] 451 | | guest_fn, [INFO] [stderr] ... | [INFO] [stderr] 461 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 449 | / init_and_swap!( [INFO] [stderr] 450 | | stack, [INFO] [stderr] 451 | | guest_fn, [INFO] [stderr] ... | [INFO] [stderr] 461 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | PARENT.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 479 | init_and_swap!(stack, guest_fn, []); [INFO] [stderr] | ----------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/context/tests/rust_child.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | CHILD.as_mut().unwrap(), [INFO] [stderr] | ^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 479 | init_and_swap!(stack, guest_fn, []); [INFO] [stderr] | ----------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = 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] [stderr] = note: this warning originates in the macro `init_and_swap` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `lucet-runtime-internals` (lib) generated 17 warnings (run `cargo fix --lib -p lucet-runtime-internals` to apply 10 suggestions) [INFO] [stderr] warning: `lucet-runtime-internals` (lib test) generated 91 warnings (17 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.23s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/lucet_runtime_internals-c21c507bd6e7b63e) [INFO] [stdout] [INFO] [stdout] running 66 tests [INFO] [stdout] test alloc::tests::alloc_reset ... ok [INFO] [stdout] test alloc::tests::accept_small_guard_heap ... ok [INFO] [stdout] test alloc::tests::allocate_runtime_works ... ok [INFO] [stdout] test alloc::tests::context_stack_pattern ... ok [INFO] [stdout] test alloc::tests::guardless_expand_heap_once ... ok [INFO] [stdout] test alloc::tests::drop_region_first ... ok [INFO] [stdout] test alloc::tests::expand_past_heap_limit ... ok [INFO] [stdout] test alloc::tests::alloc_grow_reset ... ok [INFO] [stdout] test alloc::tests::initial_empty_guardless_expand_heap_once ... ok [INFO] [stdout] test alloc::tests::expand_past_spec_max ... ok [INFO] [stdout] test alloc::tests::expand_heap_twice ... ok [INFO] [stdout] test alloc::tests::expand_heap_once ... ok [INFO] [stdout] test alloc::tests::initial_empty_expand_heap_once ... ok [INFO] [stdout] test alloc::tests::context_alloc_child ... ok [INFO] [stdout] test alloc::tests::reject_debug_sigstack_smaller_than_12kib ... ok [INFO] [stdout] test alloc::tests::reject_initial_oversize_heap ... ok [INFO] [stdout] test alloc::tests::reject_large_guard_heap ... ok [INFO] [stdout] test alloc::tests::reject_unaligned_sigstack ... ok [INFO] [stdout] test alloc::tests::reuse_slot_works ... ok [INFO] [stdout] test alloc::tests::slot_counts_work ... ok [INFO] [stdout] test context::tests::c_child::call_child ... ok [INFO] [stdout] test context::tests::c_child::call_child_setcontext ... ok [INFO] [stdout] test alloc::tests::reject_undersized_address_space ... ok [INFO] [stdout] test alloc::tests::reject_sigstack_smaller_than_min ... ok [INFO] [stdout] test alloc::tests::guardless_heap_create ... ok [INFO] [stdout] test context::tests::c_child::call_child_twice ... ok [INFO] [stdout] test context::tests::c_child::call_returning_child ... ok [INFO] [stdout] test context::tests::c_child::call_child_setcontext_twice ... ok [INFO] [stdout] test context::tests::c_child::test_child_3_args ... ok [INFO] [stdout] test context::tests::c_child::test_child_10_args ... ok [INFO] [stdout] test context::tests::c_child::test_child_4_args ... ok [INFO] [stdout] test context::tests::c_child::test_child_7_args ... ok [INFO] [stdout] test context::tests::c_child::test_child_8_args ... ok [INFO] [stdout] test context::tests::c_child::test_child_9_args ... ok [INFO] [stdout] test context::tests::context_offsets_correct ... ok [INFO] [stdout] test context::tests::init_rejects_unaligned ... ok [INFO] [stdout] test context::tests::c_child::test_child_6_args ... ok [INFO] [stdout] test context::tests::rust_child::call_child ... ok [INFO] [stdout] test context::tests::rust_child::call_child_twice ... ok [INFO] [stdout] test context::tests::c_child::test_child_5_args ... ok [INFO] [stdout] test context::tests::rust_child::child_4_args ... ok [INFO] [stdout] test context::tests::rust_child::child_5_args ... ok [INFO] [stdout] test context::tests::rust_child::child_3_args ... ok [INFO] [stdout] test context::tests::rust_child::call_child_setcontext ... ok [INFO] [stdout] test context::tests::rust_child::child_7_args ... ok [INFO] [stdout] test context::tests::rust_child::child_7_fp_args ... ok [INFO] [stdout] test context::tests::rust_child::child_6_fp_args ... ok [INFO] [stdout] test context::tests::rust_child::child_8_args ... ok [INFO] [stdout] test context::tests::rust_child::call_child_setcontext_twice ... ok [INFO] [stdout] test context::tests::rust_child::call_returning_child ... ok [INFO] [stdout] test context::tests::rust_child::child_9_args ... ok [INFO] [stdout] test context::tests::rust_child::child_10_args ... ok [INFO] [stdout] test context::tests::rust_child::child_10_fp_args ... ok [INFO] [stdout] test context::tests::rust_child::child_6_args ... ok [INFO] [stdout] test context::tests::rust_child::child_8_fp_args ... ok [INFO] [stdout] test context::tests::rust_child::child_9_fp_args ... ok [INFO] [stdout] test context::tests::rust_child::guest_access_tls ... ok [INFO] [stdout] test context::tests::rust_child::guest_realloc_string ... ok [INFO] [stdout] test context::tests::rust_child::returning_add_f32 ... ok [INFO] [stdout] test context::tests::rust_child::returning_add_f64 ... ok [INFO] [stdout] test context::tests::rust_child::returning_add_u32 ... ok [INFO] [stdout] test context::tests::rust_child::returning_add_u64 ... ok [INFO] [stdout] test instance::termination_details_any_typing ... ok [INFO] [stdout] test module::sparse_page_data::tests::instantiate_valid_sparse_data ... ok [INFO] [stdout] test module::sparse_page_data::tests::valid_sparse_page_data ... ok [INFO] [stdout] test region::mmap::tests2::test_aligned_mem ... ok [INFO] [stderr] Doc-tests lucet_runtime_internals [INFO] [stdout] [INFO] [stdout] test result: ok. 66 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.61s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 8 tests [INFO] [stdout] test src/hostcall_macros.rs - hostcall_macros::lucet_hostcalls (line 11) ... ignored [INFO] [stdout] test src/context/mod.rs - context::Context::set (line 608) - compile ... ok [INFO] [stdout] test src/instance.rs - instance::Instance::run (line 432) - compile ... ok [INFO] [stdout] test src/context/mod.rs - context::Context::swap (line 544) - compile ... ok [INFO] [stdout] test src/context/mod.rs - context::Context::swap (line 523) - compile ... ok [INFO] [stdout] test src/context/mod.rs - context::Context::init (line 291) - compile ... ok [INFO] [stdout] test src/vmctx.rs - vmctx::Vmctx::get_func_from_idx (line 288) - compile ... ok [INFO] [stdout] test src/context/mod.rs - context::Context::init (line 314) - compile ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.26s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "f7f54c0ce4ddeee26e003c2456393454a6cba2bb55afa854b3883fec6416815f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f7f54c0ce4ddeee26e003c2456393454a6cba2bb55afa854b3883fec6416815f", kill_on_drop: false }` [INFO] [stdout] f7f54c0ce4ddeee26e003c2456393454a6cba2bb55afa854b3883fec6416815f