[INFO] cloning repository https://github.com/michaelhelvey/monkey
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/michaelhelvey/monkey" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmichaelhelvey%2Fmonkey", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmichaelhelvey%2Fmonkey'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c717491168b559e5f5db8343e671c4ba6f4bb503
[INFO] checking michaelhelvey/monkey against try#ae258e1fcbee4a062f5f3d869f06004d7cea088e for pr-135272
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmichaelhelvey%2Fmonkey" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/michaelhelvey/monkey on toolchain ae258e1fcbee4a062f5f3d869f06004d7cea088e
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ae258e1fcbee4a062f5f3d869f06004d7cea088e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/michaelhelvey/monkey
[INFO] finished tweaking git repo https://github.com/michaelhelvey/monkey
[INFO] tweaked toml for git repo https://github.com/michaelhelvey/monkey written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/michaelhelvey/monkey 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" "+ae258e1fcbee4a062f5f3d869f06004d7cea088e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded miette-derive v7.1.0
[INFO] [stderr]   Downloaded miette v7.1.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+ae258e1fcbee4a062f5f3d869f06004d7cea088e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 24876b4fe5ce132c3b8e168aa06ff3fe684dd19d254f38c06810535edccb7101
[INFO] running `Command { std: "docker" "start" "-a" "24876b4fe5ce132c3b8e168aa06ff3fe684dd19d254f38c06810535edccb7101", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "24876b4fe5ce132c3b8e168aa06ff3fe684dd19d254f38c06810535edccb7101", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "24876b4fe5ce132c3b8e168aa06ff3fe684dd19d254f38c06810535edccb7101", kill_on_drop: false }`
[INFO] [stdout] 24876b4fe5ce132c3b8e168aa06ff3fe684dd19d254f38c06810535edccb7101
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+ae258e1fcbee4a062f5f3d869f06004d7cea088e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fc600a1cc88f1b5aaca3cccf283227c2855b51de4af9c4d90d6f6d8b9f06f63e
[INFO] running `Command { std: "docker" "start" "-a" "fc600a1cc88f1b5aaca3cccf283227c2855b51de4af9c4d90d6f6d8b9f06f63e", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.78
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling cc v1.0.86
[INFO] [stderr]     Checking memchr v2.7.1
[INFO] [stderr]    Compiling rustix v0.38.31
[INFO] [stderr]     Checking gimli v0.28.1
[INFO] [stderr]    Compiling thiserror v1.0.57
[INFO] [stderr]     Checking rustc-demangle v0.1.23
[INFO] [stderr]     Checking bitflags v2.4.2
[INFO] [stderr]     Checking linux-raw-sys v0.4.13
[INFO] [stderr]     Checking unicode-linebreak v0.1.5
[INFO] [stderr]     Checking unicode-width v0.1.11
[INFO] [stderr]     Checking smawk v0.3.2
[INFO] [stderr]     Checking is_ci v1.2.0
[INFO] [stderr]     Checking miniz_oxide v0.7.2
[INFO] [stderr]     Checking supports-unicode v3.0.0
[INFO] [stderr]     Checking supports-hyperlinks v3.0.0
[INFO] [stderr]     Checking supports-color v3.0.0
[INFO] [stderr]     Checking owo-colors v4.0.0
[INFO] [stderr]     Checking unicode-segmentation v1.11.0
[INFO] [stderr]     Checking textwrap v0.16.1
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]    Compiling backtrace v0.3.69
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling syn v2.0.50
[INFO] [stderr]     Checking terminal_size v0.3.0
[INFO] [stderr]     Checking addr2line v0.21.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.57
[INFO] [stderr]    Compiling miette-derive v7.1.0
[INFO] [stderr]     Checking backtrace-ext v0.2.1
[INFO] [stderr]     Checking miette v7.1.0
[INFO] [stderr]     Checking language_practice_2 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: elided lifetime has a name
[INFO] [stdout]    --> src/parser.rs:142:17
[INFO] [stdout]     |
[INFO] [stdout] 138 | fn expect_token<'ast>(
[INFO] [stdout]     |                 ---- lifetime `'ast` declared here
[INFO] [stdout] ...
[INFO] [stdout] 142 | ) -> ParseResult<&'ast Token> {
[INFO] [stdout]     |                 ^ this elided lifetime gets resolved as `'ast`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: elided lifetime has a name
[INFO] [stdout]    --> src/parser.rs:142:17
[INFO] [stdout]     |
[INFO] [stdout] 138 | fn expect_token<'ast>(
[INFO] [stdout]     |                 ---- lifetime `'ast` declared here
[INFO] [stdout] ...
[INFO] [stdout] 142 | ) -> ParseResult<&'ast Token> {
[INFO] [stdout]     |                 ^ this elided lifetime gets resolved as `'ast`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token`
[INFO] [stdout]    --> src/parser.rs:116:14
[INFO] [stdout]     |
[INFO] [stdout] 116 |         Some(token) => todo!(),
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_token`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_token`
[INFO] [stdout]    --> src/parser.rs:132:9
[INFO] [stdout]     |
[INFO] [stdout] 132 |     let start_token = expect_token(tokens, TokenType::Let, eof_span)?;
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_token`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tokens`
[INFO] [stdout]    --> src/parser.rs:179:13
[INFO] [stdout]     |
[INFO] [stdout] 179 |         let tokens = tokens_from_code(code);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Program`, `Let`, and `Expression` are never constructed
[INFO] [stdout]   --> src/ast.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub enum Statement<'ast> {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout] 9  |     Program(Program<'ast>),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 10 |     Let(LetStatement<'ast>),
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     Expression(Expression<'ast>),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Identifier` and `IntegerLiteral` are never constructed
[INFO] [stdout]   --> src/ast.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Expression<'ast> {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 19 |     Identifier(Identifier<'ast>),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 20 |     IntegerLiteral(IntegerLiteral<'ast>),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Expression` 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 `start_token`, `name`, and `value` are never read
[INFO] [stdout]   --> src/ast.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct LetStatement<'ast> {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 30 |     pub start_token: &'ast Token,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 31 |     pub name: Identifier<'ast>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 32 |     pub value: Expression<'ast>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LetStatement` 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 `start_token` and `value` are never read
[INFO] [stdout]   --> src/ast.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct Identifier<'ast> {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 37 |     pub start_token: &'ast Token,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 38 |     pub value: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Identifier` 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 `start_token` and `value` are never read
[INFO] [stdout]   --> src/ast.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct IntegerLiteral<'ast> {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 43 |     pub start_token: &'ast Token,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub value: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `IntegerLiteral` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token`
[INFO] [stdout]    --> src/parser.rs:116:14
[INFO] [stdout]     |
[INFO] [stdout] 116 |         Some(token) => todo!(),
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_token`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_token`
[INFO] [stdout]    --> src/parser.rs:132:9
[INFO] [stdout]     |
[INFO] [stdout] 132 |     let start_token = expect_token(tokens, TokenType::Let, eof_span)?;
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_token`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Program`, `Let`, and `Expression` are never constructed
[INFO] [stdout]   --> src/ast.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub enum Statement<'ast> {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout] 9  |     Program(Program<'ast>),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 10 |     Let(LetStatement<'ast>),
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     Expression(Expression<'ast>),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Identifier` and `IntegerLiteral` are never constructed
[INFO] [stdout]   --> src/ast.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Expression<'ast> {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 19 |     Identifier(Identifier<'ast>),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 20 |     IntegerLiteral(IntegerLiteral<'ast>),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Expression` 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 `start_token`, `name`, and `value` are never read
[INFO] [stdout]   --> src/ast.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct LetStatement<'ast> {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 30 |     pub start_token: &'ast Token,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 31 |     pub name: Identifier<'ast>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 32 |     pub value: Expression<'ast>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LetStatement` 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 `start_token` and `value` are never read
[INFO] [stdout]   --> src/ast.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct Identifier<'ast> {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 37 |     pub start_token: &'ast Token,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 38 |     pub value: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Identifier` 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 `start_token` and `value` are never read
[INFO] [stdout]   --> src/ast.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct IntegerLiteral<'ast> {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 43 |     pub start_token: &'ast Token,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub value: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `IntegerLiteral` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `literal` is never read
[INFO] [stdout]   --> src/lexer.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct Token {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 44 |     pub token_type: TokenType,
[INFO] [stdout] 45 |     pub literal: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Token` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.11s
[INFO] running `Command { std: "docker" "inspect" "fc600a1cc88f1b5aaca3cccf283227c2855b51de4af9c4d90d6f6d8b9f06f63e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fc600a1cc88f1b5aaca3cccf283227c2855b51de4af9c4d90d6f6d8b9f06f63e", kill_on_drop: false }`
[INFO] [stdout] fc600a1cc88f1b5aaca3cccf283227c2855b51de4af9c4d90d6f6d8b9f06f63e
