[INFO] cloning repository https://github.com/hi-brylle/crisp
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hi-brylle/crisp" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhi-brylle%2Fcrisp", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhi-brylle%2Fcrisp'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e1f5701691af23e59a2d0dbc8949cd5b12ae6c5a
[INFO] checking hi-brylle/crisp against master#642c19bfc3a5c1de985bf5d0cc8207ac9d22708a for pr-148577
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhi-brylle%2Fcrisp" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/hi-brylle/crisp
[INFO] finished tweaking git repo https://github.com/hi-brylle/crisp
[INFO] tweaked toml for git repo https://github.com/hi-brylle/crisp written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/hi-brylle/crisp on toolchain 642c19bfc3a5c1de985bf5d0cc8207ac9d22708a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/hi-brylle/crisp 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" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded pest_derive v2.7.14
[INFO] [stderr]   Downloaded pest_meta v2.7.14
[INFO] [stderr]   Downloaded pest v2.7.14
[INFO] [stderr]   Downloaded pest_generator v2.7.14
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 379e9f80edeba23330b53456ec1eb8867d839f4b1a461b6a3dc538c8bf01f369
[INFO] running `Command { std: "docker" "start" "-a" "379e9f80edeba23330b53456ec1eb8867d839f4b1a461b6a3dc538c8bf01f369", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "379e9f80edeba23330b53456ec1eb8867d839f4b1a461b6a3dc538c8bf01f369", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "379e9f80edeba23330b53456ec1eb8867d839f4b1a461b6a3dc538c8bf01f369", kill_on_drop: false }`
[INFO] [stdout] 379e9f80edeba23330b53456ec1eb8867d839f4b1a461b6a3dc538c8bf01f369
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2d75b2b7d3f6507ef10e0bd891eadf75a603e45473f68debca2f702670b0ee45
[INFO] running `Command { std: "docker" "start" "-a" "2d75b2b7d3f6507ef10e0bd891eadf75a603e45473f68debca2f702670b0ee45", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling once_cell v1.20.2
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling syn v2.0.90
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling pest v2.7.14
[INFO] [stderr]    Compiling pest_meta v2.7.14
[INFO] [stderr]    Compiling pest_generator v2.7.14
[INFO] [stderr]    Compiling pest_derive v2.7.14
[INFO] [stderr]     Checking crisp v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/parser.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 |             let mut children = pair.into_inner();
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/parser.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let mut function_body: FunctionBody = build_function_body_ast(children.next().unwrap());
[INFO] [stdout]     |         ----^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/parser.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |             let mut children = pair.into_inner();
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/parser.rs:187:17
[INFO] [stdout]     |
[INFO] [stdout] 187 |             let mut children = pair.into_inner();
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `statements` is never read
[INFO] [stdout]  --> src/ast.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct Program {
[INFO] [stdout]   |            ------- field in this struct
[INFO] [stdout] 3 |     pub statements: Vec<Statement>
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Program` 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.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 |     AssignmentStmt(Assignment),
[INFO] [stdout]   |     -------------- ^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[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] 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] 8 -     AssignmentStmt(Assignment),
[INFO] [stdout] 8 +     AssignmentStmt(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/ast.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 |     FunctionDefStmt(FunctionDefinition),
[INFO] [stdout]   |     --------------- ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[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] 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] 9 -     FunctionDefStmt(FunctionDefinition),
[INFO] [stdout] 9 +     FunctionDefStmt(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 |     PrintStmt(Print)
[INFO] [stdout]    |     --------- ^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 10 -     PrintStmt(Print)
[INFO] [stdout] 10 +     PrintStmt(())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `identifier`, `type_annotation`, `rhs`, and `start_pos` are never read
[INFO] [stdout]   --> src/ast.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Assignment {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 15 |     pub identifier: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 16 |     pub type_annotation: Option<TypeLiteral>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 17 |     pub rhs: ExpressionTerm,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 18 |     pub start_pos: usize
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Assignment` 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 `to_print` is never read
[INFO] [stdout]   --> src/ast.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct Print {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 23 |     pub to_print: Option<ExpressionTerm>
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Print` 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 `function_name`, `function_parameters`, `function_return_type`, and `function_body` are never read
[INFO] [stdout]   --> src/ast.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct FunctionDefinition {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] 28 |     pub function_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 29 |     pub function_parameters: Vec<FunctionParameter>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     pub function_return_type: TypeLiteral,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 31 |     pub function_body: FunctionBody
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FunctionDefinition` 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 `parameter_name` and `parameter_type` are never read
[INFO] [stdout]   --> src/ast.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct FunctionParameter {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] 36 |     pub parameter_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 37 |     pub parameter_type: TypeLiteral
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FunctionParameter` 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 `statements` and `return_expression_term` are never read
[INFO] [stdout]   --> src/ast.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct FunctionBody {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 42 |     pub statements: Vec<Statement>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 43 |     pub return_expression_term: Option<ExpressionTerm>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FunctionBody` 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 `expression` is never read
[INFO] [stdout]   --> src/ast.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct ExpressionTerm {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 56 |     pub expression: Expression
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExpressionTerm` 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/ast.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Number(f64),
[INFO] [stdout]    |     ------ ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 61 -     Number(f64),
[INFO] [stdout] 61 +     Number(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:62:14
[INFO] [stdout]    |
[INFO] [stdout] 62 |     Negative(Box<Expression>),
[INFO] [stdout]    |     -------- ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 62 -     Negative(Box<Expression>),
[INFO] [stdout] 62 +     Negative(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:63:10
[INFO] [stdout]    |
[INFO] [stdout] 63 |     Plus(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     ---- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 63 -     Plus(Box<Expression>, Box<Expression>),
[INFO] [stdout] 63 +     Plus((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:64:11
[INFO] [stdout]    |
[INFO] [stdout] 64 |     Minus(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     ----- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 64 -     Minus(Box<Expression>, Box<Expression>),
[INFO] [stdout] 64 +     Minus((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:65:11
[INFO] [stdout]    |
[INFO] [stdout] 65 |     Times(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     ----- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 65 -     Times(Box<Expression>, Box<Expression>),
[INFO] [stdout] 65 +     Times((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:66:12
[INFO] [stdout]    |
[INFO] [stdout] 66 |     Divide(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 66 -     Divide(Box<Expression>, Box<Expression>),
[INFO] [stdout] 66 +     Divide((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |     IsEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     ------- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 67 -     IsEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout] 67 +     IsEqual((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:68:14
[INFO] [stdout]    |
[INFO] [stdout] 68 |     NotEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     -------- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 68 -     NotEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout] 68 +     NotEqual((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:69:14
[INFO] [stdout]    |
[INFO] [stdout] 69 |     LessThan(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     -------- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 69 -     LessThan(Box<Expression>, Box<Expression>),
[INFO] [stdout] 69 +     LessThan((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 |     LessThanOrEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     --------------- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 70 -     LessThanOrEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout] 70 +     LessThanOrEqual((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |     GreaterThan(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     ----------- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 71 -     GreaterThan(Box<Expression>, Box<Expression>),
[INFO] [stdout] 71 +     GreaterThan((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:72:24
[INFO] [stdout]    |
[INFO] [stdout] 72 |     GreaterThanOrEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     ------------------ ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 72 -     GreaterThanOrEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout] 72 +     GreaterThanOrEqual((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |     Boolean(bool),
[INFO] [stdout]    |     ------- ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 74 -     Boolean(bool),
[INFO] [stdout] 74 +     Boolean(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |     Not(Box<Expression>),
[INFO] [stdout]    |     --- ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 75 -     Not(Box<Expression>),
[INFO] [stdout] 75 +     Not(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 |     Or(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     -- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 76 -     Or(Box<Expression>, Box<Expression>),
[INFO] [stdout] 76 +     Or((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |     And(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     --- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 77 -     And(Box<Expression>, Box<Expression>),
[INFO] [stdout] 77 +     And((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:79:11
[INFO] [stdout]    |
[INFO] [stdout] 79 |     Ident(Identifier),
[INFO] [stdout]    |     ----- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 79 -     Ident(Identifier),
[INFO] [stdout] 79 +     Ident(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |     FunctionCall(FunctionCall),
[INFO] [stdout]    |     ------------ ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 81 -     FunctionCall(FunctionCall),
[INFO] [stdout] 81 +     FunctionCall(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:83:22
[INFO] [stdout]    |
[INFO] [stdout] 83 |     IfElseExpression(IfElseExpression),
[INFO] [stdout]    |     ---------------- ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 83 -     IfElseExpression(IfElseExpression),
[INFO] [stdout] 83 +     IfElseExpression(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:85:19
[INFO] [stdout]    |
[INFO] [stdout] 85 |     StringLiteral(String)
[INFO] [stdout]    |     ------------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 85 -     StringLiteral(String)
[INFO] [stdout] 85 +     StringLiteral(())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `identifier_name` and `start_pos` are never read
[INFO] [stdout]   --> src/ast.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 89 | pub struct Identifier {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 90 |     pub identifier_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 91 |     pub start_pos: usize
[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 `function_name` and `function_arguments` are never read
[INFO] [stdout]   --> src/ast.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub struct FunctionCall {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 96 |     pub function_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 97 |     pub function_arguments: Vec<Expression>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FunctionCall` 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 `predicate`, `true_branch`, and `false_branch` are never read
[INFO] [stdout]    --> src/ast.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct IfElseExpression {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] 102 |     pub predicate: Box<Expression>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 103 |     pub true_branch: Box<Expression>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 104 |     pub false_branch: Box<Expression>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IfElseExpression` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/parser.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 |             let mut children = pair.into_inner();
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/parser.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let mut function_body: FunctionBody = build_function_body_ast(children.next().unwrap());
[INFO] [stdout]     |         ----^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/parser.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |             let mut children = pair.into_inner();
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/parser.rs:187:17
[INFO] [stdout]     |
[INFO] [stdout] 187 |             let mut children = pair.into_inner();
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `statements` is never read
[INFO] [stdout]  --> src/ast.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct Program {
[INFO] [stdout]   |            ------- field in this struct
[INFO] [stdout] 3 |     pub statements: Vec<Statement>
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Program` 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.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 |     AssignmentStmt(Assignment),
[INFO] [stdout]   |     -------------- ^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[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] 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] 8 -     AssignmentStmt(Assignment),
[INFO] [stdout] 8 +     AssignmentStmt(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/ast.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 |     FunctionDefStmt(FunctionDefinition),
[INFO] [stdout]   |     --------------- ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[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] 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] 9 -     FunctionDefStmt(FunctionDefinition),
[INFO] [stdout] 9 +     FunctionDefStmt(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 |     PrintStmt(Print)
[INFO] [stdout]    |     --------- ^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 10 -     PrintStmt(Print)
[INFO] [stdout] 10 +     PrintStmt(())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `identifier`, `type_annotation`, `rhs`, and `start_pos` are never read
[INFO] [stdout]   --> src/ast.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Assignment {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 15 |     pub identifier: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 16 |     pub type_annotation: Option<TypeLiteral>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 17 |     pub rhs: ExpressionTerm,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 18 |     pub start_pos: usize
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Assignment` 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 `to_print` is never read
[INFO] [stdout]   --> src/ast.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct Print {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 23 |     pub to_print: Option<ExpressionTerm>
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Print` 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 `function_name`, `function_parameters`, `function_return_type`, and `function_body` are never read
[INFO] [stdout]   --> src/ast.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct FunctionDefinition {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] 28 |     pub function_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 29 |     pub function_parameters: Vec<FunctionParameter>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     pub function_return_type: TypeLiteral,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 31 |     pub function_body: FunctionBody
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FunctionDefinition` 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 `parameter_name` and `parameter_type` are never read
[INFO] [stdout]   --> src/ast.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct FunctionParameter {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] 36 |     pub parameter_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 37 |     pub parameter_type: TypeLiteral
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FunctionParameter` 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 `statements` and `return_expression_term` are never read
[INFO] [stdout]   --> src/ast.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct FunctionBody {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 42 |     pub statements: Vec<Statement>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 43 |     pub return_expression_term: Option<ExpressionTerm>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FunctionBody` 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 `expression` is never read
[INFO] [stdout]   --> src/ast.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct ExpressionTerm {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 56 |     pub expression: Expression
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExpressionTerm` 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/ast.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Number(f64),
[INFO] [stdout]    |     ------ ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 61 -     Number(f64),
[INFO] [stdout] 61 +     Number(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:62:14
[INFO] [stdout]    |
[INFO] [stdout] 62 |     Negative(Box<Expression>),
[INFO] [stdout]    |     -------- ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 62 -     Negative(Box<Expression>),
[INFO] [stdout] 62 +     Negative(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:63:10
[INFO] [stdout]    |
[INFO] [stdout] 63 |     Plus(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     ---- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 63 -     Plus(Box<Expression>, Box<Expression>),
[INFO] [stdout] 63 +     Plus((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:64:11
[INFO] [stdout]    |
[INFO] [stdout] 64 |     Minus(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     ----- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 64 -     Minus(Box<Expression>, Box<Expression>),
[INFO] [stdout] 64 +     Minus((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:65:11
[INFO] [stdout]    |
[INFO] [stdout] 65 |     Times(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     ----- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 65 -     Times(Box<Expression>, Box<Expression>),
[INFO] [stdout] 65 +     Times((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:66:12
[INFO] [stdout]    |
[INFO] [stdout] 66 |     Divide(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 66 -     Divide(Box<Expression>, Box<Expression>),
[INFO] [stdout] 66 +     Divide((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |     IsEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     ------- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 67 -     IsEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout] 67 +     IsEqual((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:68:14
[INFO] [stdout]    |
[INFO] [stdout] 68 |     NotEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     -------- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 68 -     NotEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout] 68 +     NotEqual((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:69:14
[INFO] [stdout]    |
[INFO] [stdout] 69 |     LessThan(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     -------- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 69 -     LessThan(Box<Expression>, Box<Expression>),
[INFO] [stdout] 69 +     LessThan((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 |     LessThanOrEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     --------------- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 70 -     LessThanOrEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout] 70 +     LessThanOrEqual((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |     GreaterThan(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     ----------- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 71 -     GreaterThan(Box<Expression>, Box<Expression>),
[INFO] [stdout] 71 +     GreaterThan((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:72:24
[INFO] [stdout]    |
[INFO] [stdout] 72 |     GreaterThanOrEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     ------------------ ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 72 -     GreaterThanOrEqual(Box<Expression>, Box<Expression>),
[INFO] [stdout] 72 +     GreaterThanOrEqual((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |     Boolean(bool),
[INFO] [stdout]    |     ------- ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 74 -     Boolean(bool),
[INFO] [stdout] 74 +     Boolean(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |     Not(Box<Expression>),
[INFO] [stdout]    |     --- ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 75 -     Not(Box<Expression>),
[INFO] [stdout] 75 +     Not(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 |     Or(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     -- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 76 -     Or(Box<Expression>, Box<Expression>),
[INFO] [stdout] 76 +     Or((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ast.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |     And(Box<Expression>, Box<Expression>),
[INFO] [stdout]    |     --- ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[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] 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] 77 -     And(Box<Expression>, Box<Expression>),
[INFO] [stdout] 77 +     And((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:79:11
[INFO] [stdout]    |
[INFO] [stdout] 79 |     Ident(Identifier),
[INFO] [stdout]    |     ----- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 79 -     Ident(Identifier),
[INFO] [stdout] 79 +     Ident(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |     FunctionCall(FunctionCall),
[INFO] [stdout]    |     ------------ ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 81 -     FunctionCall(FunctionCall),
[INFO] [stdout] 81 +     FunctionCall(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:83:22
[INFO] [stdout]    |
[INFO] [stdout] 83 |     IfElseExpression(IfElseExpression),
[INFO] [stdout]    |     ---------------- ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 83 -     IfElseExpression(IfElseExpression),
[INFO] [stdout] 83 +     IfElseExpression(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:85:19
[INFO] [stdout]    |
[INFO] [stdout] 85 |     StringLiteral(String)
[INFO] [stdout]    |     ------------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[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] 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] 85 -     StringLiteral(String)
[INFO] [stdout] 85 +     StringLiteral(())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `identifier_name` and `start_pos` are never read
[INFO] [stdout]   --> src/ast.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 89 | pub struct Identifier {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 90 |     pub identifier_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 91 |     pub start_pos: usize
[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 `function_name` and `function_arguments` are never read
[INFO] [stdout]   --> src/ast.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub struct FunctionCall {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 96 |     pub function_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 97 |     pub function_arguments: Vec<Expression>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FunctionCall` 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 `predicate`, `true_branch`, and `false_branch` are never read
[INFO] [stdout]    --> src/ast.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct IfElseExpression {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] 102 |     pub predicate: Box<Expression>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 103 |     pub true_branch: Box<Expression>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 104 |     pub false_branch: Box<Expression>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IfElseExpression` 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 13.47s
[INFO] running `Command { std: "docker" "inspect" "2d75b2b7d3f6507ef10e0bd891eadf75a603e45473f68debca2f702670b0ee45", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2d75b2b7d3f6507ef10e0bd891eadf75a603e45473f68debca2f702670b0ee45", kill_on_drop: false }`
[INFO] [stdout] 2d75b2b7d3f6507ef10e0bd891eadf75a603e45473f68debca2f702670b0ee45
