[INFO] cloning repository https://github.com/jjwest/blixt
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jjwest/blixt" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjjwest%2Fblixt", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjjwest%2Fblixt'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b307d681d599af0139b0040c2edee4d415ffb8e4
[INFO] checking jjwest/blixt against master#b389b0ab72cb0aa9acf4df0ae0c0e12090782da9 for pr-128351-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjjwest%2Fblixt" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/jjwest/blixt on toolchain b389b0ab72cb0aa9acf4df0ae0c0e12090782da9
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/jjwest/blixt
[INFO] finished tweaking git repo https://github.com/jjwest/blixt
[INFO] tweaked toml for git repo https://github.com/jjwest/blixt written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/jjwest/blixt 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" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded copy_arena v0.1.1
[INFO] [stderr]   Downloaded hashbrown v0.1.8
[INFO] [stderr]   Downloaded byteorder v1.3.1
[INFO] [stderr]   Downloaded backtrace-sys v0.1.26
[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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] eaccd8d2a00e87f9d9e389659ecfb5fccdcecd908a99d3883ac5318040152834
[INFO] running `Command { std: "docker" "start" "-a" "eaccd8d2a00e87f9d9e389659ecfb5fccdcecd908a99d3883ac5318040152834", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "eaccd8d2a00e87f9d9e389659ecfb5fccdcecd908a99d3883ac5318040152834", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eaccd8d2a00e87f9d9e389659ecfb5fccdcecd908a99d3883ac5318040152834", kill_on_drop: false }`
[INFO] [stdout] eaccd8d2a00e87f9d9e389659ecfb5fccdcecd908a99d3883ac5318040152834
[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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3bfb9a31d72d9c09b0aa28640565cc5f276fea98fb16cfbbe56a2d3a8bf0284e
[INFO] running `Command { std: "docker" "start" "-a" "3bfb9a31d72d9c09b0aa28640565cc5f276fea98fb16cfbbe56a2d3a8bf0284e", kill_on_drop: false }`
[INFO] [stderr]    Compiling cc v1.0.28
[INFO] [stderr]    Compiling autocfg v0.1.1
[INFO] [stderr]    Compiling byteorder v1.3.1
[INFO] [stderr]     Checking rustc-demangle v0.1.11
[INFO] [stderr]     Checking copy_arena v0.1.1
[INFO] [stderr]    Compiling syn v0.15.23
[INFO] [stderr]    Compiling backtrace v0.3.13
[INFO] [stderr]     Checking hashbrown v0.1.8
[INFO] [stderr]    Compiling backtrace-sys v0.1.26
[INFO] [stderr]    Compiling synstructure v0.10.1
[INFO] [stderr]    Compiling failure_derive v0.1.3
[INFO] [stderr]     Checking failure v0.1.3
[INFO] [stderr]     Checking blixt v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `ArgList`, `AssignmentKind`, `Assignment`, `AstNodeId`, `Decl`, `For`, `If`, `Input`, `ParamList`, `Print`, `Return`, and `UnaryOp`
[INFO] [stdout]  --> src/typecheck.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     ArgList, Assignment, AssignmentKind, Ast, AstNodeId, BinaryOp,
[INFO] [stdout]   |     ^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^       ^^^^^^^^^
[INFO] [stdout] 5 |     BinaryOpKind, Decl, Expr, ExprKind, For, FunctionCall, FunctionDecl, If,
[INFO] [stdout]   |                   ^^^^                  ^^^                              ^^
[INFO] [stdout] 6 |     Input, ParamList, Print, Return, Stmt, StmtList, UnaryOp,
[INFO] [stdout]   |     ^^^^^  ^^^^^^^^^  ^^^^^  ^^^^^^                  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Value`
[INFO] [stdout]   --> src/typecheck.rs:11:25
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::primitives::{Value, ValueKind};
[INFO] [stdout]    |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ArgList`, `AssignmentKind`, `Assignment`, `AstNodeId`, `Decl`, `For`, `If`, `Input`, `ParamList`, `Print`, `Return`, and `UnaryOp`
[INFO] [stdout]  --> src/typecheck.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     ArgList, Assignment, AssignmentKind, Ast, AstNodeId, BinaryOp,
[INFO] [stdout]   |     ^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^       ^^^^^^^^^
[INFO] [stdout] 5 |     BinaryOpKind, Decl, Expr, ExprKind, For, FunctionCall, FunctionDecl, If,
[INFO] [stdout]   |                   ^^^^                  ^^^                              ^^
[INFO] [stdout] 6 |     Input, ParamList, Print, Return, Stmt, StmtList, UnaryOp,
[INFO] [stdout]   |     ^^^^^  ^^^^^^^^^  ^^^^^  ^^^^^^                  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Value`
[INFO] [stdout]   --> src/typecheck.rs:11:25
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::primitives::{Value, ValueKind};
[INFO] [stdout]    |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/typecheck.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `location`
[INFO] [stdout]    --> src/lexer.rs:155:25
[INFO] [stdout]     |
[INFO] [stdout] 155 |                     let location = self.make_location(start);
[INFO] [stdout]     |                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_location`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `location`
[INFO] [stdout]    --> src/lexer.rs:228:25
[INFO] [stdout]     |
[INFO] [stdout] 228 |                     let location = self.make_location(start);
[INFO] [stdout]     |                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_location`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `location`
[INFO] [stdout]    --> src/lexer.rs:155:25
[INFO] [stdout]     |
[INFO] [stdout] 155 |                     let location = self.make_location(start);
[INFO] [stdout]     |                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_location`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `location`
[INFO] [stdout]    --> src/lexer.rs:228:25
[INFO] [stdout]     |
[INFO] [stdout] 228 |                     let location = self.make_location(start);
[INFO] [stdout]     |                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_location`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:58:28
[INFO] [stdout]    |
[INFO] [stdout] 58 |                 Assignment(v) => unimplemented!(),
[INFO] [stdout]    |                            ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:59:23
[INFO] [stdout]    |
[INFO] [stdout] 59 |                 Block(v) => unimplemented!(),
[INFO] [stdout]    |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:60:22
[INFO] [stdout]    |
[INFO] [stdout] 60 |                 Decl(v) => unimplemented!(),
[INFO] [stdout]    |                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:62:21
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 For(v) => unimplemented!(),
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:63:23
[INFO] [stdout]    |
[INFO] [stdout] 63 |                 Print(v) => unimplemented!(),
[INFO] [stdout]    |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:64:20
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 If(v) => unimplemented!(),
[INFO] [stdout]    |                    ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:65:24
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 Return(v) => unimplemented!(),
[INFO] [stdout]    |                        ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:66:23
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 Param(v) => unimplemented!(),
[INFO] [stdout]    |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:58:28
[INFO] [stdout]    |
[INFO] [stdout] 58 |                 Assignment(v) => unimplemented!(),
[INFO] [stdout]    |                            ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:59:23
[INFO] [stdout]    |
[INFO] [stdout] 59 |                 Block(v) => unimplemented!(),
[INFO] [stdout]    |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:60:22
[INFO] [stdout]    |
[INFO] [stdout] 60 |                 Decl(v) => unimplemented!(),
[INFO] [stdout]    |                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:62:21
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 For(v) => unimplemented!(),
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:63:23
[INFO] [stdout]    |
[INFO] [stdout] 63 |                 Print(v) => unimplemented!(),
[INFO] [stdout]    |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:64:20
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 If(v) => unimplemented!(),
[INFO] [stdout]    |                    ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:65:24
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 Return(v) => unimplemented!(),
[INFO] [stdout]    |                        ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:66:23
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 Param(v) => unimplemented!(),
[INFO] [stdout]    |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `For` is never constructed
[INFO] [stdout]   --> src/ast.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Stmt {
[INFO] [stdout]    |          ---- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 23 |     For(For),
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Stmt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assignment` is never used
[INFO] [stdout]   --> src/ast.rs:43:11
[INFO] [stdout]    |
[INFO] [stdout] 32 |         impl Stmt {
[INFO] [stdout]    |         --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 43 | accessor!(assignment, Assignment, Stmt::Assignment(a), a);
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `accessor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `location` are never read
[INFO] [stdout]   --> src/ast.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct Return {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 48 |     pub value: Option<AstNodeId>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 49 |     pub location: Location,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Return` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:60:11
[INFO] [stdout]    |
[INFO] [stdout] 60 |     Float(f32),
[INFO] [stdout]    |     ----- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 60 |     Float(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Integer(i32),
[INFO] [stdout]    |     ------- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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 |     Integer(()),
[INFO] [stdout]    |             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:62:19
[INFO] [stdout]    |
[INFO] [stdout] 62 |     StringLiteral(Symbol),
[INFO] [stdout]    |     ------------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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 |     StringLiteral(()),
[INFO] [stdout]    |                   ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:65:11
[INFO] [stdout]    |
[INFO] [stdout] 65 |     Input(Input),
[INFO] [stdout]    |     ----- ^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 65 |     Input(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:66:10
[INFO] [stdout]    |
[INFO] [stdout] 66 |     Bool(bool),
[INFO] [stdout]    |     ---- ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 66 |     Bool(()),
[INFO] [stdout]    |          ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |     UnaryOp(UnaryOp),
[INFO] [stdout]    |     ------- ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 67 |     UnaryOp(()),
[INFO] [stdout]    |             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:69:18
[INFO] [stdout]    |
[INFO] [stdout] 69 |     FunctionCall(FunctionCall),
[INFO] [stdout]    |     ------------ ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 69 |     FunctionCall(()),
[INFO] [stdout]    |                  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Range` is never constructed
[INFO] [stdout]   --> src/ast.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub enum ExprKind {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 64 |     Range(Range),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ident`, `value`, `op`, and `location` are never read
[INFO] [stdout]   --> src/ast.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct Assignment {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 74 |     pub ident: Symbol,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 75 |     pub value: AstNodeId,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 76 |     pub op: AssignmentKind,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 77 |     pub location: Location,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Assignment` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `op` are never read
[INFO] [stdout]   --> src/ast.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub struct UnaryOp {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 92 |     pub value: AstNodeId,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 93 |     pub op: UnaryOpKind,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UnaryOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:131:14
[INFO] [stdout]     |
[INFO] [stdout] 131 |     Variable(VarDecl),
[INFO] [stdout]     |     -------- ^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Decl` has derived impls for the traits `Clone` and `Debug`, but these are 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] 131 |     Variable(()),
[INFO] [stdout]     |              ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:132:14
[INFO] [stdout]     |
[INFO] [stdout] 132 |     Function(FunctionDecl),
[INFO] [stdout]     |     -------- ^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Decl` has derived impls for the traits `Clone` and `Debug`, but these are 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] 132 |     Function(()),
[INFO] [stdout]     |              ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:133:12
[INFO] [stdout]     |
[INFO] [stdout] 133 |     Struct(StructDecl),
[INFO] [stdout]     |     ------ ^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Decl` has derived impls for the traits `Clone` and `Debug`, but these are 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] 133 |     Struct(()),
[INFO] [stdout]     |            ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `value`, and `kind` are never read
[INFO] [stdout]    --> src/ast.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct VarDecl {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 138 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 139 |     pub value: AstNodeId,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 140 |     pub kind: ValueKind,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VarDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `fields` are never read
[INFO] [stdout]    --> src/ast.rs:145:9
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub struct StructDecl {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 145 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 146 |     pub fields: Vec<AstNodeId>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StructDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `body`, `params`, and `return_type` are never read
[INFO] [stdout]    --> src/ast.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub struct FunctionDecl {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 151 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 152 |     pub body: StmtList,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 153 |     pub params: Vec<AstNodeId>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 154 |     pub return_type: Option<ValueKind>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FunctionDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `kind` are never read
[INFO] [stdout]    --> src/ast.rs:159:9
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub struct Param {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] 159 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 160 |     pub kind: ValueKind,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Param` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `cond`, `body`, and `else_body` are never read
[INFO] [stdout]    --> src/ast.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub struct If {
[INFO] [stdout]     |            -- fields in this struct
[INFO] [stdout] 165 |     pub cond: AstNodeId,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 166 |     pub body: StmtList,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 167 |     pub else_body: Option<StmtList>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `If` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ident`, `range`, and `block` are never read
[INFO] [stdout]    --> src/ast.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 171 | pub struct For {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] 172 |     pub ident: Symbol,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 173 |     pub range: Range,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 174 |     pub block: StmtList,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `For` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start` and `end` are never read
[INFO] [stdout]    --> src/ast.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub struct Range {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] 179 |     pub start: i32,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 180 |     pub end: i32,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Range` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `args` are never read
[INFO] [stdout]    --> src/ast.rs:185:9
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub struct FunctionCall {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 185 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 186 |     pub args: Vec<AstNodeId>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FunctionCall` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `args` is never read
[INFO] [stdout]    --> src/ast.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 190 | pub struct Print {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 191 |     pub args: ArgList,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Print` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `message` is never read
[INFO] [stdout]    --> src/ast.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub struct Input {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 196 |     pub message: Option<AstNodeId>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Input` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Bool`, `Int`, `Float`, `String`, `Struct`, and `Nil` are never constructed
[INFO] [stdout]   --> src/primitives.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum Value {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 20 |     Bool(bool),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 21 |     Int(i32),
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 22 |     Float(f32),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     String(Symbol),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 24 |     Struct(Symbol),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 25 |     Nil,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Value` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `functions`, `user_defined_types`, and `level` are never read
[INFO] [stdout]   --> src/scope.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct InnerScope {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 13 |     functions: HashMap<Symbol, AstNodeId>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 14 |     user_defined_types: HashMap<Symbol, AstNodeId>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     variables: Vec<Variable>,
[INFO] [stdout] 16 |     level: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `For` is never constructed
[INFO] [stdout]   --> src/ast.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Stmt {
[INFO] [stdout]    |          ---- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 23 |     For(For),
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Stmt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `defined_in_scope_level` are never read
[INFO] [stdout]   --> src/scope.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Variable {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub value: Value,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 36 |     pub defined_in_scope_level: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assignment` is never used
[INFO] [stdout]   --> src/ast.rs:43:11
[INFO] [stdout]    |
[INFO] [stdout] 32 |         impl Stmt {
[INFO] [stdout]    |         --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 43 | accessor!(assignment, Assignment, Stmt::Assignment(a), a);
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `accessor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/scope.rs:47:12
[INFO] [stdout]     |
[INFO] [stdout] 39  | impl Scope {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47  |     pub fn push_scope(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52  |     pub fn pop_scope(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57  |     pub fn new_scope_level(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61  |     pub fn pop_scope_level(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70  |     pub fn add_variable(
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn get_variable_mut(&mut self, name: Symbol) -> Option<&mut Variable> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn add_function(&mut self, name: Symbol, decl: AstNodeId) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn get_function(&mut self, name: Symbol) -> Option<AstNodeId> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn add_struct(&mut self, name: Symbol, decl: AstNodeId) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn get_struct(&mut self, name: Symbol) -> Option<AstNodeId> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `location` are never read
[INFO] [stdout]   --> src/ast.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct Return {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 48 |     pub value: Option<AstNodeId>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 49 |     pub location: Location,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Return` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `deferred_function_calls` and `current_function` are never read
[INFO] [stdout]   --> src/typecheck.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct Typechecker<'ctxt> {
[INFO] [stdout]    |        ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 40 |     deferred_function_calls: Vec<FunctionCall>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 41 |     current_function: Option<FunctionDecl>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:60:11
[INFO] [stdout]    |
[INFO] [stdout] 60 |     Float(f32),
[INFO] [stdout]    |     ----- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 60 |     Float(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Integer(i32),
[INFO] [stdout]    |     ------- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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 |     Integer(()),
[INFO] [stdout]    |             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:62:19
[INFO] [stdout]    |
[INFO] [stdout] 62 |     StringLiteral(Symbol),
[INFO] [stdout]    |     ------------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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 |     StringLiteral(()),
[INFO] [stdout]    |                   ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:65:11
[INFO] [stdout]    |
[INFO] [stdout] 65 |     Input(Input),
[INFO] [stdout]    |     ----- ^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 65 |     Input(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:66:10
[INFO] [stdout]    |
[INFO] [stdout] 66 |     Bool(bool),
[INFO] [stdout]    |     ---- ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 66 |     Bool(()),
[INFO] [stdout]    |          ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |     UnaryOp(UnaryOp),
[INFO] [stdout]    |     ------- ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 67 |     UnaryOp(()),
[INFO] [stdout]    |             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:69:18
[INFO] [stdout]    |
[INFO] [stdout] 69 |     FunctionCall(FunctionCall),
[INFO] [stdout]    |     ------------ ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 69 |     FunctionCall(()),
[INFO] [stdout]    |                  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Range` is never constructed
[INFO] [stdout]   --> src/ast.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub enum ExprKind {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 64 |     Range(Range),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ident`, `value`, `op`, and `location` are never read
[INFO] [stdout]   --> src/ast.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct Assignment {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 74 |     pub ident: Symbol,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 75 |     pub value: AstNodeId,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 76 |     pub op: AssignmentKind,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 77 |     pub location: Location,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Assignment` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `op` are never read
[INFO] [stdout]   --> src/ast.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub struct UnaryOp {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 92 |     pub value: AstNodeId,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 93 |     pub op: UnaryOpKind,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UnaryOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:131:14
[INFO] [stdout]     |
[INFO] [stdout] 131 |     Variable(VarDecl),
[INFO] [stdout]     |     -------- ^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Decl` has derived impls for the traits `Clone` and `Debug`, but these are 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] 131 |     Variable(()),
[INFO] [stdout]     |              ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:132:14
[INFO] [stdout]     |
[INFO] [stdout] 132 |     Function(FunctionDecl),
[INFO] [stdout]     |     -------- ^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Decl` has derived impls for the traits `Clone` and `Debug`, but these are 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] 132 |     Function(()),
[INFO] [stdout]     |              ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:133:12
[INFO] [stdout]     |
[INFO] [stdout] 133 |     Struct(StructDecl),
[INFO] [stdout]     |     ------ ^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Decl` has derived impls for the traits `Clone` and `Debug`, but these are 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] 133 |     Struct(()),
[INFO] [stdout]     |            ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `value`, and `kind` are never read
[INFO] [stdout]    --> src/ast.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct VarDecl {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 138 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 139 |     pub value: AstNodeId,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 140 |     pub kind: ValueKind,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VarDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `fields` are never read
[INFO] [stdout]    --> src/ast.rs:145:9
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub struct StructDecl {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 145 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 146 |     pub fields: Vec<AstNodeId>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StructDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `body`, `params`, and `return_type` are never read
[INFO] [stdout]    --> src/ast.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub struct FunctionDecl {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 151 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 152 |     pub body: StmtList,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 153 |     pub params: Vec<AstNodeId>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 154 |     pub return_type: Option<ValueKind>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FunctionDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `kind` are never read
[INFO] [stdout]    --> src/ast.rs:159:9
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub struct Param {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] 159 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 160 |     pub kind: ValueKind,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Param` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `cond`, `body`, and `else_body` are never read
[INFO] [stdout]    --> src/ast.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub struct If {
[INFO] [stdout]     |            -- fields in this struct
[INFO] [stdout] 165 |     pub cond: AstNodeId,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 166 |     pub body: StmtList,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 167 |     pub else_body: Option<StmtList>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `If` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ident`, `range`, and `block` are never read
[INFO] [stdout]    --> src/ast.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 171 | pub struct For {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] 172 |     pub ident: Symbol,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 173 |     pub range: Range,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 174 |     pub block: StmtList,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `For` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start` and `end` are never read
[INFO] [stdout]    --> src/ast.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub struct Range {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] 179 |     pub start: i32,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 180 |     pub end: i32,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Range` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `args` are never read
[INFO] [stdout]    --> src/ast.rs:185:9
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub struct FunctionCall {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 185 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 186 |     pub args: Vec<AstNodeId>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FunctionCall` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `args` is never read
[INFO] [stdout]    --> src/ast.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 190 | pub struct Print {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 191 |     pub args: ArgList,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Print` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `message` is never read
[INFO] [stdout]    --> src/ast.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub struct Input {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 196 |     pub message: Option<AstNodeId>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Input` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Bool`, `Int`, `Float`, `String`, `Struct`, and `Nil` are never constructed
[INFO] [stdout]   --> src/primitives.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum Value {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 20 |     Bool(bool),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 21 |     Int(i32),
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 22 |     Float(f32),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     String(Symbol),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 24 |     Struct(Symbol),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 25 |     Nil,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Value` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `functions`, `user_defined_types`, and `level` are never read
[INFO] [stdout]   --> src/scope.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct InnerScope {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 13 |     functions: HashMap<Symbol, AstNodeId>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 14 |     user_defined_types: HashMap<Symbol, AstNodeId>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     variables: Vec<Variable>,
[INFO] [stdout] 16 |     level: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `defined_in_scope_level` are never read
[INFO] [stdout]   --> src/scope.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Variable {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub value: Value,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 36 |     pub defined_in_scope_level: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/scope.rs:47:12
[INFO] [stdout]     |
[INFO] [stdout] 39  | impl Scope {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47  |     pub fn push_scope(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52  |     pub fn pop_scope(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57  |     pub fn new_scope_level(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61  |     pub fn pop_scope_level(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70  |     pub fn add_variable(
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn get_variable_mut(&mut self, name: Symbol) -> Option<&mut Variable> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn add_function(&mut self, name: Symbol, decl: AstNodeId) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn get_function(&mut self, name: Symbol) -> Option<AstNodeId> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn add_struct(&mut self, name: Symbol, decl: AstNodeId) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn get_struct(&mut self, name: Symbol) -> Option<AstNodeId> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `deferred_function_calls` and `current_function` are never read
[INFO] [stdout]   --> src/typecheck.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct Typechecker<'ctxt> {
[INFO] [stdout]    |        ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 40 |     deferred_function_calls: Vec<FunctionCall>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 41 |     current_function: Option<FunctionDecl>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 43 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 44 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.63s
[INFO] running `Command { std: "docker" "inspect" "3bfb9a31d72d9c09b0aa28640565cc5f276fea98fb16cfbbe56a2d3a8bf0284e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3bfb9a31d72d9c09b0aa28640565cc5f276fea98fb16cfbbe56a2d3a8bf0284e", kill_on_drop: false }`
[INFO] [stdout] 3bfb9a31d72d9c09b0aa28640565cc5f276fea98fb16cfbbe56a2d3a8bf0284e
[INFO] checking jjwest/blixt against try#16d823b1c168ce52c66ccc00dfd686f775a45c65 for pr-128351-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjjwest%2Fblixt" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/jjwest/blixt on toolchain 16d823b1c168ce52c66ccc00dfd686f775a45c65
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+16d823b1c168ce52c66ccc00dfd686f775a45c65" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/jjwest/blixt
[INFO] finished tweaking git repo https://github.com/jjwest/blixt
[INFO] tweaked toml for git repo https://github.com/jjwest/blixt written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/jjwest/blixt 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" "+16d823b1c168ce52c66ccc00dfd686f775a45c65" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+16d823b1c168ce52c66ccc00dfd686f775a45c65" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 62a4e5ffd90538d789da2351534feebeda29fbdc2e05648b420fded715eaee45
[INFO] running `Command { std: "docker" "start" "-a" "62a4e5ffd90538d789da2351534feebeda29fbdc2e05648b420fded715eaee45", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "62a4e5ffd90538d789da2351534feebeda29fbdc2e05648b420fded715eaee45", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "62a4e5ffd90538d789da2351534feebeda29fbdc2e05648b420fded715eaee45", kill_on_drop: false }`
[INFO] [stdout] 62a4e5ffd90538d789da2351534feebeda29fbdc2e05648b420fded715eaee45
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+16d823b1c168ce52c66ccc00dfd686f775a45c65" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6d7fa023177c70c5395acae2676dada29c26073a1e9e9f134a4f9c6ef77feb1e
[INFO] running `Command { std: "docker" "start" "-a" "6d7fa023177c70c5395acae2676dada29c26073a1e9e9f134a4f9c6ef77feb1e", kill_on_drop: false }`
[INFO] [stderr]    Compiling cc v1.0.28
[INFO] [stderr]    Compiling autocfg v0.1.1
[INFO] [stderr]    Compiling byteorder v1.3.1
[INFO] [stderr]     Checking rustc-demangle v0.1.11
[INFO] [stderr]     Checking copy_arena v0.1.1
[INFO] [stderr]    Compiling syn v0.15.23
[INFO] [stderr]    Compiling backtrace v0.3.13
[INFO] [stderr]     Checking hashbrown v0.1.8
[INFO] [stderr]    Compiling backtrace-sys v0.1.26
[INFO] [stderr]    Compiling synstructure v0.10.1
[INFO] [stderr]    Compiling failure_derive v0.1.3
[INFO] [stderr]     Checking failure v0.1.3
[INFO] [stderr]     Checking blixt v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `ArgList`, `AssignmentKind`, `Assignment`, `AstNodeId`, `Decl`, `For`, `If`, `Input`, `ParamList`, `Print`, `Return`, and `UnaryOp`
[INFO] [stdout]  --> src/typecheck.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     ArgList, Assignment, AssignmentKind, Ast, AstNodeId, BinaryOp,
[INFO] [stdout]   |     ^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^       ^^^^^^^^^
[INFO] [stdout] 5 |     BinaryOpKind, Decl, Expr, ExprKind, For, FunctionCall, FunctionDecl, If,
[INFO] [stdout]   |                   ^^^^                  ^^^                              ^^
[INFO] [stdout] 6 |     Input, ParamList, Print, Return, Stmt, StmtList, UnaryOp,
[INFO] [stdout]   |     ^^^^^  ^^^^^^^^^  ^^^^^  ^^^^^^                  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Value`
[INFO] [stdout]   --> src/typecheck.rs:11:25
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::primitives::{Value, ValueKind};
[INFO] [stdout]    |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ArgList`, `AssignmentKind`, `Assignment`, `AstNodeId`, `Decl`, `For`, `If`, `Input`, `ParamList`, `Print`, `Return`, and `UnaryOp`
[INFO] [stdout]  --> src/typecheck.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     ArgList, Assignment, AssignmentKind, Ast, AstNodeId, BinaryOp,
[INFO] [stdout]   |     ^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^       ^^^^^^^^^
[INFO] [stdout] 5 |     BinaryOpKind, Decl, Expr, ExprKind, For, FunctionCall, FunctionDecl, If,
[INFO] [stdout]   |                   ^^^^                  ^^^                              ^^
[INFO] [stdout] 6 |     Input, ParamList, Print, Return, Stmt, StmtList, UnaryOp,
[INFO] [stdout]   |     ^^^^^  ^^^^^^^^^  ^^^^^  ^^^^^^                  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Value`
[INFO] [stdout]   --> src/typecheck.rs:11:25
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::primitives::{Value, ValueKind};
[INFO] [stdout]    |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/typecheck.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `location`
[INFO] [stdout]    --> src/lexer.rs:155:25
[INFO] [stdout]     |
[INFO] [stdout] 155 |                     let location = self.make_location(start);
[INFO] [stdout]     |                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_location`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `location`
[INFO] [stdout]    --> src/lexer.rs:228:25
[INFO] [stdout]     |
[INFO] [stdout] 228 |                     let location = self.make_location(start);
[INFO] [stdout]     |                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_location`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `location`
[INFO] [stdout]    --> src/lexer.rs:155:25
[INFO] [stdout]     |
[INFO] [stdout] 155 |                     let location = self.make_location(start);
[INFO] [stdout]     |                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_location`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `location`
[INFO] [stdout]    --> src/lexer.rs:228:25
[INFO] [stdout]     |
[INFO] [stdout] 228 |                     let location = self.make_location(start);
[INFO] [stdout]     |                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_location`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:58:28
[INFO] [stdout]    |
[INFO] [stdout] 58 |                 Assignment(v) => unimplemented!(),
[INFO] [stdout]    |                            ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:59:23
[INFO] [stdout]    |
[INFO] [stdout] 59 |                 Block(v) => unimplemented!(),
[INFO] [stdout]    |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:60:22
[INFO] [stdout]    |
[INFO] [stdout] 60 |                 Decl(v) => unimplemented!(),
[INFO] [stdout]    |                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:62:21
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 For(v) => unimplemented!(),
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:63:23
[INFO] [stdout]    |
[INFO] [stdout] 63 |                 Print(v) => unimplemented!(),
[INFO] [stdout]    |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:64:20
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 If(v) => unimplemented!(),
[INFO] [stdout]    |                    ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:65:24
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 Return(v) => unimplemented!(),
[INFO] [stdout]    |                        ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:66:23
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 Param(v) => unimplemented!(),
[INFO] [stdout]    |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `For` is never constructed
[INFO] [stdout]   --> src/ast.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Stmt {
[INFO] [stdout]    |          ---- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 23 |     For(For),
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Stmt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assignment` is never used
[INFO] [stdout]   --> src/ast.rs:43:11
[INFO] [stdout]    |
[INFO] [stdout] 32 |         impl Stmt {
[INFO] [stdout]    |         --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 43 | accessor!(assignment, Assignment, Stmt::Assignment(a), a);
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `accessor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `location` are never read
[INFO] [stdout]   --> src/ast.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct Return {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 48 |     pub value: Option<AstNodeId>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 49 |     pub location: Location,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Return` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:60:11
[INFO] [stdout]    |
[INFO] [stdout] 60 |     Float(f32),
[INFO] [stdout]    |     ----- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 60 |     Float(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Integer(i32),
[INFO] [stdout]    |     ------- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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 |     Integer(()),
[INFO] [stdout]    |             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:62:19
[INFO] [stdout]    |
[INFO] [stdout] 62 |     StringLiteral(Symbol),
[INFO] [stdout]    |     ------------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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 |     StringLiteral(()),
[INFO] [stdout]    |                   ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:65:11
[INFO] [stdout]    |
[INFO] [stdout] 65 |     Input(Input),
[INFO] [stdout]    |     ----- ^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 65 |     Input(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:66:10
[INFO] [stdout]    |
[INFO] [stdout] 66 |     Bool(bool),
[INFO] [stdout]    |     ---- ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 66 |     Bool(()),
[INFO] [stdout]    |          ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |     UnaryOp(UnaryOp),
[INFO] [stdout]    |     ------- ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 67 |     UnaryOp(()),
[INFO] [stdout]    |             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:69:18
[INFO] [stdout]    |
[INFO] [stdout] 69 |     FunctionCall(FunctionCall),
[INFO] [stdout]    |     ------------ ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 69 |     FunctionCall(()),
[INFO] [stdout]    |                  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Range` is never constructed
[INFO] [stdout]   --> src/ast.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub enum ExprKind {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 64 |     Range(Range),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:58:28
[INFO] [stdout]    |
[INFO] [stdout] 58 |                 Assignment(v) => unimplemented!(),
[INFO] [stdout]    |                            ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:59:23
[INFO] [stdout]    |
[INFO] [stdout] 59 |                 Block(v) => unimplemented!(),
[INFO] [stdout]    |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:60:22
[INFO] [stdout]    |
[INFO] [stdout] 60 |                 Decl(v) => unimplemented!(),
[INFO] [stdout]    |                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ident`, `value`, `op`, and `location` are never read
[INFO] [stdout]   --> src/ast.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct Assignment {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 74 |     pub ident: Symbol,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 75 |     pub value: AstNodeId,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 76 |     pub op: AssignmentKind,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 77 |     pub location: Location,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Assignment` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:62:21
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 For(v) => unimplemented!(),
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:63:23
[INFO] [stdout]    |
[INFO] [stdout] 63 |                 Print(v) => unimplemented!(),
[INFO] [stdout]    |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:64:20
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 If(v) => unimplemented!(),
[INFO] [stdout]    |                    ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:65:24
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 Return(v) => unimplemented!(),
[INFO] [stdout]    |                        ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/typecheck.rs:66:23
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 Param(v) => unimplemented!(),
[INFO] [stdout]    |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `op` are never read
[INFO] [stdout]   --> src/ast.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub struct UnaryOp {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 92 |     pub value: AstNodeId,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 93 |     pub op: UnaryOpKind,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UnaryOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:131:14
[INFO] [stdout]     |
[INFO] [stdout] 131 |     Variable(VarDecl),
[INFO] [stdout]     |     -------- ^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Decl` has derived impls for the traits `Clone` and `Debug`, but these are 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] 131 |     Variable(()),
[INFO] [stdout]     |              ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:132:14
[INFO] [stdout]     |
[INFO] [stdout] 132 |     Function(FunctionDecl),
[INFO] [stdout]     |     -------- ^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Decl` has derived impls for the traits `Clone` and `Debug`, but these are 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] 132 |     Function(()),
[INFO] [stdout]     |              ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:133:12
[INFO] [stdout]     |
[INFO] [stdout] 133 |     Struct(StructDecl),
[INFO] [stdout]     |     ------ ^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Decl` has derived impls for the traits `Clone` and `Debug`, but these are 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] 133 |     Struct(()),
[INFO] [stdout]     |            ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `value`, and `kind` are never read
[INFO] [stdout]    --> src/ast.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct VarDecl {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 138 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 139 |     pub value: AstNodeId,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 140 |     pub kind: ValueKind,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VarDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `fields` are never read
[INFO] [stdout]    --> src/ast.rs:145:9
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub struct StructDecl {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 145 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 146 |     pub fields: Vec<AstNodeId>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StructDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `body`, `params`, and `return_type` are never read
[INFO] [stdout]    --> src/ast.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub struct FunctionDecl {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 151 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 152 |     pub body: StmtList,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 153 |     pub params: Vec<AstNodeId>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 154 |     pub return_type: Option<ValueKind>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FunctionDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `kind` are never read
[INFO] [stdout]    --> src/ast.rs:159:9
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub struct Param {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] 159 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 160 |     pub kind: ValueKind,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Param` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `cond`, `body`, and `else_body` are never read
[INFO] [stdout]    --> src/ast.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub struct If {
[INFO] [stdout]     |            -- fields in this struct
[INFO] [stdout] 165 |     pub cond: AstNodeId,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 166 |     pub body: StmtList,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 167 |     pub else_body: Option<StmtList>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `If` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ident`, `range`, and `block` are never read
[INFO] [stdout]    --> src/ast.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 171 | pub struct For {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] 172 |     pub ident: Symbol,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 173 |     pub range: Range,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 174 |     pub block: StmtList,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `For` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start` and `end` are never read
[INFO] [stdout]    --> src/ast.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub struct Range {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] 179 |     pub start: i32,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 180 |     pub end: i32,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Range` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `args` are never read
[INFO] [stdout]    --> src/ast.rs:185:9
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub struct FunctionCall {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 185 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 186 |     pub args: Vec<AstNodeId>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FunctionCall` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `args` is never read
[INFO] [stdout]    --> src/ast.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 190 | pub struct Print {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 191 |     pub args: ArgList,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Print` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `message` is never read
[INFO] [stdout]    --> src/ast.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub struct Input {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 196 |     pub message: Option<AstNodeId>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Input` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Bool`, `Int`, `Float`, `String`, `Struct`, and `Nil` are never constructed
[INFO] [stdout]   --> src/primitives.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum Value {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 20 |     Bool(bool),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 21 |     Int(i32),
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 22 |     Float(f32),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     String(Symbol),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 24 |     Struct(Symbol),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 25 |     Nil,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Value` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `functions`, `user_defined_types`, and `level` are never read
[INFO] [stdout]   --> src/scope.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct InnerScope {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 13 |     functions: HashMap<Symbol, AstNodeId>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 14 |     user_defined_types: HashMap<Symbol, AstNodeId>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     variables: Vec<Variable>,
[INFO] [stdout] 16 |     level: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `defined_in_scope_level` are never read
[INFO] [stdout]   --> src/scope.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Variable {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub value: Value,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 36 |     pub defined_in_scope_level: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/scope.rs:47:12
[INFO] [stdout]     |
[INFO] [stdout] 39  | impl Scope {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47  |     pub fn push_scope(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52  |     pub fn pop_scope(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57  |     pub fn new_scope_level(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61  |     pub fn pop_scope_level(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70  |     pub fn add_variable(
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn get_variable_mut(&mut self, name: Symbol) -> Option<&mut Variable> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn add_function(&mut self, name: Symbol, decl: AstNodeId) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn get_function(&mut self, name: Symbol) -> Option<AstNodeId> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn add_struct(&mut self, name: Symbol, decl: AstNodeId) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn get_struct(&mut self, name: Symbol) -> Option<AstNodeId> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `deferred_function_calls` and `current_function` are never read
[INFO] [stdout]   --> src/typecheck.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct Typechecker<'ctxt> {
[INFO] [stdout]    |        ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 40 |     deferred_function_calls: Vec<FunctionCall>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 41 |     current_function: Option<FunctionDecl>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `For` is never constructed
[INFO] [stdout]   --> src/ast.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Stmt {
[INFO] [stdout]    |          ---- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 23 |     For(For),
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Stmt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assignment` is never used
[INFO] [stdout]   --> src/ast.rs:43:11
[INFO] [stdout]    |
[INFO] [stdout] 32 |         impl Stmt {
[INFO] [stdout]    |         --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 43 | accessor!(assignment, Assignment, Stmt::Assignment(a), a);
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `accessor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `location` are never read
[INFO] [stdout]   --> src/ast.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct Return {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 48 |     pub value: Option<AstNodeId>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 49 |     pub location: Location,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Return` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:60:11
[INFO] [stdout]    |
[INFO] [stdout] 60 |     Float(f32),
[INFO] [stdout]    |     ----- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 60 |     Float(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Integer(i32),
[INFO] [stdout]    |     ------- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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 |     Integer(()),
[INFO] [stdout]    |             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:62:19
[INFO] [stdout]    |
[INFO] [stdout] 62 |     StringLiteral(Symbol),
[INFO] [stdout]    |     ------------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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 |     StringLiteral(()),
[INFO] [stdout]    |                   ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:65:11
[INFO] [stdout]    |
[INFO] [stdout] 65 |     Input(Input),
[INFO] [stdout]    |     ----- ^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 65 |     Input(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:66:10
[INFO] [stdout]    |
[INFO] [stdout] 66 |     Bool(bool),
[INFO] [stdout]    |     ---- ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 66 |     Bool(()),
[INFO] [stdout]    |          ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |     UnaryOp(UnaryOp),
[INFO] [stdout]    |     ------- ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 67 |     UnaryOp(()),
[INFO] [stdout]    |             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:69:18
[INFO] [stdout]    |
[INFO] [stdout] 69 |     FunctionCall(FunctionCall),
[INFO] [stdout]    |     ------------ ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are 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] 69 |     FunctionCall(()),
[INFO] [stdout]    |                  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Range` is never constructed
[INFO] [stdout]   --> src/ast.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub enum ExprKind {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 64 |     Range(Range),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ident`, `value`, `op`, and `location` are never read
[INFO] [stdout]   --> src/ast.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct Assignment {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 74 |     pub ident: Symbol,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 75 |     pub value: AstNodeId,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 76 |     pub op: AssignmentKind,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 77 |     pub location: Location,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Assignment` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `op` are never read
[INFO] [stdout]   --> src/ast.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub struct UnaryOp {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 92 |     pub value: AstNodeId,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 93 |     pub op: UnaryOpKind,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UnaryOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:131:14
[INFO] [stdout]     |
[INFO] [stdout] 131 |     Variable(VarDecl),
[INFO] [stdout]     |     -------- ^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Decl` has derived impls for the traits `Clone` and `Debug`, but these are 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] 131 |     Variable(()),
[INFO] [stdout]     |              ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:132:14
[INFO] [stdout]     |
[INFO] [stdout] 132 |     Function(FunctionDecl),
[INFO] [stdout]     |     -------- ^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Decl` has derived impls for the traits `Clone` and `Debug`, but these are 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] 132 |     Function(()),
[INFO] [stdout]     |              ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:133:12
[INFO] [stdout]     |
[INFO] [stdout] 133 |     Struct(StructDecl),
[INFO] [stdout]     |     ------ ^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Decl` has derived impls for the traits `Clone` and `Debug`, but these are 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] 133 |     Struct(()),
[INFO] [stdout]     |            ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `value`, and `kind` are never read
[INFO] [stdout]    --> src/ast.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct VarDecl {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 138 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 139 |     pub value: AstNodeId,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 140 |     pub kind: ValueKind,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VarDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `fields` are never read
[INFO] [stdout]    --> src/ast.rs:145:9
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub struct StructDecl {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 145 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 146 |     pub fields: Vec<AstNodeId>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StructDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `body`, `params`, and `return_type` are never read
[INFO] [stdout]    --> src/ast.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub struct FunctionDecl {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 151 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 152 |     pub body: StmtList,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 153 |     pub params: Vec<AstNodeId>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 154 |     pub return_type: Option<ValueKind>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FunctionDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `kind` are never read
[INFO] [stdout]    --> src/ast.rs:159:9
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub struct Param {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] 159 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 160 |     pub kind: ValueKind,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Param` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `cond`, `body`, and `else_body` are never read
[INFO] [stdout]    --> src/ast.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub struct If {
[INFO] [stdout]     |            -- fields in this struct
[INFO] [stdout] 165 |     pub cond: AstNodeId,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 166 |     pub body: StmtList,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 167 |     pub else_body: Option<StmtList>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `If` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ident`, `range`, and `block` are never read
[INFO] [stdout]    --> src/ast.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 171 | pub struct For {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] 172 |     pub ident: Symbol,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 173 |     pub range: Range,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 174 |     pub block: StmtList,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `For` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start` and `end` are never read
[INFO] [stdout]    --> src/ast.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub struct Range {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] 179 |     pub start: i32,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 180 |     pub end: i32,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Range` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `args` are never read
[INFO] [stdout]    --> src/ast.rs:185:9
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub struct FunctionCall {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 185 |     pub name: Symbol,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 186 |     pub args: Vec<AstNodeId>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FunctionCall` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `args` is never read
[INFO] [stdout]    --> src/ast.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 190 | pub struct Print {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 191 |     pub args: ArgList,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Print` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `message` is never read
[INFO] [stdout]    --> src/ast.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub struct Input {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 196 |     pub message: Option<AstNodeId>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Input` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Bool`, `Int`, `Float`, `String`, `Struct`, and `Nil` are never constructed
[INFO] [stdout]   --> src/primitives.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum Value {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 20 |     Bool(bool),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 21 |     Int(i32),
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 22 |     Float(f32),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     String(Symbol),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 24 |     Struct(Symbol),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 25 |     Nil,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Value` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `functions`, `user_defined_types`, and `level` are never read
[INFO] [stdout]   --> src/scope.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct InnerScope {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 13 |     functions: HashMap<Symbol, AstNodeId>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 14 |     user_defined_types: HashMap<Symbol, AstNodeId>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     variables: Vec<Variable>,
[INFO] [stdout] 16 |     level: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `defined_in_scope_level` are never read
[INFO] [stdout]   --> src/scope.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Variable {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub value: Value,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 36 |     pub defined_in_scope_level: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/scope.rs:47:12
[INFO] [stdout]     |
[INFO] [stdout] 39  | impl Scope {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47  |     pub fn push_scope(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52  |     pub fn pop_scope(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57  |     pub fn new_scope_level(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61  |     pub fn pop_scope_level(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70  |     pub fn add_variable(
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn get_variable_mut(&mut self, name: Symbol) -> Option<&mut Variable> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn add_function(&mut self, name: Symbol, decl: AstNodeId) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn get_function(&mut self, name: Symbol) -> Option<AstNodeId> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn add_struct(&mut self, name: Symbol, decl: AstNodeId) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn get_struct(&mut self, name: Symbol) -> Option<AstNodeId> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `deferred_function_calls` and `current_function` are never read
[INFO] [stdout]   --> src/typecheck.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct Typechecker<'ctxt> {
[INFO] [stdout]    |        ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 40 |     deferred_function_calls: Vec<FunctionCall>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 41 |     current_function: Option<FunctionDecl>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 43 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 44 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.59s
[INFO] running `Command { std: "docker" "inspect" "6d7fa023177c70c5395acae2676dada29c26073a1e9e9f134a4f9c6ef77feb1e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6d7fa023177c70c5395acae2676dada29c26073a1e9e9f134a4f9c6ef77feb1e", kill_on_drop: false }`
[INFO] [stdout] 6d7fa023177c70c5395acae2676dada29c26073a1e9e9f134a4f9c6ef77feb1e
