[INFO] fetching crate y-lang 0.1.3...
[INFO] testing y-lang-0.1.3 against beta-2025-10-28 for beta-1.92-2
[INFO] extracting crate y-lang 0.1.3 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate y-lang 0.1.3
[INFO] finished tweaking crates.io crate y-lang 0.1.3
[INFO] tweaked toml for crates.io crate y-lang 0.1.3 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate y-lang 0.1.3 on toolchain beta-2025-10-28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate y-lang 0.1.3 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-10-28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e7de1dc722c05f12f0147d2af1cd556292dd4315713f91398da4282320cde42d
[INFO] running `Command { std: "docker" "start" "-a" "e7de1dc722c05f12f0147d2af1cd556292dd4315713f91398da4282320cde42d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e7de1dc722c05f12f0147d2af1cd556292dd4315713f91398da4282320cde42d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e7de1dc722c05f12f0147d2af1cd556292dd4315713f91398da4282320cde42d", kill_on_drop: false }`
[INFO] [stdout] e7de1dc722c05f12f0147d2af1cd556292dd4315713f91398da4282320cde42d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3aba6a78bd6bf6a88475ea0d5e0268df0ecf1b0b7114f6d6703c8d37358ad6b8
[INFO] running `Command { std: "docker" "start" "-a" "3aba6a78bd6bf6a88475ea0d5e0268df0ecf1b0b7114f6d6703c8d37358ad6b8", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.53
[INFO] [stderr]    Compiling unicode-ident v1.0.6
[INFO] [stderr]    Compiling quote v1.0.26
[INFO] [stderr]    Compiling libc v0.2.140
[INFO] [stderr]    Compiling syn v1.0.107
[INFO] [stderr]    Compiling io-lifetimes v1.0.4
[INFO] [stderr]    Compiling rustix v0.37.4
[INFO] [stderr]    Compiling thiserror v1.0.38
[INFO] [stderr]    Compiling linux-raw-sys v0.3.0
[INFO] [stderr]    Compiling utf8parse v0.2.1
[INFO] [stderr]    Compiling ucd-trie v0.1.5
[INFO] [stderr]    Compiling once_cell v1.17.1
[INFO] [stderr]    Compiling anstyle-parse v0.2.0
[INFO] [stderr]    Compiling anstyle v1.0.0
[INFO] [stderr]    Compiling colorchoice v1.0.0
[INFO] [stderr]    Compiling anstyle-query v1.0.0
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling clap_lex v0.4.0
[INFO] [stderr]    Compiling heck v0.4.0
[INFO] [stderr]    Compiling unescape v0.1.0
[INFO] [stderr]    Compiling syn v2.0.8
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling colored v2.0.0
[INFO] [stderr]    Compiling simple_logger v4.1.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.38
[INFO] [stderr]    Compiling is-terminal v0.4.6
[INFO] [stderr]    Compiling anstream v0.3.0
[INFO] [stderr]    Compiling clap_builder v4.2.5
[INFO] [stderr]    Compiling pest v2.6.0
[INFO] [stderr]    Compiling clap_derive v4.2.0
[INFO] [stderr]    Compiling pest_meta v2.6.0
[INFO] [stderr]    Compiling pest_generator v2.6.0
[INFO] [stderr]    Compiling clap v4.2.5
[INFO] [stderr]    Compiling pest_derive v2.6.0
[INFO] [stderr]    Compiling y-lang v0.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `self::parser::*`
[INFO] [stdout]   --> src/ast/mod.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub use self::parser::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast/binary_op.rs:17:29
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct UndefinedOpError(String);
[INFO] [stdout]    |            ---------------- ^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `UndefinedOpError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast/prefix_op.rs:12:35
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct UndefinedPrefixOpError(String);
[INFO] [stdout]    |            ---------------------- ^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `UndefinedPrefixOpError` 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 `0` is never read
[INFO] [stdout]   --> src/typechecker/variabletype.rs:28:31
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct VariableParseError(String);
[INFO] [stdout]    |            ------------------ ^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/ast/parser.rs:10:56
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn parse_program(file: impl ToString, program: &str) -> ParseResult<Pairs<Rule>> {
[INFO] [stdout]    |                                                        ^^^^                 ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                                        |
[INFO] [stdout]    |                                                        the lifetime is elided 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: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn parse_program(file: impl ToString, program: &str) -> ParseResult<Pairs<'_, Rule>> {
[INFO] [stdout]    |                                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary allocation, use `&` instead
[INFO] [stdout]    --> src/typechecker/variabletype.rs:131:40
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 if *other_item_type == Box::new(Char) {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_allocation)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary allocation, use `&` instead
[INFO] [stdout]    --> src/typechecker/variabletype.rs:140:34
[INFO] [stdout]     |
[INFO] [stdout] 140 |                 if *item_type == Box::new(Char) {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.82s
[INFO] running `Command { std: "docker" "inspect" "3aba6a78bd6bf6a88475ea0d5e0268df0ecf1b0b7114f6d6703c8d37358ad6b8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3aba6a78bd6bf6a88475ea0d5e0268df0ecf1b0b7114f6d6703c8d37358ad6b8", kill_on_drop: false }`
[INFO] [stdout] 3aba6a78bd6bf6a88475ea0d5e0268df0ecf1b0b7114f6d6703c8d37358ad6b8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cad432d2c537b0a1a6a5f39b605763499fb4910469448b30fc54e1c4e15b548d
[INFO] running `Command { std: "docker" "start" "-a" "cad432d2c537b0a1a6a5f39b605763499fb4910469448b30fc54e1c4e15b548d", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `self::parser::*`
[INFO] [stdout]   --> src/ast/mod.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub use self::parser::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling y-lang v0.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast/binary_op.rs:17:29
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct UndefinedOpError(String);
[INFO] [stdout]    |            ---------------- ^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `UndefinedOpError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast/prefix_op.rs:12:35
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct UndefinedPrefixOpError(String);
[INFO] [stdout]    |            ---------------------- ^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `UndefinedPrefixOpError` 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 `0` is never read
[INFO] [stdout]   --> src/typechecker/variabletype.rs:28:31
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct VariableParseError(String);
[INFO] [stdout]    |            ------------------ ^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/ast/parser.rs:10:56
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn parse_program(file: impl ToString, program: &str) -> ParseResult<Pairs<Rule>> {
[INFO] [stdout]    |                                                        ^^^^                 ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                                        |
[INFO] [stdout]    |                                                        the lifetime is elided 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: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn parse_program(file: impl ToString, program: &str) -> ParseResult<Pairs<'_, Rule>> {
[INFO] [stdout]    |                                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary allocation, use `&` instead
[INFO] [stdout]    --> src/typechecker/variabletype.rs:131:40
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 if *other_item_type == Box::new(Char) {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_allocation)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary allocation, use `&` instead
[INFO] [stdout]    --> src/typechecker/variabletype.rs:140:34
[INFO] [stdout]     |
[INFO] [stdout] 140 |                 if *item_type == Box::new(Char) {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `test_utils`
[INFO] [stdout]  --> tests/functions.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use test_utils::{check_compilation, Expected};
[INFO] [stdout]   |     ^^^^^^^^^^ use of unresolved module or unlinked crate `test_utils`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `test_utils`, use `cargo add test_utils` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `y-lang` (test "functions") due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0432]: unresolved import `test_utils`
[INFO] [stdout]  --> tests/fib.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use test_utils::{check_compilation, Expected};
[INFO] [stdout]   |     ^^^^^^^^^^ use of unresolved module or unlinked crate `test_utils`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `test_utils`, use `cargo add test_utils` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `test_utils`
[INFO] [stdout]  --> tests/inline_asm.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use test_utils::{check_compilation, Expected};
[INFO] [stdout]   |     ^^^^^^^^^^ use of unresolved module or unlinked crate `test_utils`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `test_utils`, use `cargo add test_utils` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `test_utils`
[INFO] [stdout]  --> tests/mutable.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use test_utils::{check_compilation, Expected};
[INFO] [stdout]   |     ^^^^^^^^^^ use of unresolved module or unlinked crate `test_utils`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `test_utils`, use `cargo add test_utils` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `y-lang` (test "mutable") due to 1 previous error
[INFO] [stderr] error: could not compile `y-lang` (test "inline_asm") due to 1 previous error
[INFO] [stdout] error[E0432]: unresolved import `test_utils`
[INFO] [stdout]  --> tests/loop.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use test_utils::{check_compilation, Expected};
[INFO] [stdout]   |     ^^^^^^^^^^ use of unresolved module or unlinked crate `test_utils`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `test_utils`, use `cargo add test_utils` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `test_utils`
[INFO] [stdout]  --> tests/print.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use test_utils::{check_compilation, Expected};
[INFO] [stdout]   |     ^^^^^^^^^^ use of unresolved module or unlinked crate `test_utils`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `test_utils`, use `cargo add test_utils` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `y-lang` (test "fib") due to 1 previous error
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `y-lang` (test "loop") due to 1 previous error
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `y-lang` (test "print") due to 1 previous error
[INFO] [stdout] warning: unused import: `self::parser::*`
[INFO] [stdout]   --> src/ast/mod.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub use self::parser::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast/binary_op.rs:17:29
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct UndefinedOpError(String);
[INFO] [stdout]    |            ---------------- ^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `UndefinedOpError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast/prefix_op.rs:12:35
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct UndefinedPrefixOpError(String);
[INFO] [stdout]    |            ---------------------- ^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `UndefinedPrefixOpError` 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 `0` is never read
[INFO] [stdout]   --> src/typechecker/variabletype.rs:28:31
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct VariableParseError(String);
[INFO] [stdout]    |            ------------------ ^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/ast/parser.rs:10:56
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn parse_program(file: impl ToString, program: &str) -> ParseResult<Pairs<Rule>> {
[INFO] [stdout]    |                                                        ^^^^                 ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                                        |
[INFO] [stdout]    |                                                        the lifetime is elided 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: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn parse_program(file: impl ToString, program: &str) -> ParseResult<Pairs<'_, Rule>> {
[INFO] [stdout]    |                                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary allocation, use `&` instead
[INFO] [stdout]    --> src/typechecker/variabletype.rs:131:40
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 if *other_item_type == Box::new(Char) {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_allocation)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary allocation, use `&` instead
[INFO] [stdout]    --> src/typechecker/variabletype.rs:140:34
[INFO] [stdout]     |
[INFO] [stdout] 140 |                 if *item_type == Box::new(Char) {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "cad432d2c537b0a1a6a5f39b605763499fb4910469448b30fc54e1c4e15b548d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cad432d2c537b0a1a6a5f39b605763499fb4910469448b30fc54e1c4e15b548d", kill_on_drop: false }`
[INFO] [stdout] cad432d2c537b0a1a6a5f39b605763499fb4910469448b30fc54e1c4e15b548d
