[INFO] cloning repository https://github.com/fkz/lambda
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/fkz/lambda" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffkz%2Flambda", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffkz%2Flambda'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 740df7f54bfbdc8de3c3139a54fc9cde7202cd34
[INFO] testing fkz/lambda against beta-2024-12-08 for beta-1.84.0-4-retry
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffkz%2Flambda" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/fkz/lambda on toolchain beta-2024-12-08
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-12-08" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/fkz/lambda
[INFO] finished tweaking git repo https://github.com/fkz/lambda
[INFO] tweaked toml for git repo https://github.com/fkz/lambda written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/fkz/lambda 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" "+beta-2024-12-08" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: unused manifest key: build
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a8173c180c45de91912fe999f3b774d330acb4bb293c44e89066bcf008451456
[INFO] running `Command { std: "docker" "start" "-a" "a8173c180c45de91912fe999f3b774d330acb4bb293c44e89066bcf008451456", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a8173c180c45de91912fe999f3b774d330acb4bb293c44e89066bcf008451456", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a8173c180c45de91912fe999f3b774d330acb4bb293c44e89066bcf008451456", kill_on_drop: false }`
[INFO] [stdout] a8173c180c45de91912fe999f3b774d330acb4bb293c44e89066bcf008451456
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e2410ecc68733c9bb8f6e22dc2f8323581168f0a82bd2eb20be959fb8f3ac4ef
[INFO] running `Command { std: "docker" "start" "-a" "e2410ecc68733c9bb8f6e22dc2f8323581168f0a82bd2eb20be959fb8f3ac4ef", kill_on_drop: false }`
[INFO] [stderr] warning: unused manifest key: build
[INFO] [stderr]    Compiling proc-macro2 v1.0.78
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling serde_json v1.0.114
[INFO] [stderr]    Compiling either v1.10.0
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling anstyle v1.0.6
[INFO] [stderr]    Compiling clap_lex v0.7.0
[INFO] [stderr]    Compiling ryu v1.0.17
[INFO] [stderr]    Compiling itoa v1.0.10
[INFO] [stderr]    Compiling plotters-backend v0.3.5
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling half v2.4.0
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling oorandom v11.1.3
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling clap_builder v4.5.1
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling plotters-svg v0.3.5
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling syn v2.0.52
[INFO] [stderr]    Compiling is-terminal v0.4.12
[INFO] [stderr]    Compiling crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling regex-automata v0.4.5
[INFO] [stderr]    Compiling plotters v0.3.5
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling rayon v1.9.0
[INFO] [stderr]    Compiling clap v4.5.1
[INFO] [stderr]    Compiling regex v1.10.3
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling criterion-cycles-per-byte v0.6.0
[INFO] [stderr]    Compiling lambda_calculus v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Cell`, `UnsafeCell`, `marker::PhantomData`, and `os::raw::c_void`
[INFO] [stdout]  --> src/gc_mem.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cell::{Cell, UnsafeCell},
[INFO] [stdout]   |            ^^^^  ^^^^^^^^^^
[INFO] [stdout] 3 |     marker::PhantomData,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 4 |     os::raw::c_void,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Cell` and `Ref`
[INFO] [stdout]    --> src/gc_mem.rs:107:16
[INFO] [stdout]     |
[INFO] [stdout] 107 |         cell::{Cell, Ref, RefCell, UnsafeCell},
[INFO] [stdout]     |                ^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot specify lifetime arguments explicitly if late bound lifetime parameters are present
[INFO] [stdout]    --> src/gc_mem.rs:487:53
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn to_vec<'a>(&mut self) -> Vec<(Self::ShortBox<'a>, T)>;
[INFO] [stdout]     |                   - the late bound lifetime parameter is introduced here
[INFO] [stdout] ...
[INFO] [stdout] 487 |         let mut to_do = self.replace_to_do.to_vec::<'a>();
[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]     = note: for more information, see issue #42868 <https://github.com/rust-lang/rust/issues/42868>
[INFO] [stdout]     = note: `#[warn(late_bound_lifetime_arguments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot specify lifetime arguments explicitly if late bound lifetime parameters are present
[INFO] [stdout]    --> src/gc_mem.rs:580:62
[INFO] [stdout]     |
[INFO] [stdout] 481 |     fn replace<'a>(
[INFO] [stdout]     |                -- the late bound lifetime parameter is introduced here
[INFO] [stdout] ...
[INFO] [stdout] 580 |                     self.current = a.to_long(&self.replace::<'a>(a, p, a.to_short(&app)));
[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]     = note: for more information, see issue #42868 <https://github.com/rust-lang/rust/issues/42868>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inner`
[INFO] [stdout]    --> src/direct_executor.rs:231:40
[INFO] [stdout]     |
[INFO] [stdout] 231 |                 r @ Program::Reference(inner) => r,
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_inner`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/direct_executor.rs:241:36
[INFO] [stdout]     |
[INFO] [stdout] 241 |                 Program::Reference(p) => (),
[INFO] [stdout]     |                                    ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/gc_mem.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |             unsafe {
[INFO] [stdout]     |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc_mem.rs:229:17
[INFO] [stdout]     |
[INFO] [stdout] 229 |             let mut b = unsafe { &mut *self.memory.get() };
[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/gc_mem.rs:245:17
[INFO] [stdout]     |
[INFO] [stdout] 245 |             let mut b = unsafe { &mut *self.memory.get() };
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc_mem.rs:262:17
[INFO] [stdout]     |
[INFO] [stdout] 262 |             let mut b = unsafe { &mut *self.memory.get() };
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/gc_mem.rs:370:57
[INFO] [stdout]     |
[INFO] [stdout] 370 |                 if let super::Program::InternalReplaced(v) = next {
[INFO] [stdout]     |                                                         ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc_mem.rs:338:17
[INFO] [stdout]     |
[INFO] [stdout] 338 |             let mut other = self.other.get_mut();
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc_mem.rs:529:13
[INFO] [stdout]     |
[INFO] [stdout] 529 |         let mut f = f;
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/gc_mem.rs:678:35
[INFO] [stdout]     |
[INFO] [stdout] 678 |         Program::InternalReplaced(x) => panic!("Internal error"),
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `direct_executor::Program` is more private than the item `direct_executor::Executor::from_mem_rep`
[INFO] [stdout]    --> src/direct_executor.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn from_mem_rep(&mut self, program: &super::memory_representation::Program) -> Program {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `direct_executor::Executor::from_mem_rep` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `direct_executor::Program` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/direct_executor.rs:25:1
[INFO] [stdout]     |
[INFO] [stdout] 25  | enum Program {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `direct_executor::Program` is more private than the item `direct_executor::Executor::to_mem_rep`
[INFO] [stdout]    --> src/direct_executor.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 |     pub fn to_mem_rep(&self, p: Program) -> super::memory_representation::Program {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `direct_executor::Executor::to_mem_rep` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `direct_executor::Program` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/direct_executor.rs:25:1
[INFO] [stdout]     |
[INFO] [stdout] 25  | enum Program {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `direct_executor::Program` is more private than the item `direct_executor::Executor::initialize`
[INFO] [stdout]    --> src/direct_executor.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     pub fn initialize(&mut self, p: Program) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `direct_executor::Executor::initialize` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `direct_executor::Program` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/direct_executor.rs:25:1
[INFO] [stdout]     |
[INFO] [stdout] 25  | enum Program {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `KeepVecTrait<T>` is more private than the item `gc_mem::Allocator::KeepVec`
[INFO] [stdout]   --> src/gc_mem.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     type KeepVec<T>: for<'a> KeepVecTrait<T, ShortBox<'a> = Self::ShortBox<'a>>;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated type `gc_mem::Allocator::KeepVec` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but trait `KeepVecTrait<T>` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/gc_mem.rs:97:1
[INFO] [stdout]    |
[INFO] [stdout] 97 | trait KeepVecTrait<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_bounds)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `a` is never read
[INFO] [stdout]    --> src/gc_mem.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |     pub struct LongBox<A: super::Allocator<LongBox = LongBox<A>>> {
[INFO] [stdout]     |                ------- field in this struct
[INFO] [stdout] 168 |         value: u32,
[INFO] [stdout] 169 |         a: A::Ref,
[INFO] [stdout]     |         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/human_readable.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 |     InvalidCode(&'static str),
[INFO] [stdout]    |     ----------- ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CompileError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 14 |     InvalidCode(()),
[INFO] [stdout]    |                 ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/human_readable.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |     FreeVariables(u64),
[INFO] [stdout]    |     ------------- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CompileError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 15 |     FreeVariables(()),
[INFO] [stdout]    |                   ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> src/gc_mem.rs:309:38
[INFO] [stdout]     |
[INFO] [stdout] 309 |             let allocator = unsafe { &ALLOCATOR };
[INFO] [stdout]     |                                      ^^^^^^^^^^ shared 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: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 309 |             let allocator = unsafe { &raw const ALLOCATOR };
[INFO] [stdout]     |                                      ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/gc_mem.rs:417:25
[INFO] [stdout]     |
[INFO] [stdout] 417 |                 let _ = ALLOCATOR.memory.get_mut().try_reserve_exact(4096);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/gc_mem.rs:418:17
[INFO] [stdout]     |
[INFO] [stdout] 418 |                 &mut ALLOCATOR
[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] 418 |                 &raw mut ALLOCATOR
[INFO] [stdout]     |                 ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 35.57s
[INFO] running `Command { std: "docker" "inspect" "e2410ecc68733c9bb8f6e22dc2f8323581168f0a82bd2eb20be959fb8f3ac4ef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e2410ecc68733c9bb8f6e22dc2f8323581168f0a82bd2eb20be959fb8f3ac4ef", kill_on_drop: false }`
[INFO] [stdout] e2410ecc68733c9bb8f6e22dc2f8323581168f0a82bd2eb20be959fb8f3ac4ef
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 381172884bcff560ef66a22d8e4b5dd26fa5fb4fb30141fae626723c160f9a72
[INFO] running `Command { std: "docker" "start" "-a" "381172884bcff560ef66a22d8e4b5dd26fa5fb4fb30141fae626723c160f9a72", kill_on_drop: false }`
[INFO] [stderr] warning: unused manifest key: build
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling proc-macro2 v1.0.78
[INFO] [stderr]    Compiling cc v1.0.88
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling memchr v2.7.1
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling rustix v0.38.31
[INFO] [stderr]    Compiling uuid v1.7.0
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]    Compiling cpp_demangle v0.4.3
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]    Compiling gimli v0.28.1
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling thiserror v1.0.57
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling zerocopy v0.7.32
[INFO] [stderr]    Compiling symbolic-demangle v12.8.0
[INFO] [stderr]    Compiling arrayvec v0.7.4
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling hashbrown v0.14.3
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.13
[INFO] [stderr]    Compiling ahash v0.8.10
[INFO] [stderr]    Compiling smallvec v1.13.1
[INFO] [stderr]    Compiling bytemuck v1.14.3
[INFO] [stderr]    Compiling rustc-demangle v0.1.23
[INFO] [stderr]    Compiling bitflags v2.4.2
[INFO] [stderr]    Compiling debugid v0.8.0
[INFO] [stderr]    Compiling rgb v0.8.37
[INFO] [stderr]    Compiling miniz_oxide v0.7.2
[INFO] [stderr]    Compiling num-format v0.4.4
[INFO] [stderr]    Compiling str_stack v0.1.0
[INFO] [stderr]    Compiling object v0.32.2
[INFO] [stderr]    Compiling quick-xml v0.26.0
[INFO] [stderr]    Compiling fastrand v2.0.1
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]    Compiling indexmap v2.2.5
[INFO] [stderr]    Compiling pprof v0.13.0
[INFO] [stderr]    Compiling iai v0.1.1
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling addr2line v0.21.0
[INFO] [stderr]    Compiling syn v2.0.52
[INFO] [stderr]    Compiling findshlibs v0.10.2
[INFO] [stderr]    Compiling backtrace v0.3.69
[INFO] [stderr]    Compiling is-terminal v0.4.12
[INFO] [stderr]    Compiling getrandom v0.2.12
[INFO] [stderr]    Compiling memmap2 v0.9.4
[INFO] [stderr]    Compiling nix v0.26.4
[INFO] [stderr]    Compiling symbolic-common v12.8.0
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling inferno v0.11.19
[INFO] [stderr]    Compiling tempfile v3.10.1
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]    Compiling thiserror-impl v1.0.57
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]    Compiling serde_json v1.0.114
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling criterion-cycles-per-byte v0.6.0
[INFO] [stderr]    Compiling lambda_calculus v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Cell`, `UnsafeCell`, `marker::PhantomData`, and `os::raw::c_void`
[INFO] [stdout]  --> src/gc_mem.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cell::{Cell, UnsafeCell},
[INFO] [stdout]   |            ^^^^  ^^^^^^^^^^
[INFO] [stdout] 3 |     marker::PhantomData,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 4 |     os::raw::c_void,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Cell` and `Ref`
[INFO] [stdout]    --> src/gc_mem.rs:107:16
[INFO] [stdout]     |
[INFO] [stdout] 107 |         cell::{Cell, Ref, RefCell, UnsafeCell},
[INFO] [stdout]     |                ^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot specify lifetime arguments explicitly if late bound lifetime parameters are present
[INFO] [stdout]    --> src/gc_mem.rs:487:53
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn to_vec<'a>(&mut self) -> Vec<(Self::ShortBox<'a>, T)>;
[INFO] [stdout]     |                   - the late bound lifetime parameter is introduced here
[INFO] [stdout] ...
[INFO] [stdout] 487 |         let mut to_do = self.replace_to_do.to_vec::<'a>();
[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]     = note: for more information, see issue #42868 <https://github.com/rust-lang/rust/issues/42868>
[INFO] [stdout]     = note: `#[warn(late_bound_lifetime_arguments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot specify lifetime arguments explicitly if late bound lifetime parameters are present
[INFO] [stdout]    --> src/gc_mem.rs:580:62
[INFO] [stdout]     |
[INFO] [stdout] 481 |     fn replace<'a>(
[INFO] [stdout]     |                -- the late bound lifetime parameter is introduced here
[INFO] [stdout] ...
[INFO] [stdout] 580 |                     self.current = a.to_long(&self.replace::<'a>(a, p, a.to_short(&app)));
[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]     = note: for more information, see issue #42868 <https://github.com/rust-lang/rust/issues/42868>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inner`
[INFO] [stdout]    --> src/direct_executor.rs:231:40
[INFO] [stdout]     |
[INFO] [stdout] 231 |                 r @ Program::Reference(inner) => r,
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_inner`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/direct_executor.rs:241:36
[INFO] [stdout]     |
[INFO] [stdout] 241 |                 Program::Reference(p) => (),
[INFO] [stdout]     |                                    ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/gc_mem.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |             unsafe {
[INFO] [stdout]     |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc_mem.rs:229:17
[INFO] [stdout]     |
[INFO] [stdout] 229 |             let mut b = unsafe { &mut *self.memory.get() };
[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/gc_mem.rs:245:17
[INFO] [stdout]     |
[INFO] [stdout] 245 |             let mut b = unsafe { &mut *self.memory.get() };
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc_mem.rs:262:17
[INFO] [stdout]     |
[INFO] [stdout] 262 |             let mut b = unsafe { &mut *self.memory.get() };
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/gc_mem.rs:370:57
[INFO] [stdout]     |
[INFO] [stdout] 370 |                 if let super::Program::InternalReplaced(v) = next {
[INFO] [stdout]     |                                                         ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc_mem.rs:338:17
[INFO] [stdout]     |
[INFO] [stdout] 338 |             let mut other = self.other.get_mut();
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc_mem.rs:529:13
[INFO] [stdout]     |
[INFO] [stdout] 529 |         let mut f = f;
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/gc_mem.rs:678:35
[INFO] [stdout]     |
[INFO] [stdout] 678 |         Program::InternalReplaced(x) => panic!("Internal error"),
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `direct_executor::Program` is more private than the item `direct_executor::Executor::from_mem_rep`
[INFO] [stdout]    --> src/direct_executor.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn from_mem_rep(&mut self, program: &super::memory_representation::Program) -> Program {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `direct_executor::Executor::from_mem_rep` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `direct_executor::Program` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/direct_executor.rs:25:1
[INFO] [stdout]     |
[INFO] [stdout] 25  | enum Program {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `direct_executor::Program` is more private than the item `direct_executor::Executor::to_mem_rep`
[INFO] [stdout]    --> src/direct_executor.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 |     pub fn to_mem_rep(&self, p: Program) -> super::memory_representation::Program {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `direct_executor::Executor::to_mem_rep` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `direct_executor::Program` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/direct_executor.rs:25:1
[INFO] [stdout]     |
[INFO] [stdout] 25  | enum Program {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `direct_executor::Program` is more private than the item `direct_executor::Executor::initialize`
[INFO] [stdout]    --> src/direct_executor.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     pub fn initialize(&mut self, p: Program) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `direct_executor::Executor::initialize` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `direct_executor::Program` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/direct_executor.rs:25:1
[INFO] [stdout]     |
[INFO] [stdout] 25  | enum Program {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `KeepVecTrait<T>` is more private than the item `gc_mem::Allocator::KeepVec`
[INFO] [stdout]   --> src/gc_mem.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     type KeepVec<T>: for<'a> KeepVecTrait<T, ShortBox<'a> = Self::ShortBox<'a>>;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated type `gc_mem::Allocator::KeepVec` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but trait `KeepVecTrait<T>` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/gc_mem.rs:97:1
[INFO] [stdout]    |
[INFO] [stdout] 97 | trait KeepVecTrait<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_bounds)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `a` is never read
[INFO] [stdout]    --> src/gc_mem.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |     pub struct LongBox<A: super::Allocator<LongBox = LongBox<A>>> {
[INFO] [stdout]     |                ------- field in this struct
[INFO] [stdout] 168 |         value: u32,
[INFO] [stdout] 169 |         a: A::Ref,
[INFO] [stdout]     |         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/human_readable.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 |     InvalidCode(&'static str),
[INFO] [stdout]    |     ----------- ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CompileError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 14 |     InvalidCode(()),
[INFO] [stdout]    |                 ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/human_readable.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |     FreeVariables(u64),
[INFO] [stdout]    |     ------------- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CompileError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 15 |     FreeVariables(()),
[INFO] [stdout]    |                   ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> src/gc_mem.rs:309:38
[INFO] [stdout]     |
[INFO] [stdout] 309 |             let allocator = unsafe { &ALLOCATOR };
[INFO] [stdout]     |                                      ^^^^^^^^^^ shared 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: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 309 |             let allocator = unsafe { &raw const ALLOCATOR };
[INFO] [stdout]     |                                      ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/gc_mem.rs:417:25
[INFO] [stdout]     |
[INFO] [stdout] 417 |                 let _ = ALLOCATOR.memory.get_mut().try_reserve_exact(4096);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/gc_mem.rs:418:17
[INFO] [stdout]     |
[INFO] [stdout] 418 |                 &mut ALLOCATOR
[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] 418 |                 &raw mut ALLOCATOR
[INFO] [stdout]     |                 ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Cell`, `UnsafeCell`, `marker::PhantomData`, and `os::raw::c_void`
[INFO] [stdout]  --> src/gc_mem.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cell::{Cell, UnsafeCell},
[INFO] [stdout]   |            ^^^^  ^^^^^^^^^^
[INFO] [stdout] 3 |     marker::PhantomData,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 4 |     os::raw::c_void,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Cell` and `Ref`
[INFO] [stdout]    --> src/gc_mem.rs:107:16
[INFO] [stdout]     |
[INFO] [stdout] 107 |         cell::{Cell, Ref, RefCell, UnsafeCell},
[INFO] [stdout]     |                ^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot specify lifetime arguments explicitly if late bound lifetime parameters are present
[INFO] [stdout]    --> src/gc_mem.rs:487:53
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn to_vec<'a>(&mut self) -> Vec<(Self::ShortBox<'a>, T)>;
[INFO] [stdout]     |                   - the late bound lifetime parameter is introduced here
[INFO] [stdout] ...
[INFO] [stdout] 487 |         let mut to_do = self.replace_to_do.to_vec::<'a>();
[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]     = note: for more information, see issue #42868 <https://github.com/rust-lang/rust/issues/42868>
[INFO] [stdout]     = note: `#[warn(late_bound_lifetime_arguments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot specify lifetime arguments explicitly if late bound lifetime parameters are present
[INFO] [stdout]    --> src/gc_mem.rs:580:62
[INFO] [stdout]     |
[INFO] [stdout] 481 |     fn replace<'a>(
[INFO] [stdout]     |                -- the late bound lifetime parameter is introduced here
[INFO] [stdout] ...
[INFO] [stdout] 580 |                     self.current = a.to_long(&self.replace::<'a>(a, p, a.to_short(&app)));
[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]     = note: for more information, see issue #42868 <https://github.com/rust-lang/rust/issues/42868>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inner`
[INFO] [stdout]    --> src/direct_executor.rs:231:40
[INFO] [stdout]     |
[INFO] [stdout] 231 |                 r @ Program::Reference(inner) => r,
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_inner`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/direct_executor.rs:241:36
[INFO] [stdout]     |
[INFO] [stdout] 241 |                 Program::Reference(p) => (),
[INFO] [stdout]     |                                    ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/gc_mem.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |             unsafe {
[INFO] [stdout]     |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc_mem.rs:229:17
[INFO] [stdout]     |
[INFO] [stdout] 229 |             let mut b = unsafe { &mut *self.memory.get() };
[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/gc_mem.rs:245:17
[INFO] [stdout]     |
[INFO] [stdout] 245 |             let mut b = unsafe { &mut *self.memory.get() };
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc_mem.rs:262:17
[INFO] [stdout]     |
[INFO] [stdout] 262 |             let mut b = unsafe { &mut *self.memory.get() };
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/gc_mem.rs:370:57
[INFO] [stdout]     |
[INFO] [stdout] 370 |                 if let super::Program::InternalReplaced(v) = next {
[INFO] [stdout]     |                                                         ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc_mem.rs:338:17
[INFO] [stdout]     |
[INFO] [stdout] 338 |             let mut other = self.other.get_mut();
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]    --> src/gc_mem.rs:431:13
[INFO] [stdout]     |
[INFO] [stdout] 431 |         let c = alloc.new(&lambda);
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/gc_mem.rs:433:13
[INFO] [stdout]     |
[INFO] [stdout] 433 |         let b = alloc.to_long(&a);
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gc_mem.rs:529:13
[INFO] [stdout]     |
[INFO] [stdout] 529 |         let mut f = f;
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/gc_mem.rs:678:35
[INFO] [stdout]     |
[INFO] [stdout] 678 |         Program::InternalReplaced(x) => panic!("Internal error"),
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `direct_executor::Program` is more private than the item `direct_executor::Executor::from_mem_rep`
[INFO] [stdout]    --> src/direct_executor.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn from_mem_rep(&mut self, program: &super::memory_representation::Program) -> Program {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `direct_executor::Executor::from_mem_rep` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `direct_executor::Program` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/direct_executor.rs:25:1
[INFO] [stdout]     |
[INFO] [stdout] 25  | enum Program {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `direct_executor::Program` is more private than the item `direct_executor::Executor::to_mem_rep`
[INFO] [stdout]    --> src/direct_executor.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 |     pub fn to_mem_rep(&self, p: Program) -> super::memory_representation::Program {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `direct_executor::Executor::to_mem_rep` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `direct_executor::Program` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/direct_executor.rs:25:1
[INFO] [stdout]     |
[INFO] [stdout] 25  | enum Program {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `direct_executor::Program` is more private than the item `direct_executor::Executor::initialize`
[INFO] [stdout]    --> src/direct_executor.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     pub fn initialize(&mut self, p: Program) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `direct_executor::Executor::initialize` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `direct_executor::Program` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/direct_executor.rs:25:1
[INFO] [stdout]     |
[INFO] [stdout] 25  | enum Program {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `KeepVecTrait<T>` is more private than the item `gc_mem::Allocator::KeepVec`
[INFO] [stdout]   --> src/gc_mem.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     type KeepVec<T>: for<'a> KeepVecTrait<T, ShortBox<'a> = Self::ShortBox<'a>>;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated type `gc_mem::Allocator::KeepVec` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but trait `KeepVecTrait<T>` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/gc_mem.rs:97:1
[INFO] [stdout]    |
[INFO] [stdout] 97 | trait KeepVecTrait<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_bounds)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `a` is never read
[INFO] [stdout]    --> src/gc_mem.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |     pub struct LongBox<A: super::Allocator<LongBox = LongBox<A>>> {
[INFO] [stdout]     |                ------- field in this struct
[INFO] [stdout] 168 |         value: u32,
[INFO] [stdout] 169 |         a: A::Ref,
[INFO] [stdout]     |         ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/human_readable.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 |     InvalidCode(&'static str),
[INFO] [stdout]    |     ----------- ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CompileError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 14 |     InvalidCode(()),
[INFO] [stdout]    |                 ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/human_readable.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |     FreeVariables(u64),
[INFO] [stdout]    |     ------------- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CompileError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 15 |     FreeVariables(()),
[INFO] [stdout]    |                   ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> src/gc_mem.rs:309:38
[INFO] [stdout]     |
[INFO] [stdout] 309 |             let allocator = unsafe { &ALLOCATOR };
[INFO] [stdout]     |                                      ^^^^^^^^^^ shared 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: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 309 |             let allocator = unsafe { &raw const ALLOCATOR };
[INFO] [stdout]     |                                      ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/gc_mem.rs:417:25
[INFO] [stdout]     |
[INFO] [stdout] 417 |                 let _ = ALLOCATOR.memory.get_mut().try_reserve_exact(4096);
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/gc_mem.rs:418:17
[INFO] [stdout]     |
[INFO] [stdout] 418 |                 &mut ALLOCATOR
[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] 418 |                 &raw mut ALLOCATOR
[INFO] [stdout]     |                 ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 39.77s
[INFO] running `Command { std: "docker" "inspect" "381172884bcff560ef66a22d8e4b5dd26fa5fb4fb30141fae626723c160f9a72", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "381172884bcff560ef66a22d8e4b5dd26fa5fb4fb30141fae626723c160f9a72", kill_on_drop: false }`
[INFO] [stdout] 381172884bcff560ef66a22d8e4b5dd26fa5fb4fb30141fae626723c160f9a72
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] b89fd099fa68b1c30ec403b70e28006774af4a56aeac71e48359b267e8ef558f
[INFO] running `Command { std: "docker" "start" "-a" "b89fd099fa68b1c30ec403b70e28006774af4a56aeac71e48359b267e8ef558f", kill_on_drop: false }`
[INFO] [stderr] warning: unused manifest key: build
[INFO] [stderr] warning: unused imports: `Cell`, `UnsafeCell`, `marker::PhantomData`, and `os::raw::c_void`
[INFO] [stderr]  --> src/gc_mem.rs:2:12
[INFO] [stderr]   |
[INFO] [stderr] 2 |     cell::{Cell, UnsafeCell},
[INFO] [stderr]   |            ^^^^  ^^^^^^^^^^
[INFO] [stderr] 3 |     marker::PhantomData,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 4 |     os::raw::c_void,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Cell` and `Ref`
[INFO] [stderr]    --> src/gc_mem.rs:107:16
[INFO] [stderr]     |
[INFO] [stderr] 107 |         cell::{Cell, Ref, RefCell, UnsafeCell},
[INFO] [stderr]     |                ^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: cannot specify lifetime arguments explicitly if late bound lifetime parameters are present
[INFO] [stderr]    --> src/gc_mem.rs:487:53
[INFO] [stderr]     |
[INFO] [stderr] 101 |     fn to_vec<'a>(&mut self) -> Vec<(Self::ShortBox<'a>, T)>;
[INFO] [stderr]     |                   - the late bound lifetime parameter is introduced here
[INFO] [stderr] ...
[INFO] [stderr] 487 |         let mut to_do = self.replace_to_do.to_vec::<'a>();
[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]     = note: for more information, see issue #42868 <https://github.com/rust-lang/rust/issues/42868>
[INFO] [stderr]     = note: `#[warn(late_bound_lifetime_arguments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: cannot specify lifetime arguments explicitly if late bound lifetime parameters are present
[INFO] [stderr]    --> src/gc_mem.rs:580:62
[INFO] [stderr]     |
[INFO] [stderr] 481 |     fn replace<'a>(
[INFO] [stderr]     |                -- the late bound lifetime parameter is introduced here
[INFO] [stderr] ...
[INFO] [stderr] 580 |                     self.current = a.to_long(&self.replace::<'a>(a, p, a.to_short(&app)));
[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]     = note: for more information, see issue #42868 <https://github.com/rust-lang/rust/issues/42868>
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `inner`
[INFO] [stderr]    --> src/direct_executor.rs:231:40
[INFO] [stderr]     |
[INFO] [stderr] 231 |                 r @ Program::Reference(inner) => r,
[INFO] [stderr]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_inner`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `p`
[INFO] [stderr]    --> src/direct_executor.rs:241:36
[INFO] [stderr]     |
[INFO] [stderr] 241 |                 Program::Reference(p) => (),
[INFO] [stderr]     |                                    ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/gc_mem.rs:155:13
[INFO] [stderr]     |
[INFO] [stderr] 155 |             unsafe {
[INFO] [stderr]     |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/gc_mem.rs:229:17
[INFO] [stderr]     |
[INFO] [stderr] 229 |             let mut b = unsafe { &mut *self.memory.get() };
[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/gc_mem.rs:245:17
[INFO] [stderr]     |
[INFO] [stderr] 245 |             let mut b = unsafe { &mut *self.memory.get() };
[INFO] [stderr]     |                 ----^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/gc_mem.rs:262:17
[INFO] [stderr]     |
[INFO] [stderr] 262 |             let mut b = unsafe { &mut *self.memory.get() };
[INFO] [stderr]     |                 ----^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v`
[INFO] [stderr]    --> src/gc_mem.rs:370:57
[INFO] [stderr]     |
[INFO] [stderr] 370 |                 if let super::Program::InternalReplaced(v) = next {
[INFO] [stderr]     |                                                         ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/gc_mem.rs:338:17
[INFO] [stderr]     |
[INFO] [stderr] 338 |             let mut other = self.other.get_mut();
[INFO] [stderr]     |                 ----^^^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/gc_mem.rs:529:13
[INFO] [stderr]     |
[INFO] [stderr] 529 |         let mut f = f;
[INFO] [stderr]     |             ----^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `x`
[INFO] [stderr]    --> src/gc_mem.rs:678:35
[INFO] [stderr]     |
[INFO] [stderr] 678 |         Program::InternalReplaced(x) => panic!("Internal error"),
[INFO] [stderr]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stderr] 
[INFO] [stderr] warning: type `direct_executor::Program` is more private than the item `direct_executor::Executor::from_mem_rep`
[INFO] [stderr]    --> src/direct_executor.rs:142:5
[INFO] [stderr]     |
[INFO] [stderr] 142 |     pub fn from_mem_rep(&mut self, program: &super::memory_representation::Program) -> Program {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `direct_executor::Executor::from_mem_rep` is reachable at visibility `pub(crate)`
[INFO] [stderr]     |
[INFO] [stderr] note: but type `direct_executor::Program` is only usable at visibility `pub(self)`
[INFO] [stderr]    --> src/direct_executor.rs:25:1
[INFO] [stderr]     |
[INFO] [stderr] 25  | enum Program {
[INFO] [stderr]     | ^^^^^^^^^^^^
[INFO] [stderr]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `direct_executor::Program` is more private than the item `direct_executor::Executor::to_mem_rep`
[INFO] [stderr]    --> src/direct_executor.rs:162:5
[INFO] [stderr]     |
[INFO] [stderr] 162 |     pub fn to_mem_rep(&self, p: Program) -> super::memory_representation::Program {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `direct_executor::Executor::to_mem_rep` is reachable at visibility `pub(crate)`
[INFO] [stderr]     |
[INFO] [stderr] note: but type `direct_executor::Program` is only usable at visibility `pub(self)`
[INFO] [stderr]    --> src/direct_executor.rs:25:1
[INFO] [stderr]     |
[INFO] [stderr] 25  | enum Program {
[INFO] [stderr]     | ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type `direct_executor::Program` is more private than the item `direct_executor::Executor::initialize`
[INFO] [stderr]    --> src/direct_executor.rs:179:5
[INFO] [stderr]     |
[INFO] [stderr] 179 |     pub fn initialize(&mut self, p: Program) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `direct_executor::Executor::initialize` is reachable at visibility `pub(crate)`
[INFO] [stderr]     |
[INFO] [stderr] note: but type `direct_executor::Program` is only usable at visibility `pub(self)`
[INFO] [stderr]    --> src/direct_executor.rs:25:1
[INFO] [stderr]     |
[INFO] [stderr] 25  | enum Program {
[INFO] [stderr]     | ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `KeepVecTrait<T>` is more private than the item `gc_mem::Allocator::KeepVec`
[INFO] [stderr]   --> src/gc_mem.rs:94:5
[INFO] [stderr]    |
[INFO] [stderr] 94 |     type KeepVec<T>: for<'a> KeepVecTrait<T, ShortBox<'a> = Self::ShortBox<'a>>;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated type `gc_mem::Allocator::KeepVec` is reachable at visibility `pub`
[INFO] [stderr]    |
[INFO] [stderr] note: but trait `KeepVecTrait<T>` is only usable at visibility `pub(self)`
[INFO] [stderr]   --> src/gc_mem.rs:97:1
[INFO] [stderr]    |
[INFO] [stderr] 97 | trait KeepVecTrait<T> {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    = note: `#[warn(private_bounds)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `a` is never read
[INFO] [stderr]    --> src/gc_mem.rs:169:9
[INFO] [stderr]     |
[INFO] [stderr] 167 |     pub struct LongBox<A: super::Allocator<LongBox = LongBox<A>>> {
[INFO] [stderr]     |                ------- field in this struct
[INFO] [stderr] 168 |         value: u32,
[INFO] [stderr] 169 |         a: A::Ref,
[INFO] [stderr]     |         ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/human_readable.rs:14:17
[INFO] [stderr]    |
[INFO] [stderr] 14 |     InvalidCode(&'static str),
[INFO] [stderr]    |     ----------- ^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CompileError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 14 |     InvalidCode(()),
[INFO] [stderr]    |                 ~~
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/human_readable.rs:15:19
[INFO] [stderr]    |
[INFO] [stderr] 15 |     FreeVariables(u64),
[INFO] [stderr]    |     ------------- ^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CompileError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 15 |     FreeVariables(()),
[INFO] [stderr]    |                   ~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static is discouraged
[INFO] [stderr]    --> src/gc_mem.rs:309:38
[INFO] [stderr]     |
[INFO] [stderr] 309 |             let allocator = unsafe { &ALLOCATOR };
[INFO] [stderr]     |                                      ^^^^^^^^^^ shared 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: 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]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stderr] help: use `&raw const` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 309 |             let allocator = unsafe { &raw const ALLOCATOR };
[INFO] [stderr]     |                                      ~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> src/gc_mem.rs:417:25
[INFO] [stderr]     |
[INFO] [stderr] 417 |                 let _ = ALLOCATOR.memory.get_mut().try_reserve_exact(4096);
[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] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> src/gc_mem.rs:418:17
[INFO] [stderr]     |
[INFO] [stderr] 418 |                 &mut ALLOCATOR
[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] 418 |                 &raw mut ALLOCATOR
[INFO] [stderr]     |                 ~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `c`
[INFO] [stderr]    --> src/gc_mem.rs:431:13
[INFO] [stderr]     |
[INFO] [stderr] 431 |         let c = alloc.new(&lambda);
[INFO] [stderr]     |             ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `b`
[INFO] [stderr]    --> src/gc_mem.rs:433:13
[INFO] [stderr]     |
[INFO] [stderr] 433 |         let b = alloc.to_long(&a);
[INFO] [stderr]     |             ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stderr] 
[INFO] [stderr] warning: `lambda_calculus` (lib) generated 24 warnings (run `cargo fix --lib -p lambda_calculus` to apply 7 suggestions)
[INFO] [stderr] warning: `lambda_calculus` (lib test) generated 26 warnings (24 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.16s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/lambda_calculus-6f1140add6328ae4)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test program::flags::tests::initial ... ok
[INFO] [stdout] test program::flags::tests::extend_eq_shrink ... ok
[INFO] [stdout] test example_interact_programs::tests::test_hello_world ... ok
[INFO] [stdout] test gc_mem::test ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- gc_mem::test stdout ----
[INFO] [stdout] After garbage collection, keeping  0% (0 from 3 boxes); out of 0 roots
[INFO] [stdout] thread 'gc_mem::test' panicked at src/gc_mem.rs:441:5:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: 1
[INFO] [stdout]  right: 2
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5cda47deecda - std::backtrace_rs::backtrace::libunwind::trace::h8810477743020387
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x5cda47deecda - std::backtrace_rs::backtrace::trace_unsynchronized::h3aa55355dd6c54a6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x5cda47deecda - std::sys::backtrace::_print_fmt::h8588b0f62410823f
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5cda47deecda - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h98c26ac25ffe89bb
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5cda47e14ca3 - core::fmt::rt::Argument::fmt::hf95377f4aebd453b
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x5cda47e14ca3 - core::fmt::write::h0dd5f6e2238c7982
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/fmt/mod.rs:1189:21
[INFO] [stdout]    6:     0x5cda47debe73 - std::io::Write::write_fmt::h03bb0ca26e6faf8c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/io/mod.rs:1884:15
[INFO] [stdout]    7:     0x5cda47deeb22 - std::sys::backtrace::BacktraceLock::print::h5c19c1c038ee186d
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x5cda47df015d - std::panicking::default_hook::{{closure}}::h77172f079a1fcb13
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:268:22
[INFO] [stdout]    9:     0x5cda47deff67 - std::panicking::default_hook::he5f8e3b203ccddba
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:292:9
[INFO] [stdout]   10:     0x5cda47db9897 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h7a3c7b4a1ae77f2f
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1986:9
[INFO] [stdout]   11:     0x5cda47db9897 - test::test_main::{{closure}}::hf0d3b69ae9b353d1
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:134:21
[INFO] [stdout]   12:     0x5cda47df0808 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6332e82e7b189abd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1986:9
[INFO] [stdout]   13:     0x5cda47df0808 - std::panicking::rust_panic_with_hook::h53863d4e9018df39
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:809:13
[INFO] [stdout]   14:     0x5cda47df05ca - std::panicking::begin_panic_handler::{{closure}}::h67280e6fa0757873
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:674:13
[INFO] [stdout]   15:     0x5cda47def1b9 - std::sys::backtrace::__rust_end_short_backtrace::h1dac3f54d6fbbeb2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:170:18
[INFO] [stdout]   16:     0x5cda47df025c - rust_begin_unwind
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:665:5
[INFO] [stdout]   17:     0x5cda47d6aa90 - core::panicking::panic_fmt::h6792bd1b2bf01041
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panicking.rs:76:14
[INFO] [stdout]   18:     0x5cda47d6ae5b - core::panicking::assert_failed_inner::hf2c17e6d30928787
[INFO] [stdout]   19:     0x5cda47d78984 - core::panicking::assert_failed::h1820d053efa33e3b
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panicking.rs:373:5
[INFO] [stdout]   20:     0x5cda47d7beda - lambda_calculus::gc_mem::test::h7fb7ebf890217ad6
[INFO] [stdout]                                at /opt/rustwide/workdir/src/gc_mem.rs:441:5
[INFO] [stdout]   21:     0x5cda47d7bde7 - lambda_calculus::gc_mem::test::{{closure}}::h01e7ca7b6a20c6f3
[INFO] [stdout]                                at /opt/rustwide/workdir/src/gc_mem.rs:425:10
[INFO] [stdout]   22:     0x5cda47d7cff6 - core::ops::function::FnOnce::call_once::h2703e9daef1a99fd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5cda47dbe3bb - core::ops::function::FnOnce::call_once::h871bf86719ec9aa4
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5cda47dbe3bb - test::__rust_begin_short_backtrace::h2167df1e2b7d76fd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:632:18
[INFO] [stdout]   25:     0x5cda47dbdda8 - test::run_test_in_process::{{closure}}::h15d92f75a3adfb79
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:655:60
[INFO] [stdout]   26:     0x5cda47dbdda8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb6c8955835a8dbbb
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   27:     0x5cda47dbdda8 - std::panicking::try::do_call::hc79d0fc888a0bd30
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:557:40
[INFO] [stdout]   28:     0x5cda47dbdda8 - std::panicking::try::hb8a7878e3a8589d6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:520:19
[INFO] [stdout]   29:     0x5cda47dbdda8 - std::panic::catch_unwind::hb8e4600ff0ff5cfa
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panic.rs:358:14
[INFO] [stdout]   30:     0x5cda47dbdda8 - test::run_test_in_process::hc2900b0b18688dd6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:655:27
[INFO] [stdout]   31:     0x5cda47dbdda8 - test::run_test::{{closure}}::hac2a9cb07be3d48d
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:576:43
[INFO] [stdout]   32:     0x5cda47d8184a - test::run_test::{{closure}}::h4a5b729e66a38cd8
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:606:41
[INFO] [stdout]   33:     0x5cda47d8184a - std::sys::backtrace::__rust_begin_short_backtrace::h0496fb742492f573
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:154:18
[INFO] [stdout]   34:     0x5cda47d851c4 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbb6d257c550a54bd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/thread/mod.rs:561:17
[INFO] [stdout]   35:     0x5cda47d851c4 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h46696fe4a6832328
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   36:     0x5cda47d851c4 - std::panicking::try::do_call::h2625a51b667bfb64
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:557:40
[INFO] [stdout]   37:     0x5cda47d851c4 - std::panicking::try::hb956a59a1973aa4c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:520:19
[INFO] [stdout]   38:     0x5cda47d851c4 - std::panic::catch_unwind::h64f3b9d1067ef6a0
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panic.rs:358:14
[INFO] [stdout]   39:     0x5cda47d851c4 - std::thread::Builder::spawn_unchecked_::{{closure}}::h42b2841295b6c0b2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/thread/mod.rs:559:30
[INFO] [stdout]   40:     0x5cda47d851c4 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6127de71b8124639
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x5cda47df474b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h42f0ba71002a1b2c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1972:9
[INFO] [stdout]   42:     0x5cda47df474b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::had9e47d7a3dcecb8
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1972:9
[INFO] [stdout]   43:     0x5cda47df474b - std::sys::pal::unix::thread::Thread::new::thread_start::h48cf765408f6f5f2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/pal/unix/thread.rs:105:17
[INFO] [stdout]   44:     0x75fc20ba1ac3 - <unknown>
[INFO] [stdout]   45:     0x75fc20c32a04 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     gc_mem::test
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 3 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "b89fd099fa68b1c30ec403b70e28006774af4a56aeac71e48359b267e8ef558f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b89fd099fa68b1c30ec403b70e28006774af4a56aeac71e48359b267e8ef558f", kill_on_drop: false }`
[INFO] [stdout] b89fd099fa68b1c30ec403b70e28006774af4a56aeac71e48359b267e8ef558f
