[INFO] cloning repository https://github.com/ujisati/interpreter
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ujisati/interpreter" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fujisati%2Finterpreter", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fujisati%2Finterpreter'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9c87e2f0cdabd4e785e5dffdfb930b2e9d3d40ac
[INFO] testing ujisati/interpreter against beta-2025-09-21 for beta-1.91-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fujisati%2Finterpreter" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ujisati/interpreter
[INFO] finished tweaking git repo https://github.com/ujisati/interpreter
[INFO] tweaked toml for git repo https://github.com/ujisati/interpreter written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ujisati/interpreter on toolchain beta-2025-09-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ujisati/interpreter 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-2025-09-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 74686779aa37041d5a7f5f4c303cb2385c101933cebeab3df57fa88070817319
[INFO] running `Command { std: "docker" "start" "-a" "74686779aa37041d5a7f5f4c303cb2385c101933cebeab3df57fa88070817319", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "74686779aa37041d5a7f5f4c303cb2385c101933cebeab3df57fa88070817319", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "74686779aa37041d5a7f5f4c303cb2385c101933cebeab3df57fa88070817319", kill_on_drop: false }`
[INFO] [stdout] 74686779aa37041d5a7f5f4c303cb2385c101933cebeab3df57fa88070817319
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bb0db695be7421465404096d644478219c710338ad8db9edabf189e4045cec4f
[INFO] running `Command { std: "docker" "start" "-a" "bb0db695be7421465404096d644478219c710338ad8db9edabf189e4045cec4f", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.67
[INFO] [stderr]    Compiling rustix v0.38.15
[INFO] [stderr]    Compiling memchr v2.6.4
[INFO] [stderr]    Compiling winnow v0.5.15
[INFO] [stderr]    Compiling regex-syntax v0.7.5
[INFO] [stderr]    Compiling linux-raw-sys v0.4.8
[INFO] [stderr]    Compiling bitflags v2.4.0
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]    Compiling aho-corasick v1.1.1
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling syn v2.0.37
[INFO] [stderr]    Compiling is-terminal v0.4.9
[INFO] [stderr]    Compiling regex-automata v0.3.9
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling macros v0.1.0 (/opt/rustwide/workdir/macros)
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]    Compiling regex v1.9.6
[INFO] [stderr]    Compiling ntest_test_cases v0.9.0
[INFO] [stderr]    Compiling ntest_timeout v0.9.0
[INFO] [stderr]    Compiling env_logger v0.10.0
[INFO] [stderr]    Compiling ntest v0.9.0
[INFO] [stderr]    Compiling lang v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `TokenType` and `objects::ObjectType`
[INFO] [stdout]  --> src/ast.rs:4:20
[INFO] [stdout]   |
[INFO] [stdout] 4 |     lexer::{Token, TokenType},
[INFO] [stdout]   |                    ^^^^^^^^^
[INFO] [stdout] 5 |     objects::ObjectType,
[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: `DebugString` and `Node`
[INFO] [stdout]  --> src/evaluator.rs:3:38
[INFO] [stdout]   |
[INFO] [stdout] 3 |         Array, Block, Boolean, Call, DebugString, Expression, ExpressionStmt, FnLit, Identifier,
[INFO] [stdout]   |                                      ^^^^^^^^^^^
[INFO] [stdout] 4 |         If, Index, Infix, Integer, Let, Node, Prefix, Program, Return, Statement, Str,
[INFO] [stdout]   |                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fmt::Display`
[INFO] [stdout]  --> src/lexer.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, fmt::Display};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/parser.rs:4:86
[INFO] [stdout]   |
[INFO] [stdout] 4 |     Block, DebugString, Expression, ExpressionStmt, Identifier, Index, Integer, Let, Node, Program,
[INFO] [stdout]   |                                                                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> src/builtin.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn len(obj: Option<Vec<Obj>>, env: Env) -> Obj {
[INFO] [stdout]    |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> src/evaluator.rs:32:20
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn eval(&self, env: Env) -> Obj {
[INFO] [stdout]    |                    ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> src/evaluator.rs:38:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn eval(&self, env: Env) -> Obj {
[INFO] [stdout]    |                    ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/evaluator.rs:206:20
[INFO] [stdout]     |
[INFO] [stdout] 206 |     fn eval(&self, env: Env) -> Obj {
[INFO] [stdout]     |                    ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameters`
[INFO] [stdout]   --> src/objects.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 parameters,
[INFO] [stdout]    |                 ^^^^^^^^^^ help: try ignoring the field: `parameters: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]   --> src/objects.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 body,
[INFO] [stdout]    |                 ^^^^ help: try ignoring the field: `body: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> src/objects.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 |                 env,
[INFO] [stdout]    |                 ^^^ help: try ignoring the field: `env: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/parser.rs:477:17
[INFO] [stdout]     |
[INFO] [stdout] 477 |             Err(v) => {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/parser.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn new(mut lexer: Lexer<'a>) -> Parser {
[INFO] [stdout]    |                                 --      ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn new(mut lexer: Lexer<'a>) -> Parser<'a> {
[INFO] [stdout]    |                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 29.57s
[INFO] running `Command { std: "docker" "inspect" "bb0db695be7421465404096d644478219c710338ad8db9edabf189e4045cec4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bb0db695be7421465404096d644478219c710338ad8db9edabf189e4045cec4f", kill_on_drop: false }`
[INFO] [stdout] bb0db695be7421465404096d644478219c710338ad8db9edabf189e4045cec4f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 34c5ab5be4fa0d12b00b1e39f273823e550435d1eb37725f4e654845381da5b5
[INFO] running `Command { std: "docker" "start" "-a" "34c5ab5be4fa0d12b00b1e39f273823e550435d1eb37725f4e654845381da5b5", kill_on_drop: false }`
[INFO] [stdout] warning: unused imports: `TokenType` and `objects::ObjectType`
[INFO] [stdout]  --> src/ast.rs:4:20
[INFO] [stdout]   |
[INFO] [stdout] 4 |     lexer::{Token, TokenType},
[INFO] [stdout]   |                    ^^^^^^^^^
[INFO] [stdout] 5 |     objects::ObjectType,
[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: `DebugString` and `Node`
[INFO] [stdout]  --> src/evaluator.rs:3:38
[INFO] [stdout]   |
[INFO] [stdout] 3 |         Array, Block, Boolean, Call, DebugString, Expression, ExpressionStmt, FnLit, Identifier,
[INFO] [stdout]   |                                      ^^^^^^^^^^^
[INFO] [stdout] 4 |         If, Index, Infix, Integer, Let, Node, Prefix, Program, Return, Statement, Str,
[INFO] [stdout]   |                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fmt::Display`
[INFO] [stdout]  --> src/lexer.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, fmt::Display};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/parser.rs:4:86
[INFO] [stdout]   |
[INFO] [stdout] 4 |     Block, DebugString, Expression, ExpressionStmt, Identifier, Index, Integer, Let, Node, Program,
[INFO] [stdout]   |                                                                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> src/builtin.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn len(obj: Option<Vec<Obj>>, env: Env) -> Obj {
[INFO] [stdout]    |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> src/evaluator.rs:32:20
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn eval(&self, env: Env) -> Obj {
[INFO] [stdout]    |                    ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> src/evaluator.rs:38:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn eval(&self, env: Env) -> Obj {
[INFO] [stdout]    |                    ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/evaluator.rs:206:20
[INFO] [stdout]     |
[INFO] [stdout] 206 |     fn eval(&self, env: Env) -> Obj {
[INFO] [stdout]     |                    ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameters`
[INFO] [stdout]   --> src/objects.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 parameters,
[INFO] [stdout]    |                 ^^^^^^^^^^ help: try ignoring the field: `parameters: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]   --> src/objects.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 body,
[INFO] [stdout]    |                 ^^^^ help: try ignoring the field: `body: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> src/objects.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 |                 env,
[INFO] [stdout]    |                 ^^^ help: try ignoring the field: `env: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/parser.rs:477:17
[INFO] [stdout]     |
[INFO] [stdout] 477 |             Err(v) => {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/parser.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn new(mut lexer: Lexer<'a>) -> Parser {
[INFO] [stdout]    |                                 --      ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn new(mut lexer: Lexer<'a>) -> Parser<'a> {
[INFO] [stdout]    |                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling lang v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `TokenType` and `objects::ObjectType`
[INFO] [stdout]  --> src/ast.rs:4:20
[INFO] [stdout]   |
[INFO] [stdout] 4 |     lexer::{Token, TokenType},
[INFO] [stdout]   |                    ^^^^^^^^^
[INFO] [stdout] 5 |     objects::ObjectType,
[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 import: `Node`
[INFO] [stdout]  --> src/evaluator.rs:4:41
[INFO] [stdout]   |
[INFO] [stdout] 4 |         If, Index, Infix, Integer, Let, Node, Prefix, Program, Return, Statement, Str,
[INFO] [stdout]   |                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fmt::Display`
[INFO] [stdout]  --> src/lexer.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, fmt::Display};
[INFO] [stdout]   |                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> src/builtin.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn len(obj: Option<Vec<Obj>>, env: Env) -> Obj {
[INFO] [stdout]    |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> src/evaluator.rs:32:20
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn eval(&self, env: Env) -> Obj {
[INFO] [stdout]    |                    ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> src/evaluator.rs:38:20
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn eval(&self, env: Env) -> Obj {
[INFO] [stdout]    |                    ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/evaluator.rs:206:20
[INFO] [stdout]     |
[INFO] [stdout] 206 |     fn eval(&self, env: Env) -> Obj {
[INFO] [stdout]     |                    ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameters`
[INFO] [stdout]   --> src/objects.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 parameters,
[INFO] [stdout]    |                 ^^^^^^^^^^ help: try ignoring the field: `parameters: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]   --> src/objects.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 body,
[INFO] [stdout]    |                 ^^^^ help: try ignoring the field: `body: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]   --> src/objects.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 |                 env,
[INFO] [stdout]    |                 ^^^ help: try ignoring the field: `env: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/parser.rs:477:17
[INFO] [stdout]     |
[INFO] [stdout] 477 |             Err(v) => {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program`
[INFO] [stdout]    --> src/parser.rs:587:13
[INFO] [stdout]     |
[INFO] [stdout] 587 |         let program = parser.parse().unwrap();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/parser.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn new(mut lexer: Lexer<'a>) -> Parser {
[INFO] [stdout]    |                                 --      ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn new(mut lexer: Lexer<'a>) -> Parser<'a> {
[INFO] [stdout]    |                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.95s
[INFO] running `Command { std: "docker" "inspect" "34c5ab5be4fa0d12b00b1e39f273823e550435d1eb37725f4e654845381da5b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "34c5ab5be4fa0d12b00b1e39f273823e550435d1eb37725f4e654845381da5b5", kill_on_drop: false }`
[INFO] [stdout] 34c5ab5be4fa0d12b00b1e39f273823e550435d1eb37725f4e654845381da5b5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] b023ede7a31239d0d03da6ca464e76e178d3b7786f31ff5dd2c2c013e63420e4
[INFO] running `Command { std: "docker" "start" "-a" "b023ede7a31239d0d03da6ca464e76e178d3b7786f31ff5dd2c2c013e63420e4", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `TokenType` and `objects::ObjectType`
[INFO] [stderr]  --> src/ast.rs:4:20
[INFO] [stderr]   |
[INFO] [stderr] 4 |     lexer::{Token, TokenType},
[INFO] [stderr]   |                    ^^^^^^^^^
[INFO] [stderr] 5 |     objects::ObjectType,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DebugString` and `Node`
[INFO] [stderr]  --> src/evaluator.rs:3:38
[INFO] [stderr]   |
[INFO] [stderr] 3 |         Array, Block, Boolean, Call, DebugString, Expression, ExpressionStmt, FnLit, Identifier,
[INFO] [stderr]   |                                      ^^^^^^^^^^^
[INFO] [stderr] 4 |         If, Index, Infix, Integer, Let, Node, Prefix, Program, Return, Statement, Str,
[INFO] [stderr]   |                                         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `fmt::Display`
[INFO] [stderr]  --> src/lexer.rs:1:33
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{collections::HashMap, fmt::Display};
[INFO] [stderr]   |                                 ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Node`
[INFO] [stderr]  --> src/parser.rs:4:86
[INFO] [stderr]   |
[INFO] [stderr] 4 |     Block, DebugString, Expression, ExpressionStmt, Identifier, Index, Integer, Let, Node, Program,
[INFO] [stderr]   |                                                                                      ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `env`
[INFO] [stderr]   --> src/builtin.rs:18:35
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub fn len(obj: Option<Vec<Obj>>, env: Env) -> Obj {
[INFO] [stderr]    |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `env`
[INFO] [stderr]   --> src/evaluator.rs:32:20
[INFO] [stderr]    |
[INFO] [stderr] 32 |     fn eval(&self, env: Env) -> Obj {
[INFO] [stderr]    |                    ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `env`
[INFO] [stderr]   --> src/evaluator.rs:38:20
[INFO] [stderr]    |
[INFO] [stderr] 38 |     fn eval(&self, env: Env) -> Obj {
[INFO] [stderr]    |                    ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `env`
[INFO] [stderr]    --> src/evaluator.rs:206:20
[INFO] [stderr]     |
[INFO] [stderr] 206 |     fn eval(&self, env: Env) -> Obj {
[INFO] [stderr]     |                    ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `parameters`
[INFO] [stderr]   --> src/objects.rs:49:17
[INFO] [stderr]    |
[INFO] [stderr] 49 |                 parameters,
[INFO] [stderr]    |                 ^^^^^^^^^^ help: try ignoring the field: `parameters: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `body`
[INFO] [stderr]   --> src/objects.rs:50:17
[INFO] [stderr]    |
[INFO] [stderr] 50 |                 body,
[INFO] [stderr]    |                 ^^^^ help: try ignoring the field: `body: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `env`
[INFO] [stderr]   --> src/objects.rs:51:17
[INFO] [stderr]    |
[INFO] [stderr] 51 |                 env,
[INFO] [stderr]    |                 ^^^ help: try ignoring the field: `env: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v`
[INFO] [stderr]    --> src/parser.rs:477:17
[INFO] [stderr]     |
[INFO] [stderr] 477 |             Err(v) => {
[INFO] [stderr]     |                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/parser.rs:35:41
[INFO] [stderr]    |
[INFO] [stderr] 35 |     pub fn new(mut lexer: Lexer<'a>) -> Parser {
[INFO] [stderr]    |                                 --      ^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                                 |
[INFO] [stderr]    |                                 the lifetime is named here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 35 |     pub fn new(mut lexer: Lexer<'a>) -> Parser<'a> {
[INFO] [stderr]    |                                               ++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Node`
[INFO] [stderr]  --> src/evaluator.rs:4:41
[INFO] [stderr]   |
[INFO] [stderr] 4 |         If, Index, Infix, Integer, Let, Node, Prefix, Program, Return, Statement, Str,
[INFO] [stderr]   |                                         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `program`
[INFO] [stderr]    --> src/parser.rs:587:13
[INFO] [stderr]     |
[INFO] [stderr] 587 |         let program = parser.parse().unwrap();
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stderr] 
[INFO] [stderr] warning: `lang` (lib) generated 13 warnings (run `cargo fix --lib -p lang` to apply 5 suggestions)
[INFO] [stderr] warning: `lang` (lib test) generated 13 warnings (11 duplicates) (run `cargo fix --lib -p lang --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.11s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/lang-8812106678c7a2f8)
[INFO] [stdout] 
[INFO] [stdout] running 33 tests
[INFO] [stdout] test evaluator::tests::test_bang_operator ... ok
[INFO] [stdout] test evaluator::tests::test_eval_array ... ok
[INFO] [stdout] test evaluator::tests::test_eval_int_expression ... ok
[INFO] [stdout] test evaluator::tests::test_eval_index_array ... ok
[INFO] [stdout] test evaluator::tests::test_closures ... ok
[INFO] [stdout] test evaluator::tests::test_function_application ... ok
[INFO] [stdout] test evaluator::tests::test_function_object ... ok
[INFO] [stdout] test evaluator::tests::test_first_class_function ... ok
[INFO] [stdout] test evaluator::tests::test_block_scope - should panic ... FAILED
[INFO] [stdout] test evaluator::tests::test_if_else_expression ... ok
[INFO] [stdout] test evaluator::tests::test_eval_bool_expression ... ok
[INFO] [stdout] test evaluator::tests::test_let_statement ... ok
[INFO] [stdout] test evaluator::tests::test_return_statements ... ok
[INFO] [stdout] test lexer::tests::test_is_letter ... ok
[INFO] [stdout] test ast::tests::test_debug_string ... ok
[INFO] [stdout] test parser::tests::test_function_literal_parsing ... ok
[INFO] [stdout] test evaluator::tests::test_string_literal ... ok
[INFO] [stdout] test parser::tests::test_call_expression_parsing ... ok
[INFO] [stdout] test parser::tests::test_integer_literal_expression ... ok
[INFO] [stdout] test parser::tests::test_if_else_expression ... ok
[INFO] [stdout] test parser::tests::test_if_expression ... ok
[INFO] [stdout] test parser::tests::test_let_statements ... ok
[INFO] [stdout] test parser::tests::test_parse_array_literals ... ok
[INFO] [stdout] test parser::tests::test_operator_precedence_parsing ... ok
[INFO] [stdout] test parser::tests::test_identifier_expression ... ok
[INFO] [stdout] test parser::tests::test_parse_index_expression ... ok
[INFO] [stdout] test parser::tests::test_string_literal_expression ... ok
[INFO] [stdout] test parser::tests::test_parsing_prefix_expression ... ok
[INFO] [stdout] test parser::tests::test_return_statement ... ok
[INFO] [stdout] test parser::tests::test_parse_infix_expression ... ok
[INFO] [stdout] test evaluator::tests::test_function_scope - should panic ... ok
[INFO] [stdout] test parser::tests::test_parse_errors - should panic ... ok
[INFO] [stdout] test lexer::tests::test_token ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- evaluator::tests::test_block_scope stdout ----
[INFO] [stdout] note: test did not panic as expected at src/evaluator.rs:576:8
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     evaluator::tests::test_block_scope
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 32 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" "b023ede7a31239d0d03da6ca464e76e178d3b7786f31ff5dd2c2c013e63420e4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b023ede7a31239d0d03da6ca464e76e178d3b7786f31ff5dd2c2c013e63420e4", kill_on_drop: false }`
[INFO] [stdout] b023ede7a31239d0d03da6ca464e76e178d3b7786f31ff5dd2c2c013e63420e4
