[INFO] cloning repository https://github.com/playXE/waffle-scheme
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/playXE/waffle-scheme" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FplayXE%2Fwaffle-scheme", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FplayXE%2Fwaffle-scheme'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6662a260c4af7ac26914de76f9dd45eb8e805836
[INFO] testing playXE/waffle-scheme against master#d98a5da813da67eb189387b8ccfb73cf481275d8+rustflags=-Copt-level=3 for pr-138759
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FplayXE%2Fwaffle-scheme" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/playXE/waffle-scheme
[INFO] finished tweaking git repo https://github.com/playXE/waffle-scheme
[INFO] tweaked toml for git repo https://github.com/playXE/waffle-scheme written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/playXE/waffle-scheme on toolchain d98a5da813da67eb189387b8ccfb73cf481275d8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/playXE/waffle-scheme already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded mopa v0.2.2
[INFO] [stderr]   Downloaded paste v1.0.6
[INFO] [stderr]   Downloaded modular-bitfield-impl v0.11.2
[INFO] [stderr]   Downloaded modular-bitfield v0.11.2
[INFO] [stderr]   Downloaded lexpr-macros v0.2.1
[INFO] [stderr]   Downloaded semver v1.0.6
[INFO] [stderr]   Downloaded lexpr v0.2.6
[INFO] [stderr]   Downloaded memx v0.1.20
[INFO] [stderr]   Downloaded libc v0.2.119
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9960ddf003b100b374d2ca571875c94eacbd5b6f8e5f4d91cca3ddf9d201760f
[INFO] running `Command { std: "docker" "start" "-a" "9960ddf003b100b374d2ca571875c94eacbd5b6f8e5f4d91cca3ddf9d201760f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9960ddf003b100b374d2ca571875c94eacbd5b6f8e5f4d91cca3ddf9d201760f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9960ddf003b100b374d2ca571875c94eacbd5b6f8e5f4d91cca3ddf9d201760f", kill_on_drop: false }`
[INFO] [stdout] 9960ddf003b100b374d2ca571875c94eacbd5b6f8e5f4d91cca3ddf9d201760f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c383af58ef8b7bafe30507f496c082c1a3c65746700f604b6348e91baea433cb
[INFO] running `Command { std: "docker" "start" "-a" "c383af58ef8b7bafe30507f496c082c1a3c65746700f604b6348e91baea433cb", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.36
[INFO] [stderr]    Compiling semver v1.0.6
[INFO] [stderr]    Compiling syn v1.0.86
[INFO] [stderr]    Compiling proc-macro-hack v0.5.19
[INFO] [stderr]    Compiling libc v0.2.119
[INFO] [stderr]    Compiling hashbrown v0.11.2
[INFO] [stderr]    Compiling indexmap v1.8.0
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling itoa v0.4.8
[INFO] [stderr]    Compiling waffle v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling ryu v1.0.9
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling mopa v0.2.2
[INFO] [stderr]    Compiling paste v1.0.6
[INFO] [stderr]    Compiling memx v0.1.20
[INFO] [stderr]    Compiling quote v1.0.15
[INFO] [stderr]    Compiling lexpr-macros v0.2.1
[INFO] [stderr]    Compiling lexpr v0.2.6
[INFO] [stderr]    Compiling modular-bitfield-impl v0.11.2
[INFO] [stderr]    Compiling modular-bitfield v0.11.2
[INFO] [stdout] warning: the feature `core_intrinsics` is internal to the compiler or standard library
[INFO] [stdout]  --> src/lib.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     core_intrinsics,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: using it is strongly discouraged
[INFO] [stdout]   = note: `#[warn(internal_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_fn_fn_ptr_basics` has been stable since 1.61.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     const_fn_fn_ptr_basics,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_ptr_offset_from` has been stable since 1.65.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     const_ptr_offset_from,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc/allocator.rs:481:13
[INFO] [stdout]     |
[INFO] [stdout] 481 |         let mut free_pages = base.cast::<FreeRun>();
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hash.rs:134:17
[INFO] [stdout]     |
[INFO] [stdout] 134 |             let mut prevnode = null_mut::<HashTableRec>();
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `other_env`
[INFO] [stdout]     --> src/vm.rs:1313:17
[INFO] [stdout]      |
[INFO] [stdout] 1313 |         let mut other_env = function
[INFO] [stdout]      |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_other_env`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/vm.rs:1313:13
[INFO] [stdout]      |
[INFO] [stdout] 1313 |         let mut other_env = function
[INFO] [stdout]      |             ----^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/gc/allocator.rs:497:28
[INFO] [stdout]     |
[INFO] [stdout] 497 |             current_runs: [&mut DEDICATED_FULL_RUN; 42],
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 497 |             current_runs: [&raw mut DEDICATED_FULL_RUN; 42],
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/gc/allocator.rs:643:40
[INFO] [stdout]     |
[INFO] [stdout] 643 |             self.current_runs[index] = &mut DEDICATED_FULL_RUN;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 643 |             self.current_runs[index] = &raw mut DEDICATED_FULL_RUN;
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/gc/allocator.rs:675:42
[INFO] [stdout]     |
[INFO] [stdout] 675 |                 self.current_runs[idx] = &mut DEDICATED_FULL_RUN;
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 675 |                 self.current_runs[idx] = &raw mut DEDICATED_FULL_RUN;
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/hash.rs:275:26
[INFO] [stdout]     |
[INFO] [stdout] 275 |     let data = v.as_ref().clone();
[INFO] [stdout]     |                          ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `[u8]` does not implement `Clone`, so calling `clone` on `&[u8]` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/hash.rs:298:20
[INFO] [stdout]     |
[INFO] [stdout] 298 |     let tail = data.clone();
[INFO] [stdout]     |                    ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `[u8]` does not implement `Clone`, so calling `clone` on `&[u8]` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sexp.rs:221:18
[INFO] [stdout]     |
[INFO] [stdout] 221 |         unsafe { std::mem::transmute(tmp) }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 221 -         unsafe { std::mem::transmute(tmp) }
[INFO] [stdout] 221 +         unsafe { f64::from_bits(i64::cast_unsigned(tmp)) }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sexp.rs:225:29
[INFO] [stdout]     |
[INFO] [stdout] 225 |         let bits = unsafe { std::mem::transmute::<_, i64>(x) };
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 225 -         let bits = unsafe { std::mem::transmute::<_, i64>(x) };
[INFO] [stdout] 225 +         let bits = unsafe { f64::to_bits(x).cast_signed() };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 11s
[INFO] running `Command { std: "docker" "inspect" "c383af58ef8b7bafe30507f496c082c1a3c65746700f604b6348e91baea433cb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c383af58ef8b7bafe30507f496c082c1a3c65746700f604b6348e91baea433cb", kill_on_drop: false }`
[INFO] [stdout] c383af58ef8b7bafe30507f496c082c1a3c65746700f604b6348e91baea433cb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d141f78d3d4d51160df59ee50a950a7cb03b2568e90bede4b1a80f262fa18965
[INFO] running `Command { std: "docker" "start" "-a" "d141f78d3d4d51160df59ee50a950a7cb03b2568e90bede4b1a80f262fa18965", kill_on_drop: false }`
[INFO] [stderr]    Compiling waffle v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the feature `core_intrinsics` is internal to the compiler or standard library
[INFO] [stdout]  --> src/lib.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     core_intrinsics,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: using it is strongly discouraged
[INFO] [stdout]   = note: `#[warn(internal_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_fn_fn_ptr_basics` has been stable since 1.61.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     const_fn_fn_ptr_basics,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_ptr_offset_from` has been stable since 1.65.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     const_ptr_offset_from,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc/allocator.rs:481:13
[INFO] [stdout]     |
[INFO] [stdout] 481 |         let mut free_pages = base.cast::<FreeRun>();
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hash.rs:134:17
[INFO] [stdout]     |
[INFO] [stdout] 134 |             let mut prevnode = null_mut::<HashTableRec>();
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `other_env`
[INFO] [stdout]     --> src/vm.rs:1313:17
[INFO] [stdout]      |
[INFO] [stdout] 1313 |         let mut other_env = function
[INFO] [stdout]      |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_other_env`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/vm.rs:1313:13
[INFO] [stdout]      |
[INFO] [stdout] 1313 |         let mut other_env = function
[INFO] [stdout]      |             ----^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/gc/allocator.rs:497:28
[INFO] [stdout]     |
[INFO] [stdout] 497 |             current_runs: [&mut DEDICATED_FULL_RUN; 42],
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 497 |             current_runs: [&raw mut DEDICATED_FULL_RUN; 42],
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/gc/allocator.rs:643:40
[INFO] [stdout]     |
[INFO] [stdout] 643 |             self.current_runs[index] = &mut DEDICATED_FULL_RUN;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 643 |             self.current_runs[index] = &raw mut DEDICATED_FULL_RUN;
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/gc/allocator.rs:675:42
[INFO] [stdout]     |
[INFO] [stdout] 675 |                 self.current_runs[idx] = &mut DEDICATED_FULL_RUN;
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 675 |                 self.current_runs[idx] = &raw mut DEDICATED_FULL_RUN;
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/hash.rs:275:26
[INFO] [stdout]     |
[INFO] [stdout] 275 |     let data = v.as_ref().clone();
[INFO] [stdout]     |                          ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `[u8]` does not implement `Clone`, so calling `clone` on `&[u8]` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/hash.rs:298:20
[INFO] [stdout]     |
[INFO] [stdout] 298 |     let tail = data.clone();
[INFO] [stdout]     |                    ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `[u8]` does not implement `Clone`, so calling `clone` on `&[u8]` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sexp.rs:221:18
[INFO] [stdout]     |
[INFO] [stdout] 221 |         unsafe { std::mem::transmute(tmp) }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 221 -         unsafe { std::mem::transmute(tmp) }
[INFO] [stdout] 221 +         unsafe { f64::from_bits(i64::cast_unsigned(tmp)) }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sexp.rs:225:29
[INFO] [stdout]     |
[INFO] [stdout] 225 |         let bits = unsafe { std::mem::transmute::<_, i64>(x) };
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 225 -         let bits = unsafe { std::mem::transmute::<_, i64>(x) };
[INFO] [stdout] 225 +         let bits = unsafe { f64::to_bits(x).cast_signed() };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `core_intrinsics` is internal to the compiler or standard library
[INFO] [stdout]  --> src/lib.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     core_intrinsics,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: using it is strongly discouraged
[INFO] [stdout]   = note: `#[warn(internal_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_fn_fn_ptr_basics` has been stable since 1.61.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     const_fn_fn_ptr_basics,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_ptr_offset_from` has been stable since 1.65.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     const_ptr_offset_from,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc/allocator.rs:481:13
[INFO] [stdout]     |
[INFO] [stdout] 481 |         let mut free_pages = base.cast::<FreeRun>();
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hash.rs:134:17
[INFO] [stdout]     |
[INFO] [stdout] 134 |             let mut prevnode = null_mut::<HashTableRec>();
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `other_env`
[INFO] [stdout]     --> src/vm.rs:1313:17
[INFO] [stdout]      |
[INFO] [stdout] 1313 |         let mut other_env = function
[INFO] [stdout]      |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_other_env`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/vm.rs:1313:13
[INFO] [stdout]      |
[INFO] [stdout] 1313 |         let mut other_env = function
[INFO] [stdout]      |             ----^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/gc/allocator.rs:497:28
[INFO] [stdout]     |
[INFO] [stdout] 497 |             current_runs: [&mut DEDICATED_FULL_RUN; 42],
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 497 |             current_runs: [&raw mut DEDICATED_FULL_RUN; 42],
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/gc/allocator.rs:643:40
[INFO] [stdout]     |
[INFO] [stdout] 643 |             self.current_runs[index] = &mut DEDICATED_FULL_RUN;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 643 |             self.current_runs[index] = &raw mut DEDICATED_FULL_RUN;
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/gc/allocator.rs:675:42
[INFO] [stdout]     |
[INFO] [stdout] 675 |                 self.current_runs[idx] = &mut DEDICATED_FULL_RUN;
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 675 |                 self.current_runs[idx] = &raw mut DEDICATED_FULL_RUN;
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/hash.rs:275:26
[INFO] [stdout]     |
[INFO] [stdout] 275 |     let data = v.as_ref().clone();
[INFO] [stdout]     |                          ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `[u8]` does not implement `Clone`, so calling `clone` on `&[u8]` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/hash.rs:298:20
[INFO] [stdout]     |
[INFO] [stdout] 298 |     let tail = data.clone();
[INFO] [stdout]     |                    ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `[u8]` does not implement `Clone`, so calling `clone` on `&[u8]` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sexp.rs:221:18
[INFO] [stdout]     |
[INFO] [stdout] 221 |         unsafe { std::mem::transmute(tmp) }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 221 -         unsafe { std::mem::transmute(tmp) }
[INFO] [stdout] 221 +         unsafe { f64::from_bits(i64::cast_unsigned(tmp)) }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/sexp.rs:225:29
[INFO] [stdout]     |
[INFO] [stdout] 225 |         let bits = unsafe { std::mem::transmute::<_, i64>(x) };
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace this with
[INFO] [stdout]     |
[INFO] [stdout] 225 -         let bits = unsafe { std::mem::transmute::<_, i64>(x) };
[INFO] [stdout] 225 +         let bits = unsafe { f64::to_bits(x).cast_signed() };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.59s
[INFO] running `Command { std: "docker" "inspect" "d141f78d3d4d51160df59ee50a950a7cb03b2568e90bede4b1a80f262fa18965", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d141f78d3d4d51160df59ee50a950a7cb03b2568e90bede4b1a80f262fa18965", kill_on_drop: false }`
[INFO] [stdout] d141f78d3d4d51160df59ee50a950a7cb03b2568e90bede4b1a80f262fa18965
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] cd57575f7c99a07ab4ac809afdb475c1e30a426125b0148c4caa567343ae0b8c
[INFO] running `Command { std: "docker" "start" "-a" "cd57575f7c99a07ab4ac809afdb475c1e30a426125b0148c4caa567343ae0b8c", kill_on_drop: false }`
[INFO] [stderr] warning: the feature `core_intrinsics` is internal to the compiler or standard library
[INFO] [stderr]  --> src/lib.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 |     core_intrinsics,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: using it is strongly discouraged
[INFO] [stderr]   = note: `#[warn(internal_features)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: the feature `const_fn_fn_ptr_basics` has been stable since 1.61.0 and no longer requires an attribute to enable
[INFO] [stderr]  --> src/lib.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 |     const_fn_fn_ptr_basics,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(stable_features)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: the feature `const_ptr_offset_from` has been stable since 1.65.0 and no longer requires an attribute to enable
[INFO] [stderr]  --> src/lib.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 |     const_ptr_offset_from,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/gc/allocator.rs:481:13
[INFO] [stderr]     |
[INFO] [stderr] 481 |         let mut free_pages = base.cast::<FreeRun>();
[INFO] [stderr]     |             ----^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/hash.rs:134:17
[INFO] [stderr]     |
[INFO] [stderr] 134 |             let mut prevnode = null_mut::<HashTableRec>();
[INFO] [stderr]     |                 ----^^^^^^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `other_env`
[INFO] [stderr]     --> src/vm.rs:1313:17
[INFO] [stderr]      |
[INFO] [stderr] 1313 |         let mut other_env = function
[INFO] [stderr]      |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_other_env`
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/vm.rs:1313:13
[INFO] [stderr]      |
[INFO] [stderr] 1313 |         let mut other_env = function
[INFO] [stderr]      |             ----^^^^^^^^^
[INFO] [stderr]      |             |
[INFO] [stderr]      |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/gc/allocator.rs:497:28
[INFO] [stderr]     |
[INFO] [stderr] 497 |             current_runs: [&mut DEDICATED_FULL_RUN; 42],
[INFO] [stderr]     |                            ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/static-mut-references.html>
[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)]` on by default
[INFO] [stderr] help: use `&raw mut` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 497 |             current_runs: [&raw mut DEDICATED_FULL_RUN; 42],
[INFO] [stderr]     |                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/gc/allocator.rs:643:40
[INFO] [stderr]     |
[INFO] [stderr] 643 |             self.current_runs[index] = &mut DEDICATED_FULL_RUN;
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/static-mut-references.html>
[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] help: use `&raw mut` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 643 |             self.current_runs[index] = &raw mut DEDICATED_FULL_RUN;
[INFO] [stderr]     |                                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/gc/allocator.rs:675:42
[INFO] [stderr]     |
[INFO] [stderr] 675 |                 self.current_runs[idx] = &mut DEDICATED_FULL_RUN;
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/static-mut-references.html>
[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] help: use `&raw mut` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 675 |                 self.current_runs[idx] = &raw mut DEDICATED_FULL_RUN;
[INFO] [stderr]     |                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]    --> src/hash.rs:275:26
[INFO] [stderr]     |
[INFO] [stderr] 275 |     let data = v.as_ref().clone();
[INFO] [stderr]     |                          ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]     |
[INFO] [stderr]     = note: the type `[u8]` does not implement `Clone`, so calling `clone` on `&[u8]` copies the reference, which does not do anything and can be removed
[INFO] [stderr]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]    --> src/hash.rs:298:20
[INFO] [stderr]     |
[INFO] [stderr] 298 |     let tail = data.clone();
[INFO] [stderr]     |                    ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]     |
[INFO] [stderr]     = note: the type `[u8]` does not implement `Clone`, so calling `clone` on `&[u8]` copies the reference, which does not do anything and can be removed
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary transmute
[INFO] [stderr]    --> src/sexp.rs:221:18
[INFO] [stderr]     |
[INFO] [stderr] 221 |         unsafe { std::mem::transmute(tmp) }
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stderr] help: replace this with
[INFO] [stderr]     |
[INFO] [stderr] 221 -         unsafe { std::mem::transmute(tmp) }
[INFO] [stderr] 221 +         unsafe { f64::from_bits(i64::cast_unsigned(tmp)) }
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary transmute
[INFO] [stderr]    --> src/sexp.rs:225:29
[INFO] [stderr]     |
[INFO] [stderr] 225 |         let bits = unsafe { std::mem::transmute::<_, i64>(x) };
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: replace this with
[INFO] [stderr]     |
[INFO] [stderr] 225 -         let bits = unsafe { std::mem::transmute::<_, i64>(x) };
[INFO] [stderr] 225 +         let bits = unsafe { f64::to_bits(x).cast_signed() };
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `waffle` (lib) generated 14 warnings (run `cargo fix --lib -p waffle` to apply 7 suggestions)
[INFO] [stderr] warning: `waffle` (lib test) generated 14 warnings (14 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/waffle-1a153ae31b34bbb3)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test gc::segmented_vec::test_basic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/waffle-fec8f72d71deca26)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests waffle
[INFO] [stderr] warning: the feature `core_intrinsics` is internal to the compiler or standard library
[INFO] [stderr]  --> src/lib.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 |     core_intrinsics,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: using it is strongly discouraged
[INFO] [stderr]   = note: `#[warn(internal_features)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/gc.rs - gc (line 28) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/gc.rs - gc (line 28) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `garbage_bits` in this scope
[INFO] [stdout]  --> src/gc.rs:29:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | garbage_bits = live_bitmap & !mark_bitmap;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: you might have meant to introduce a new binding
[INFO] [stdout]   |
[INFO] [stdout] 3 | let garbage_bits = live_bitmap & !mark_bitmap;
[INFO] [stdout]   | +++
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `live_bitmap` in this scope
[INFO] [stdout]  --> src/gc.rs:29:16
[INFO] [stdout]   |
[INFO] [stdout] 3 | garbage_bits = live_bitmap & !mark_bitmap;
[INFO] [stdout]   |                ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `mark_bitmap` in this scope
[INFO] [stdout]  --> src/gc.rs:29:31
[INFO] [stdout]   |
[INFO] [stdout] 3 | garbage_bits = live_bitmap & !mark_bitmap;
[INFO] [stdout]   |                               ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `live_bitmap` in this scope
[INFO] [stdout]  --> src/gc.rs:30:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | live_bitmap &= mark_bitmap;
[INFO] [stdout]   | ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `mark_bitmap` in this scope
[INFO] [stdout]  --> src/gc.rs:30:16
[INFO] [stdout]   |
[INFO] [stdout] 4 | live_bitmap &= mark_bitmap;
[INFO] [stdout]   |                ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]  --> src/gc.rs:31:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_gc_rs_28_0() {
[INFO] [stdout]   |                                         ---------------------------- this function can't have a `self` parameter
[INFO] [stdout] ...
[INFO] [stdout] 5 | for ptr in self.pointers_from_bits(garbage_bits) {
[INFO] [stdout]   |            ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `garbage_bits` in this scope
[INFO] [stdout]  --> src/gc.rs:31:36
[INFO] [stdout]   |
[INFO] [stdout] 5 | for ptr in self.pointers_from_bits(garbage_bits) {
[INFO] [stdout]   |                                    ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]  --> src/gc.rs:32:2
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_gc_rs_28_0() {
[INFO] [stdout]   |                                         ---------------------------- this function can't have a `self` parameter
[INFO] [stdout] ...
[INFO] [stdout] 6 |  self.free(ptr)
[INFO] [stdout]   |  ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0424, E0425.
[INFO] [stdout] For more information about an error, try `rustc --explain E0424`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/gc.rs - gc (line 28)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "cd57575f7c99a07ab4ac809afdb475c1e30a426125b0148c4caa567343ae0b8c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cd57575f7c99a07ab4ac809afdb475c1e30a426125b0148c4caa567343ae0b8c", kill_on_drop: false }`
[INFO] [stdout] cd57575f7c99a07ab4ac809afdb475c1e30a426125b0148c4caa567343ae0b8c
