[INFO] cloning repository https://github.com/lukeearly/lisp-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lukeearly/lisp-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flukeearly%2Flisp-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flukeearly%2Flisp-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 5fb29fe5270aff5e6e35c0370ff47dad982d4d00
[INFO] building lukeearly/lisp-rs against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flukeearly%2Flisp-rs" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-3-tc1/source/rust-toolchain
[INFO] started tweaking git repo https://github.com/lukeearly/lisp-rs
[INFO] finished tweaking git repo https://github.com/lukeearly/lisp-rs
[INFO] tweaked toml for git repo https://github.com/lukeearly/lisp-rs written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/lukeearly/lisp-rs on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/lukeearly/lisp-rs 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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded sha2 v0.10.7
[INFO] [stderr]   Downloaded unicode-ident v1.0.9
[INFO] [stderr]   Downloaded paste v1.0.12
[INFO] [stderr]   Downloaded cpufeatures v0.2.8
[INFO] [stderr]   Downloaded pest_derive v2.6.1
[INFO] [stderr]   Downloaded thiserror v1.0.40
[INFO] [stderr]   Downloaded thiserror-impl v1.0.40
[INFO] [stderr]   Downloaded quote v1.0.28
[INFO] [stderr]   Downloaded ucd-trie v0.1.5
[INFO] [stderr]   Downloaded pest_meta v2.6.1
[INFO] [stderr]   Downloaded syn v2.0.18
[INFO] [stderr]   Downloaded proc-macro2 v1.0.60
[INFO] [stderr]   Downloaded pest_generator v2.6.1
[INFO] [stderr]   Downloaded pest v2.6.1
[INFO] [stderr]   Downloaded libc v0.2.146
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 056ee9acce2d1db9aa9930483471359b889bd6e6d2c6790225059d8f87900a71
[INFO] running `Command { std: "docker" "start" "-a" "056ee9acce2d1db9aa9930483471359b889bd6e6d2c6790225059d8f87900a71", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "056ee9acce2d1db9aa9930483471359b889bd6e6d2c6790225059d8f87900a71", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "056ee9acce2d1db9aa9930483471359b889bd6e6d2c6790225059d8f87900a71", kill_on_drop: false }`
[INFO] [stdout] 056ee9acce2d1db9aa9930483471359b889bd6e6d2c6790225059d8f87900a71
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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" "-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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fbaf64b572a5897c577b6e4487cbc43fef2384c261f85448f0ee95d2168eee01
[INFO] running `Command { std: "docker" "start" "-a" "fbaf64b572a5897c577b6e4487cbc43fef2384c261f85448f0ee95d2168eee01", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.60
[INFO] [stderr]    Compiling unicode-ident v1.0.9
[INFO] [stderr]    Compiling quote v1.0.28
[INFO] [stderr]    Compiling thiserror v1.0.40
[INFO] [stderr]    Compiling ucd-trie v0.1.5
[INFO] [stderr]    Compiling once_cell v1.18.0
[INFO] [stderr]    Compiling paste v1.0.12
[INFO] [stderr]    Compiling syn v2.0.18
[INFO] [stderr]    Compiling thiserror-impl v1.0.40
[INFO] [stderr]    Compiling pest v2.6.1
[INFO] [stderr]    Compiling pest_meta v2.6.1
[INFO] [stderr]    Compiling pest_generator v2.6.1
[INFO] [stderr]    Compiling pest_derive v2.6.1
[INFO] [stderr]    Compiling lisp-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `BuiltinError` and `unpack::unpack_obj`
[INFO] [stdout]  --> src/builtins/closure.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 |     builtins::{unpack::unpack_obj, BuiltinError},
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BuiltinError`, `list::rust_len`, and `value::Cons`
[INFO] [stdout]   --> src/builtins/closure.rs:20:60
[INFO] [stdout]    |
[INFO] [stdout] 20 |         builtins::{alist::rust_zip_alist, eval::rust_eval, list::rust_len, BuiltinError},
[INFO] [stdout]    |                                                            ^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 21 |         def_builtin, let_slot,
[INFO] [stdout] 22 |         value::Cons,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::alist::assq`
[INFO] [stdout]  --> src/builtins/eval.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::alist::assq;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `builtins::eval::rust_eval` and `let_slot`
[INFO] [stdout]  --> src/builtins/list.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     builtins::eval::rust_eval,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     def_builtin, let_slot,
[INFO] [stdout]   |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BuiltinError` and `unpack_int`
[INFO] [stdout]   --> src/builtins/list.rs:9:27
[INFO] [stdout]    |
[INFO] [stdout]  9 |     unpack::{unpack_cons, unpack_int},
[INFO] [stdout]    |                           ^^^^^^^^^^
[INFO] [stdout] 10 |     BuiltinError,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Gc`, `PackedPtr`, `PackedValue`, `Root`, `Slot`, `TagType`, `UnpackedPtr`, `Value`, `builtins::BuiltinResult`, `let_slot`, and `thread::MutatorCtx`
[INFO] [stdout]  --> src/builtins/types.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     builtins::BuiltinResult,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     def_builtin, let_slot,
[INFO] [stdout]   |                  ^^^^^^^^
[INFO] [stdout] 4 |     object::{PackedPtr, TagType, UnpackedPtr},
[INFO] [stdout]   |              ^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 5 |     root::{Gc, Root, Slot},
[INFO] [stdout]   |            ^^  ^^^^  ^^^^
[INFO] [stdout] 6 |     thread::MutatorCtx,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 7 |     value::{PackedValue, Value},
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Cons`, `Gc`, `PackedPtr`, `RawCons`, and `UnpackedPtr`
[INFO] [stdout]   --> src/builtins/mod.rs:14:14
[INFO] [stdout]    |
[INFO] [stdout] 14 |     object::{PackedPtr, RawCons, TagType, UnpackedPtr},
[INFO] [stdout]    |              ^^^^^^^^^  ^^^^^^^           ^^^^^^^^^^^
[INFO] [stdout] 15 |     root::{Gc, Root, Slot},
[INFO] [stdout]    |            ^^
[INFO] [stdout] 16 |     thread::MutatorCtx,
[INFO] [stdout] 17 |     value::{Cons, PackedValue},
[INFO] [stdout]    |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `util::construct_non_null`
[INFO] [stdout]   --> src/object.rs:10:40
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::{builtins::BuiltinFunction, util::construct_non_null};
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LAlloc` and `id`
[INFO] [stdout]  --> src/parse.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::heap::{id, LAlloc};
[INFO] [stdout]   |                   ^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PackedPtr` and `RawCons`
[INFO] [stdout]  --> src/parse.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::object::{PackedPtr, RawCons};
[INFO] [stdout]   |                     ^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Cons`
[INFO] [stdout]   --> src/parse.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::value::{Cons, Value};
[INFO] [stdout]    |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::slice`
[INFO] [stdout]  --> src/print.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::slice;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `string`
[INFO] [stdout]  --> src/print.rs:2:25
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{fmt::Display, string};
[INFO] [stdout]   |                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `fmt::Display` and `marker::PhantomData`
[INFO] [stdout]  --> src/root.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{cell::Cell, fmt::Display, marker::PhantomData, ops::Deref, pin::Pin, ptr::NonNull};
[INFO] [stdout]   |                       ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `alloc::ImmixMutator` and `let_slot`
[INFO] [stdout]  --> src/root.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     alloc::ImmixMutator,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |     let_slot,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr::NonNull`
[INFO] [stdout]    --> src/root.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 |     use std::ptr::NonNull;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `heap::LAlloc`, `let_slot`, `object::PackedPtr`, and `root::Root`
[INFO] [stdout]    --> src/root.rs:247:17
[INFO] [stdout]     |
[INFO] [stdout] 247 |     use crate::{heap::LAlloc, let_slot, object::PackedPtr, root::Root};
[INFO] [stdout]     |                 ^^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ops::Deref` and `ptr::NonNull`
[INFO] [stdout]  --> src/value.rs:1:32
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{marker::PhantomData, ops::Deref, ptr::NonNull};
[INFO] [stdout]   |                                ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/main.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     return;
[INFO] [stdout]    |     ------ any code following this expression is unreachable
[INFO] [stdout] 49 |
[INFO] [stdout] 50 |     let stdin = stdin();
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `used_space` is assigned to, but never used
[INFO] [stdout]    --> src/alloc.rs:365:17
[INFO] [stdout]     |
[INFO] [stdout] 365 |         let mut used_space = 0usize;
[INFO] [stdout]     |                 ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_used_space` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `OBJECT_ALIGNMENT`
[INFO] [stdout]     |
[INFO] [stdout] 365 -         let mut used_space = 0usize;
[INFO] [stdout] 365 +         let mut object::OBJECT_ALIGNMENT = 0usize;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total_space`
[INFO] [stdout]    --> src/alloc.rs:400:13
[INFO] [stdout]     |
[INFO] [stdout] 400 |         let total_space = live_blocks * IMMIX_BLOCK_SIZE;
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 400 |         let _total_space = live_blocks * IMMIX_BLOCK_SIZE;
[INFO] [stdout]     |             +
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `OBJECT_ALIGNMENT`
[INFO] [stdout]     |
[INFO] [stdout] 400 -         let total_space = live_blocks * IMMIX_BLOCK_SIZE;
[INFO] [stdout] 400 +         let object::OBJECT_ALIGNMENT = live_blocks * IMMIX_BLOCK_SIZE;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]   --> src/arena.rs:50:25
[INFO] [stdout]    |
[INFO] [stdout] 50 |                     let value = crate::util::rust_to_lisp_symbol(stringify!($sym_name));
[INFO] [stdout]    |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] ...
[INFO] [stdout] 62 | symbol_cache!(CommonSymbols [quote, quasiquote, unquote, t, lambda, _macro: "macro", fexpr, closure]);
[INFO] [stdout]    | ----------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `symbol_cache` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_scope`
[INFO] [stdout]   --> src/builtins/control.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let new_scope = rust_concat(ctx, new_scope, alist, bv)?;
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_scope`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/macros.rs:77:24
[INFO] [stdout]    |
[INFO] [stdout] 77 |                   #[warn(unused_variables)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/builtins/control.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / def_builtin!(with(ctx, out) [alist, closure] {
[INFO] [stdout] 10 | |     let (bv, fv, body) = match closure.unpack() {
[INFO] [stdout] 11 | |         Value::Object(cons) => {
[INFO] [stdout] 12 | |             let a = unpack_cons(cons.rest).map_err(|_| BuiltinError::BadArgument("with: malformed closure".into()))?;
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |     Ok(out.nil().prepend(ctx, &body).prepend(ctx, &fv).prepend(ctx, &bv).prepend_obj(ctx, &ctx.common_symbols.closure))
[INFO] [stdout] 23 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    = note: this warning originates in the macro `def_builtin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/macros.rs:37:42
[INFO] [stdout]    |
[INFO] [stdout] 37 |   ...       + crate::drop_first!($arg_name 1usize)
[INFO] [stdout]    |                                  ^---------
[INFO] [stdout]    |                                  |
[INFO] [stdout]    |  ________________________________help: remove this `mut`
[INFO] [stdout]    | |
[INFO] [stdout] 38 | | ...   )*)?;
[INFO] [stdout] 39 | | ...   $(
[INFO] [stdout] 40 | | ...       let mut arg_idx = 0;
[INFO] [stdout] ...  |
[INFO] [stdout] 85 | | ...           $(
[INFO] [stdout] 86 | | ...               let mut $arg_name = crate::builtins::unpack::[<unpack_ $unpack_to>]($arg_name).map_err(|_| crate::builtins::BuiltinErro...
[INFO] [stdout]    | |_________________________^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/builtins/tree.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / def_builtin!(bindex(ctx, out) [idx|int, tree] {
[INFO] [stdout] 12 | |     if idx <= 0 {
[INFO] [stdout] 13 | |         return Err(BuiltinError::BadArgument("bindex: idx must be positive".into()));
[INFO] [stdout] ...  |
[INFO] [stdout] 34 | |     Ok(out.root(&tree))
[INFO] [stdout] 35 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/macros.rs:76:24
[INFO] [stdout]    |
[INFO] [stdout] 76 |                   #[warn(unused_mut)]
[INFO] [stdout]    |                          ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/builtins/tree.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / def_builtin!(bindex(ctx, out) [idx|int, tree] {
[INFO] [stdout] 12 | |     if idx <= 0 {
[INFO] [stdout] 13 | |         return Err(BuiltinError::BadArgument("bindex: idx must be positive".into()));
[INFO] [stdout] ...  |
[INFO] [stdout] 34 | |     Ok(out.root(&tree))
[INFO] [stdout] 35 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    = note: this warning originates in the macro `def_builtin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/object.rs:104:17
[INFO] [stdout]     |
[INFO] [stdout] 104 |                 _ => panic!("Heap corrupted"),
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/object.rs:104:17
[INFO] [stdout]     |
[INFO] [stdout]  98 |                 TagType::Integer => UnpackedPtr::Integer(self.get_integer()),
[INFO] [stdout]     |                 ---------------- matches some of the same values
[INFO] [stdout]  99 |                 TagType::Cons => UnpackedPtr::Cons(self.get_cons_ptr()),
[INFO] [stdout]     |                 ------------- matches some of the same values
[INFO] [stdout] 100 |                 TagType::Object => UnpackedPtr::Object(self.get_cons_ptr()),
[INFO] [stdout]     |                 --------------- matches some of the same values
[INFO] [stdout] 101 |                 TagType::Nil => UnpackedPtr::Nil,
[INFO] [stdout]     |                 ------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 104 |                 _ => panic!("Heap corrupted"),
[INFO] [stdout]     |                 ^ ...and 2 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]   --> src/main.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let out = eval_string(&ctx, scope.value(), eval_out, buffer.as_str());
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `deallocate` is never used
[INFO] [stdout]   --> src/alloc.rs:59:15
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl Block {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 59 |     unsafe fn deallocate(&mut self) {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `bump` is never used
[INFO] [stdout]    --> src/alloc.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | impl BumpPointer {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 128 |     fn bump<T>(&mut self, size: usize) -> Option<NonNull<T>> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get` is never used
[INFO] [stdout]   --> src/arena.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Arena {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn get(&mut self, name: &String) -> Option<NonNull<LString>> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `lambda` is never read
[INFO] [stdout]   --> src/arena.rs:62:61
[INFO] [stdout]    |
[INFO] [stdout] 62 | symbol_cache!(CommonSymbols [quote, quasiquote, unquote, t, lambda, _macro: "macro", fexpr, closure]);
[INFO] [stdout]    |               ------------- field in this struct            ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `symbol_cache` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/builtins/mod.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 |     NotCallable(String, TagType),
[INFO] [stdout]    |     ----------- ^^^^^^  ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BuiltinError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 24 -     NotCallable(String, TagType),
[INFO] [stdout] 24 +     NotCallable((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/builtins/mod.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |     BadArgument(String),
[INFO] [stdout]    |     ----------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BuiltinError` 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] 25 -     BadArgument(String),
[INFO] [stdout] 25 +     BadArgument(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/builtins/mod.rs:26:21
[INFO] [stdout]    |
[INFO] [stdout] 26 |     UndefinedSymbol(String),
[INFO] [stdout]    |     --------------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BuiltinError` 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] 26 -     UndefinedSymbol(String),
[INFO] [stdout] 26 +     UndefinedSymbol(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `string`, `expected`, and `provided` are never read
[INFO] [stdout]   --> src/builtins/mod.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     NotEnoughArguments {
[INFO] [stdout]    |     ------------------ fields in this variant
[INFO] [stdout] 28 |         string: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 29 |         expected: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 30 |         provided: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BuiltinError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `string` and `expected` are never read
[INFO] [stdout]   --> src/builtins/mod.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     TooManyArguments {
[INFO] [stdout]    |     ---------------- fields in this variant
[INFO] [stdout] 33 |         string: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 34 |         expected: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BuiltinError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `zip_alist` is never used
[INFO] [stdout]   --> src/builtins/alist.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 22 | def_builtin!(zip_alist(ctx, out) [keys, vals, init] {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `def_builtin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `closure_apply` is never used
[INFO] [stdout]   --> src/builtins/closure.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | def_builtin!(closure_apply(ctx, out) [closure_data, &rest args] {
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `def_builtin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_eval` is never used
[INFO] [stdout]   --> src/builtins/func.rs:70:14
[INFO] [stdout]    |
[INFO] [stdout] 70 | def_builtin!(map_eval(ctx, out) [scope, list] {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `def_builtin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eval_quasiquote` is never used
[INFO] [stdout]   --> src/builtins/quasiquote.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | def_builtin!(eval_quasiquote(ctx, out) [scope, datum, level] {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `def_builtin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tagp` is never used
[INFO] [stdout]   --> src/builtins/types.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn tagp(tag: PackedValue, arg: PackedValue) -> bool {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unpack_obj` is never used
[INFO] [stdout]   --> src/builtins/unpack.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn unpack_obj<'guard>(arg: PackedValue<'guard>) -> Result<Gc<'guard, Cons<'guard>>, TagType> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GuardPtr` is never constructed
[INFO] [stdout]   --> src/object.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | struct GuardPtr<'a, T> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `alloc_raw_cons`, `t`, and `singleton` are never used
[INFO] [stdout]   --> src/root.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl<'slot> Slot<'slot> {
[INFO] [stdout]    | ----------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn alloc_raw_cons(self, ctx: &MutatorCtx, cons: RawCons) -> Root<'slot> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn t(self, ctx: &MutatorCtx) -> Root<'slot> {
[INFO] [stdout]    |            ^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn singleton<'guard>(self, ctx: &MutatorCtx, ptr: &PackedValue<'guard>) -> Root<'slot> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `quote` is never used
[INFO] [stdout]    --> src/root.rs:160:12
[INFO] [stdout]     |
[INFO] [stdout] 102 | impl<'slot> Root<'slot> {
[INFO] [stdout]     | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn quote(self, ctx: &MutatorCtx) -> Root<'slot> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_capacity`, `from_vec`, `left_point`, `range`, and `binary_search` are never used
[INFO] [stdout]   --> src/sorted_vec.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl<T: Ord> SortedVec<T> {
[INFO] [stdout]    | ------------------------- associated items in this implementation
[INFO] [stdout]  8 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub fn with_capacity(size: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn from_vec(mut base: Vec<T>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn left_point(&mut self, e: &T) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn range(&mut self, e: &T) -> Range<usize> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn binary_search(&self, e: &T) -> Result<usize, usize> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/value.rs:96:12
[INFO] [stdout]    |
[INFO] [stdout] 95 | impl<'guard> Cons<'guard> {
[INFO] [stdout]    | ------------------------- associated function in this implementation
[INFO] [stdout] 96 |     pub fn new(first: Value<'guard>, rest: Value<'guard>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/object.rs:182:14
[INFO] [stdout]     |
[INFO] [stdout] 175 | #[derive(PartialEq, Debug)]
[INFO] [stdout]     |          --------- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 182 |     Function(BuiltinFunction),
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/value.rs:44:14
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(PartialEq, Eq, Clone)]
[INFO] [stdout]    |          --------- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 44 |     Function(BuiltinFunction),
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.29s
[INFO] running `Command { std: "docker" "inspect" "fbaf64b572a5897c577b6e4487cbc43fef2384c261f85448f0ee95d2168eee01", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fbaf64b572a5897c577b6e4487cbc43fef2384c261f85448f0ee95d2168eee01", kill_on_drop: false }`
[INFO] [stdout] fbaf64b572a5897c577b6e4487cbc43fef2384c261f85448f0ee95d2168eee01
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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" "-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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4bf41e5990094479fd7395212f376d9cc498a6bd79dde01c55638474a4786a50
[INFO] running `Command { std: "docker" "start" "-a" "4bf41e5990094479fd7395212f376d9cc498a6bd79dde01c55638474a4786a50", kill_on_drop: false }`
[INFO] [stderr]    Compiling lisp-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `BuiltinError` and `unpack::unpack_obj`
[INFO] [stdout]  --> src/builtins/closure.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 |     builtins::{unpack::unpack_obj, BuiltinError},
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BuiltinError`, `list::rust_len`, and `value::Cons`
[INFO] [stdout]   --> src/builtins/closure.rs:20:60
[INFO] [stdout]    |
[INFO] [stdout] 20 |         builtins::{alist::rust_zip_alist, eval::rust_eval, list::rust_len, BuiltinError},
[INFO] [stdout]    |                                                            ^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 21 |         def_builtin, let_slot,
[INFO] [stdout] 22 |         value::Cons,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::alist::assq`
[INFO] [stdout]  --> src/builtins/eval.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::alist::assq;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Root`, `Slot`, and `thread::MutatorCtx`
[INFO] [stdout]    --> src/builtins/eval.rs:106:16
[INFO] [stdout]     |
[INFO] [stdout] 106 |         root::{Root, Slot},
[INFO] [stdout]     |                ^^^^  ^^^^
[INFO] [stdout] 107 |         thread::MutatorCtx,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `builtins::eval::rust_eval` and `let_slot`
[INFO] [stdout]  --> src/builtins/list.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     builtins::eval::rust_eval,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     def_builtin, let_slot,
[INFO] [stdout]   |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BuiltinError` and `unpack_int`
[INFO] [stdout]   --> src/builtins/list.rs:9:27
[INFO] [stdout]    |
[INFO] [stdout]  9 |     unpack::{unpack_cons, unpack_int},
[INFO] [stdout]    |                           ^^^^^^^^^^
[INFO] [stdout] 10 |     BuiltinError,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Gc`, `PackedPtr`, `PackedValue`, `Slot`, `TagType`, `UnpackedPtr`, `builtins::BuiltinResult`, and `let_slot`
[INFO] [stdout]  --> src/builtins/types.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     builtins::BuiltinResult,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     def_builtin, let_slot,
[INFO] [stdout]   |                  ^^^^^^^^
[INFO] [stdout] 4 |     object::{PackedPtr, TagType, UnpackedPtr},
[INFO] [stdout]   |              ^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 5 |     root::{Gc, Root, Slot},
[INFO] [stdout]   |            ^^        ^^^^
[INFO] [stdout] 6 |     thread::MutatorCtx,
[INFO] [stdout] 7 |     value::{PackedValue, Value},
[INFO] [stdout]   |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PackedPtr` and `RawCons`
[INFO] [stdout]   --> src/builtins/types.rs:86:18
[INFO] [stdout]    |
[INFO] [stdout] 86 |         object::{PackedPtr, RawCons},
[INFO] [stdout]    |                  ^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Cons`, `Gc`, `PackedPtr`, `RawCons`, and `UnpackedPtr`
[INFO] [stdout]   --> src/builtins/mod.rs:14:14
[INFO] [stdout]    |
[INFO] [stdout] 14 |     object::{PackedPtr, RawCons, TagType, UnpackedPtr},
[INFO] [stdout]    |              ^^^^^^^^^  ^^^^^^^           ^^^^^^^^^^^
[INFO] [stdout] 15 |     root::{Gc, Root, Slot},
[INFO] [stdout]    |            ^^
[INFO] [stdout] 16 |     thread::MutatorCtx,
[INFO] [stdout] 17 |     value::{Cons, PackedValue},
[INFO] [stdout]    |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `util::construct_non_null`
[INFO] [stdout]   --> src/object.rs:10:40
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::{builtins::BuiltinFunction, util::construct_non_null};
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LAlloc` and `id`
[INFO] [stdout]  --> src/parse.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::heap::{id, LAlloc};
[INFO] [stdout]   |                   ^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PackedPtr` and `RawCons`
[INFO] [stdout]  --> src/parse.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::object::{PackedPtr, RawCons};
[INFO] [stdout]   |                     ^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Cons`
[INFO] [stdout]   --> src/parse.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::value::{Cons, Value};
[INFO] [stdout]    |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::slice`
[INFO] [stdout]  --> src/print.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::slice;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `string`
[INFO] [stdout]  --> src/print.rs:2:25
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{fmt::Display, string};
[INFO] [stdout]   |                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `fmt::Display` and `marker::PhantomData`
[INFO] [stdout]  --> src/root.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{cell::Cell, fmt::Display, marker::PhantomData, ops::Deref, pin::Pin, ptr::NonNull};
[INFO] [stdout]   |                       ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `alloc::ImmixMutator` and `let_slot`
[INFO] [stdout]  --> src/root.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     alloc::ImmixMutator,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |     let_slot,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr::NonNull`
[INFO] [stdout]    --> src/root.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 |     use std::ptr::NonNull;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `heap::LAlloc` and `root::Root`
[INFO] [stdout]    --> src/root.rs:247:17
[INFO] [stdout]     |
[INFO] [stdout] 247 |     use crate::{heap::LAlloc, let_slot, object::PackedPtr, root::Root};
[INFO] [stdout]     |                 ^^^^^^^^^^^^                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ops::Deref` and `ptr::NonNull`
[INFO] [stdout]  --> src/value.rs:1:32
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{marker::PhantomData, ops::Deref, ptr::NonNull};
[INFO] [stdout]   |                                ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/main.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     return;
[INFO] [stdout]    |     ------ any code following this expression is unreachable
[INFO] [stdout] 49 |
[INFO] [stdout] 50 |     let stdin = stdin();
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `used_space` is assigned to, but never used
[INFO] [stdout]    --> src/alloc.rs:365:17
[INFO] [stdout]     |
[INFO] [stdout] 365 |         let mut used_space = 0usize;
[INFO] [stdout]     |                 ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_used_space` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `OBJECT_ALIGNMENT`
[INFO] [stdout]     |
[INFO] [stdout] 365 -         let mut used_space = 0usize;
[INFO] [stdout] 365 +         let mut object::OBJECT_ALIGNMENT = 0usize;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total_space`
[INFO] [stdout]    --> src/alloc.rs:400:13
[INFO] [stdout]     |
[INFO] [stdout] 400 |         let total_space = live_blocks * IMMIX_BLOCK_SIZE;
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 400 |         let _total_space = live_blocks * IMMIX_BLOCK_SIZE;
[INFO] [stdout]     |             +
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `OBJECT_ALIGNMENT`
[INFO] [stdout]     |
[INFO] [stdout] 400 -         let total_space = live_blocks * IMMIX_BLOCK_SIZE;
[INFO] [stdout] 400 +         let object::OBJECT_ALIGNMENT = live_blocks * IMMIX_BLOCK_SIZE;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]   --> src/arena.rs:50:25
[INFO] [stdout]    |
[INFO] [stdout] 50 |                     let value = crate::util::rust_to_lisp_symbol(stringify!($sym_name));
[INFO] [stdout]    |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] ...
[INFO] [stdout] 62 | symbol_cache!(CommonSymbols [quote, quasiquote, unquote, t, lambda, _macro: "macro", fexpr, closure]);
[INFO] [stdout]    | ----------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `symbol_cache` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_scope`
[INFO] [stdout]   --> src/builtins/control.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let new_scope = rust_concat(ctx, new_scope, alist, bv)?;
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_scope`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/macros.rs:77:24
[INFO] [stdout]    |
[INFO] [stdout] 77 |                   #[warn(unused_variables)]
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/builtins/control.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / def_builtin!(with(ctx, out) [alist, closure] {
[INFO] [stdout] 10 | |     let (bv, fv, body) = match closure.unpack() {
[INFO] [stdout] 11 | |         Value::Object(cons) => {
[INFO] [stdout] 12 | |             let a = unpack_cons(cons.rest).map_err(|_| BuiltinError::BadArgument("with: malformed closure".into()))?;
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |     Ok(out.nil().prepend(ctx, &body).prepend(ctx, &fv).prepend(ctx, &bv).prepend_obj(ctx, &ctx.common_symbols.closure))
[INFO] [stdout] 23 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    = note: this warning originates in the macro `def_builtin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/macros.rs:37:42
[INFO] [stdout]    |
[INFO] [stdout] 37 |   ...       + crate::drop_first!($arg_name 1usize)
[INFO] [stdout]    |                                  ^---------
[INFO] [stdout]    |                                  |
[INFO] [stdout]    |  ________________________________help: remove this `mut`
[INFO] [stdout]    | |
[INFO] [stdout] 38 | | ...   )*)?;
[INFO] [stdout] 39 | | ...   $(
[INFO] [stdout] 40 | | ...       let mut arg_idx = 0;
[INFO] [stdout] ...  |
[INFO] [stdout] 85 | | ...           $(
[INFO] [stdout] 86 | | ...               let mut $arg_name = crate::builtins::unpack::[<unpack_ $unpack_to>]($arg_name).map_err(|_| crate::builtins::BuiltinErro...
[INFO] [stdout]    | |_________________________^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/builtins/tree.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / def_builtin!(bindex(ctx, out) [idx|int, tree] {
[INFO] [stdout] 12 | |     if idx <= 0 {
[INFO] [stdout] 13 | |         return Err(BuiltinError::BadArgument("bindex: idx must be positive".into()));
[INFO] [stdout] ...  |
[INFO] [stdout] 34 | |     Ok(out.root(&tree))
[INFO] [stdout] 35 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/macros.rs:76:24
[INFO] [stdout]    |
[INFO] [stdout] 76 |                   #[warn(unused_mut)]
[INFO] [stdout]    |                          ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/builtins/tree.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / def_builtin!(bindex(ctx, out) [idx|int, tree] {
[INFO] [stdout] 12 | |     if idx <= 0 {
[INFO] [stdout] 13 | |         return Err(BuiltinError::BadArgument("bindex: idx must be positive".into()));
[INFO] [stdout] ...  |
[INFO] [stdout] 34 | |     Ok(out.root(&tree))
[INFO] [stdout] 35 | | });
[INFO] [stdout]    | |__- in this macro invocation
[INFO] [stdout]    = note: this warning originates in the macro `def_builtin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/linked_list.rs:105:13
[INFO] [stdout]     |
[INFO] [stdout] 105 |         let mut node = unsafe { Pin::new_unchecked(&mut node) };
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/object.rs:104:17
[INFO] [stdout]     |
[INFO] [stdout] 104 |                 _ => panic!("Heap corrupted"),
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/object.rs:104:17
[INFO] [stdout]     |
[INFO] [stdout]  98 |                 TagType::Integer => UnpackedPtr::Integer(self.get_integer()),
[INFO] [stdout]     |                 ---------------- matches some of the same values
[INFO] [stdout]  99 |                 TagType::Cons => UnpackedPtr::Cons(self.get_cons_ptr()),
[INFO] [stdout]     |                 ------------- matches some of the same values
[INFO] [stdout] 100 |                 TagType::Object => UnpackedPtr::Object(self.get_cons_ptr()),
[INFO] [stdout]     |                 --------------- matches some of the same values
[INFO] [stdout] 101 |                 TagType::Nil => UnpackedPtr::Nil,
[INFO] [stdout]     |                 ------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 104 |                 _ => panic!("Heap corrupted"),
[INFO] [stdout]     |                 ^ ...and 2 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `slot`
[INFO] [stdout]    --> src/root.rs:257:13
[INFO] [stdout]     |
[INFO] [stdout] 257 |         let slot = root.slot();
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_slot`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]   --> src/main.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let out = eval_string(&ctx, scope.value(), eval_out, buffer.as_str());
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `deallocate` is never used
[INFO] [stdout]   --> src/alloc.rs:59:15
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl Block {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 59 |     unsafe fn deallocate(&mut self) {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get` is never used
[INFO] [stdout]   --> src/arena.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Arena {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn get(&mut self, name: &String) -> Option<NonNull<LString>> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `lambda` is never read
[INFO] [stdout]   --> src/arena.rs:62:61
[INFO] [stdout]    |
[INFO] [stdout] 62 | symbol_cache!(CommonSymbols [quote, quasiquote, unquote, t, lambda, _macro: "macro", fexpr, closure]);
[INFO] [stdout]    |               ------------- field in this struct            ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `symbol_cache` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/builtins/mod.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 |     NotCallable(String, TagType),
[INFO] [stdout]    |     ----------- ^^^^^^  ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BuiltinError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 24 -     NotCallable(String, TagType),
[INFO] [stdout] 24 +     NotCallable((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/builtins/mod.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |     BadArgument(String),
[INFO] [stdout]    |     ----------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BuiltinError` 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] 25 -     BadArgument(String),
[INFO] [stdout] 25 +     BadArgument(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/builtins/mod.rs:26:21
[INFO] [stdout]    |
[INFO] [stdout] 26 |     UndefinedSymbol(String),
[INFO] [stdout]    |     --------------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BuiltinError` 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] 26 -     UndefinedSymbol(String),
[INFO] [stdout] 26 +     UndefinedSymbol(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `string`, `expected`, and `provided` are never read
[INFO] [stdout]   --> src/builtins/mod.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     NotEnoughArguments {
[INFO] [stdout]    |     ------------------ fields in this variant
[INFO] [stdout] 28 |         string: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 29 |         expected: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 30 |         provided: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BuiltinError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `string` and `expected` are never read
[INFO] [stdout]   --> src/builtins/mod.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     TooManyArguments {
[INFO] [stdout]    |     ---------------- fields in this variant
[INFO] [stdout] 33 |         string: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 34 |         expected: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BuiltinError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `zip_alist` is never used
[INFO] [stdout]   --> src/builtins/alist.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 22 | def_builtin!(zip_alist(ctx, out) [keys, vals, init] {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `def_builtin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `closure_apply` is never used
[INFO] [stdout]   --> src/builtins/closure.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | def_builtin!(closure_apply(ctx, out) [closure_data, &rest args] {
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `def_builtin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_eval` is never used
[INFO] [stdout]   --> src/builtins/func.rs:70:14
[INFO] [stdout]    |
[INFO] [stdout] 70 | def_builtin!(map_eval(ctx, out) [scope, list] {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `def_builtin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eval_quasiquote` is never used
[INFO] [stdout]   --> src/builtins/quasiquote.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | def_builtin!(eval_quasiquote(ctx, out) [scope, datum, level] {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `def_builtin` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tagp` is never used
[INFO] [stdout]   --> src/builtins/types.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn tagp(tag: PackedValue, arg: PackedValue) -> bool {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unpack_obj` is never used
[INFO] [stdout]   --> src/builtins/unpack.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn unpack_obj<'guard>(arg: PackedValue<'guard>) -> Result<Gc<'guard, Cons<'guard>>, TagType> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GuardPtr` is never constructed
[INFO] [stdout]   --> src/object.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | struct GuardPtr<'a, T> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `alloc_raw_cons`, `t`, and `singleton` are never used
[INFO] [stdout]   --> src/root.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl<'slot> Slot<'slot> {
[INFO] [stdout]    | ----------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn alloc_raw_cons(self, ctx: &MutatorCtx, cons: RawCons) -> Root<'slot> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn t(self, ctx: &MutatorCtx) -> Root<'slot> {
[INFO] [stdout]    |            ^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn singleton<'guard>(self, ctx: &MutatorCtx, ptr: &PackedValue<'guard>) -> Root<'slot> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_capacity`, `from_vec`, `left_point`, `range`, and `binary_search` are never used
[INFO] [stdout]   --> src/sorted_vec.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl<T: Ord> SortedVec<T> {
[INFO] [stdout]    | ------------------------- associated items in this implementation
[INFO] [stdout]  8 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub fn with_capacity(size: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn from_vec(mut base: Vec<T>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn left_point(&mut self, e: &T) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn range(&mut self, e: &T) -> Range<usize> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn binary_search(&self, e: &T) -> Result<usize, usize> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/object.rs:182:14
[INFO] [stdout]     |
[INFO] [stdout] 175 | #[derive(PartialEq, Debug)]
[INFO] [stdout]     |          --------- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 182 |     Function(BuiltinFunction),
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/value.rs:44:14
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(PartialEq, Eq, Clone)]
[INFO] [stdout]    |          --------- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 44 |     Function(BuiltinFunction),
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.47s
[INFO] running `Command { std: "docker" "inspect" "4bf41e5990094479fd7395212f376d9cc498a6bd79dde01c55638474a4786a50", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4bf41e5990094479fd7395212f376d9cc498a6bd79dde01c55638474a4786a50", kill_on_drop: false }`
[INFO] [stdout] 4bf41e5990094479fd7395212f376d9cc498a6bd79dde01c55638474a4786a50
