[INFO] cloning repository https://github.com/ErrorOnUsername/archimedes
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ErrorOnUsername/archimedes" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FErrorOnUsername%2Farchimedes", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FErrorOnUsername%2Farchimedes'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d1eb4872d97604d08b5685a136fff09acc018b55
[INFO] checking ErrorOnUsername/archimedes against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FErrorOnUsername%2Farchimedes" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ErrorOnUsername/archimedes
[INFO] finished tweaking git repo https://github.com/ErrorOnUsername/archimedes
[INFO] tweaked toml for git repo https://github.com/ErrorOnUsername/archimedes written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ErrorOnUsername/archimedes on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ErrorOnUsername/archimedes 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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded semver v1.0.14
[INFO] [stderr]   Downloaded libc v0.2.134
[INFO] [stderr]   Downloaded llvm-sys v140.0.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 52601eed8265cad95b704477f8a4dd24ae7e60d55265e8d42018ca308e0bc1f5
[INFO] running `Command { std: "docker" "start" "-a" "52601eed8265cad95b704477f8a4dd24ae7e60d55265e8d42018ca308e0bc1f5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "52601eed8265cad95b704477f8a4dd24ae7e60d55265e8d42018ca308e0bc1f5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "52601eed8265cad95b704477f8a4dd24ae7e60d55265e8d42018ca308e0bc1f5", kill_on_drop: false }`
[INFO] [stdout] 52601eed8265cad95b704477f8a4dd24ae7e60d55265e8d42018ca308e0bc1f5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a3c4383d560c8be423f61fb418f59011bd3db8d36caf509e9042e723a94ef86e
[INFO] running `Command { std: "docker" "start" "-a" "a3c4383d560c8be423f61fb418f59011bd3db8d36caf509e9042e723a94ef86e", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling semver v1.0.14
[INFO] [stderr]    Compiling regex-syntax v0.6.27
[INFO] [stderr]    Compiling cc v1.0.73
[INFO] [stderr]    Compiling libc v0.2.134
[INFO] [stderr]    Compiling aho-corasick v0.7.19
[INFO] [stderr]    Compiling regex v1.6.0
[INFO] [stderr]    Compiling llvm-sys v140.0.3
[INFO] [stderr]     Checking amds v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `typechecker::Typechecker`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use typechecker::Typechecker;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `typechecker::Typechecker`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use typechecker::Typechecker;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proc_decl`
[INFO] [stdout]   --> src/codegen/llvm.rs:45:37
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn add_proc_decl(&mut self, proc_decl: &ParsedProcDecl) {
[INFO] [stdout]    |                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_proc_decl`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proc_call`
[INFO] [stdout]   --> src/codegen/llvm.rs:48:37
[INFO] [stdout]    |
[INFO] [stdout] 48 |     pub fn add_proc_call(&mut self, proc_call: &ParsedProcCall) {
[INFO] [stdout]    |                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_proc_call`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proc_decl`
[INFO] [stdout]   --> src/codegen/llvm.rs:51:41
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn compile_proc_decl(&mut self, proc_decl: &ParsedProcDecl) {
[INFO] [stdout]    |                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_proc_decl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proc_decl`
[INFO] [stdout]   --> src/codegen/llvm.rs:45:37
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn add_proc_decl(&mut self, proc_decl: &ParsedProcDecl) {
[INFO] [stdout]    |                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_proc_decl`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proc_call`
[INFO] [stdout]   --> src/codegen/llvm.rs:48:37
[INFO] [stdout]    |
[INFO] [stdout] 48 |     pub fn add_proc_call(&mut self, proc_call: &ParsedProcCall) {
[INFO] [stdout]    |                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_proc_call`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proc_decl`
[INFO] [stdout]   --> src/codegen/llvm.rs:51:41
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn compile_proc_decl(&mut self, proc_decl: &ParsedProcDecl) {
[INFO] [stdout]    |                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_proc_decl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty`
[INFO] [stdout]   --> src/typechecker.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |         ty: &ParsedType
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_ty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty_name`
[INFO] [stdout]   --> src/typechecker.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |         ty_name: &String
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ty_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty_name`
[INFO] [stdout]   --> src/typechecker.rs:85:38
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn is_type_registered(&self, ty_name: &String) -> bool {
[INFO] [stdout]    |                                      ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ty_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty`
[INFO] [stdout]   --> src/typechecker.rs:89:29
[INFO] [stdout]    |
[INFO] [stdout] 89 |     fn add_type_info(&self, ty: &ParsedType) {
[INFO] [stdout]    |                             ^^ help: if this is intentional, prefix it with an underscore: `_ty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `module`
[INFO] [stdout]   --> src/typechecker.rs:93:37
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn verify_module(&mut self, module: &ParsedModule) -> Result<(), &'static str>{
[INFO] [stdout]    |                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_module`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty`
[INFO] [stdout]   --> src/typechecker.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |         ty: &ParsedType
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_ty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty_name`
[INFO] [stdout]   --> src/typechecker.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |         ty_name: &String
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ty_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty_name`
[INFO] [stdout]   --> src/typechecker.rs:85:38
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn is_type_registered(&self, ty_name: &String) -> bool {
[INFO] [stdout]    |                                      ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ty_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty`
[INFO] [stdout]   --> src/typechecker.rs:89:29
[INFO] [stdout]    |
[INFO] [stdout] 89 |     fn add_type_info(&self, ty: &ParsedType) {
[INFO] [stdout]    |                             ^^ help: if this is intentional, prefix it with an underscore: `_ty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `module`
[INFO] [stdout]   --> src/typechecker.rs:93:37
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn verify_module(&mut self, module: &ParsedModule) -> Result<(), &'static str>{
[INFO] [stdout]    |                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_module`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `CheckedType` and `Array` are never constructed
[INFO] [stdout]   --> src/ast.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum ParsedType {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 14 |     CheckedType(TypeID),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 15 |     Name(Vec<String>, String),
[INFO] [stdout] 16 |     Array(Box<ParsedType>, ParsedExpression),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParsedType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:52:14
[INFO] [stdout]    |
[INFO] [stdout] 52 |     TypeCast(Box<ParsedType>),
[INFO] [stdout]    |     -------- ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UnaryOperator` 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] 52 -     TypeCast(Box<ParsedType>),
[INFO] [stdout] 52 +     TypeCast(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `CheckedType` and `Array` are never constructed
[INFO] [stdout]   --> src/ast.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum ParsedType {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 14 |     CheckedType(TypeID),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 15 |     Name(Vec<String>, String),
[INFO] [stdout] 16 |     Array(Box<ParsedType>, ParsedExpression),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParsedType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ast.rs:52:14
[INFO] [stdout]    |
[INFO] [stdout] 52 |     TypeCast(Box<ParsedType>),
[INFO] [stdout]    |     -------- ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UnaryOperator` 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] 52 -     TypeCast(Box<ParsedType>),
[INFO] [stdout] 52 +     TypeCast(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `parameters`, `parsed_return_type`, and `body` are never read
[INFO] [stdout]    --> src/ast.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub struct ParsedProcDecl {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 132 |     pub name: String,
[INFO] [stdout] 133 |     pub parameters: Vec<ParsedVarDecl>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 134 |     pub parsed_return_type: ParsedType,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 135 |     pub body: ParsedBlock,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedProcDecl` 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 `Expr` and `Block` are never constructed
[INFO] [stdout]    --> src/ast.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub enum MatchExprBody {
[INFO] [stdout]     |          ------------- variants in this enum
[INFO] [stdout] 159 |     Expr(ParsedExpression),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 160 |     Block(ParsedBlock),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MatchExprBody` 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 `Expr`, `EnumVariant`, and `Fallback` are never constructed
[INFO] [stdout]    --> src/ast.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub enum MatchExprCase {
[INFO] [stdout]     |          ------------- variants in this enum
[INFO] [stdout] 167 |     Expr(ParsedExpression, MatchExprBody),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 168 |     EnumVariant(String, MatchExprBody),
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 169 |     Fallback(MatchExprBody),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MatchExprCase` 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:177:10
[INFO] [stdout]     |
[INFO] [stdout] 177 |     Bool(bool),
[INFO] [stdout]     |     ---- ^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` 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] 177 -     Bool(bool),
[INFO] [stdout] 177 +     Bool(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:178:21
[INFO] [stdout]     |
[INFO] [stdout] 178 |     NumericConstant(NumericConstant),
[INFO] [stdout]     |     --------------- ^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` 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] 178 -     NumericConstant(NumericConstant),
[INFO] [stdout] 178 +     NumericConstant(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:179:19
[INFO] [stdout]     |
[INFO] [stdout] 179 |     StringLiteral(String),
[INFO] [stdout]     |     ------------- ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` 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] 179 -     StringLiteral(String),
[INFO] [stdout] 179 +     StringLiteral(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:180:17
[INFO] [stdout]     |
[INFO] [stdout] 180 |     CharLiteral(u8),
[INFO] [stdout]     |     ----------- ^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` 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] 180 -     CharLiteral(u8),
[INFO] [stdout] 180 +     CharLiteral(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 181 |     Var(String),
[INFO] [stdout]     |     --- ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` 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] 181 -     Var(String),
[INFO] [stdout] 181 +     Var(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0`, `1`, `2`, and `3` are never read
[INFO] [stdout]    --> src/ast.rs:183:11
[INFO] [stdout]     |
[INFO] [stdout] 183 |     Range(RangeExprBound, Box<ParsedExpression>, Box<ParsedExpression>, RangeExprBound),
[INFO] [stdout]     |     ----- ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 183 -     Range(RangeExprBound, Box<ParsedExpression>, Box<ParsedExpression>, RangeExprBound),
[INFO] [stdout] 183 +     Range((), (), (), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/ast.rs:186:20
[INFO] [stdout]     |
[INFO] [stdout] 186 |     UnaryOperation(Box<ParsedExpression>, UnaryOperator),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 186 -     UnaryOperation(Box<ParsedExpression>, UnaryOperator),
[INFO] [stdout] 186 +     UnaryOperation((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0`, `1`, and `2` are never read
[INFO] [stdout]    --> src/ast.rs:187:21
[INFO] [stdout]     |
[INFO] [stdout] 187 |     BinaryOperation(Box<ParsedExpression>, BinaryOperator, Box<ParsedExpression>),
[INFO] [stdout]     |     --------------- ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 187 -     BinaryOperation(Box<ParsedExpression>, BinaryOperator, Box<ParsedExpression>),
[INFO] [stdout] 187 +     BinaryOperation((), (), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:188:14
[INFO] [stdout]     |
[INFO] [stdout] 188 |     ProcCall(ParsedProcCall),
[INFO] [stdout]     |     -------- ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` 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] 188 -     ProcCall(ParsedProcCall),
[INFO] [stdout] 188 +     ProcCall(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `NamespacedVar` and `Match` are never constructed
[INFO] [stdout]    --> src/ast.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub enum ParsedExpression {
[INFO] [stdout]     |          ---------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 182 |     NamespacedVar(Vec<String>, String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 183 |     Range(RangeExprBound, Box<ParsedExpression>, Box<ParsedExpression>, RangeExprBound),
[INFO] [stdout] 184 |     Match(Box<ParsedExpression>, Vec<MatchExprCase>),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` 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: method `is_assignable` is never used
[INFO] [stdout]    --> src/ast.rs:242:12
[INFO] [stdout]     |
[INFO] [stdout] 192 | impl ParsedExpression {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 242 |     pub fn is_assignable(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `parameters`, `parsed_return_type`, and `body` are never read
[INFO] [stdout]    --> src/ast.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub struct ParsedProcDecl {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 132 |     pub name: String,
[INFO] [stdout] 133 |     pub parameters: Vec<ParsedVarDecl>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 134 |     pub parsed_return_type: ParsedType,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 135 |     pub body: ParsedBlock,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedProcDecl` 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 `Expr` and `Block` are never constructed
[INFO] [stdout]    --> src/ast.rs:159:5
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub enum MatchExprBody {
[INFO] [stdout]     |          ------------- variants in this enum
[INFO] [stdout] 159 |     Expr(ParsedExpression),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 160 |     Block(ParsedBlock),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MatchExprBody` 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 `Expr`, `EnumVariant`, and `Fallback` are never constructed
[INFO] [stdout]    --> src/ast.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub enum MatchExprCase {
[INFO] [stdout]     |          ------------- variants in this enum
[INFO] [stdout] 167 |     Expr(ParsedExpression, MatchExprBody),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 168 |     EnumVariant(String, MatchExprBody),
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 169 |     Fallback(MatchExprBody),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MatchExprCase` 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:177:10
[INFO] [stdout]     |
[INFO] [stdout] 177 |     Bool(bool),
[INFO] [stdout]     |     ---- ^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` 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] 177 -     Bool(bool),
[INFO] [stdout] 177 +     Bool(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:178:21
[INFO] [stdout]     |
[INFO] [stdout] 178 |     NumericConstant(NumericConstant),
[INFO] [stdout]     |     --------------- ^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` 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] 178 -     NumericConstant(NumericConstant),
[INFO] [stdout] 178 +     NumericConstant(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:179:19
[INFO] [stdout]     |
[INFO] [stdout] 179 |     StringLiteral(String),
[INFO] [stdout]     |     ------------- ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` 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] 179 -     StringLiteral(String),
[INFO] [stdout] 179 +     StringLiteral(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:180:17
[INFO] [stdout]     |
[INFO] [stdout] 180 |     CharLiteral(u8),
[INFO] [stdout]     |     ----------- ^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` 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] 180 -     CharLiteral(u8),
[INFO] [stdout] 180 +     CharLiteral(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 181 |     Var(String),
[INFO] [stdout]     |     --- ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` 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] 181 -     Var(String),
[INFO] [stdout] 181 +     Var(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0`, `1`, `2`, and `3` are never read
[INFO] [stdout]    --> src/ast.rs:183:11
[INFO] [stdout]     |
[INFO] [stdout] 183 |     Range(RangeExprBound, Box<ParsedExpression>, Box<ParsedExpression>, RangeExprBound),
[INFO] [stdout]     |     ----- ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 183 -     Range(RangeExprBound, Box<ParsedExpression>, Box<ParsedExpression>, RangeExprBound),
[INFO] [stdout] 183 +     Range((), (), (), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/ast.rs:186:20
[INFO] [stdout]     |
[INFO] [stdout] 186 |     UnaryOperation(Box<ParsedExpression>, UnaryOperator),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 186 -     UnaryOperation(Box<ParsedExpression>, UnaryOperator),
[INFO] [stdout] 186 +     UnaryOperation((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0`, `1`, and `2` are never read
[INFO] [stdout]    --> src/ast.rs:187:21
[INFO] [stdout]     |
[INFO] [stdout] 187 |     BinaryOperation(Box<ParsedExpression>, BinaryOperator, Box<ParsedExpression>),
[INFO] [stdout]     |     --------------- ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 187 -     BinaryOperation(Box<ParsedExpression>, BinaryOperator, Box<ParsedExpression>),
[INFO] [stdout] 187 +     BinaryOperation((), (), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:188:14
[INFO] [stdout]     |
[INFO] [stdout] 188 |     ProcCall(ParsedProcCall),
[INFO] [stdout]     |     -------- ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` 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] 188 -     ProcCall(ParsedProcCall),
[INFO] [stdout] 188 +     ProcCall(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `NamespacedVar` and `Match` are never constructed
[INFO] [stdout]    --> src/ast.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub enum ParsedExpression {
[INFO] [stdout]     |          ---------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 182 |     NamespacedVar(Vec<String>, String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 183 |     Range(RangeExprBound, Box<ParsedExpression>, Box<ParsedExpression>, RangeExprBound),
[INFO] [stdout] 184 |     Match(Box<ParsedExpression>, Vec<MatchExprCase>),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedExpression` 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:256:10
[INFO] [stdout]     |
[INFO] [stdout] 256 |     Expr(ParsedExpression),
[INFO] [stdout]     |     ---- ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` 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] 256 -     Expr(ParsedExpression),
[INFO] [stdout] 256 +     Expr(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_assignable` is never used
[INFO] [stdout]    --> src/ast.rs:242:12
[INFO] [stdout]     |
[INFO] [stdout] 192 | impl ParsedExpression {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 242 |     pub fn is_assignable(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:257:13
[INFO] [stdout]     |
[INFO] [stdout] 257 |     VarDecl(ParsedVarDecl),
[INFO] [stdout]     |     ------- ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` 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] 257 -     VarDecl(ParsedVarDecl),
[INFO] [stdout] 257 +     VarDecl(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:256:10
[INFO] [stdout]     |
[INFO] [stdout] 256 |     Expr(ParsedExpression),
[INFO] [stdout]     |     ---- ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` 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] 256 -     Expr(ParsedExpression),
[INFO] [stdout] 256 +     Expr(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:257:13
[INFO] [stdout]     |
[INFO] [stdout] 257 |     VarDecl(ParsedVarDecl),
[INFO] [stdout]     |     ------- ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` 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] 257 -     VarDecl(ParsedVarDecl),
[INFO] [stdout] 257 +     VarDecl(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0`, `1`, and `2` are never read
[INFO] [stdout]    --> src/ast.rs:259:8
[INFO] [stdout]     |
[INFO] [stdout] 259 |     If(ParsedExpression, ParsedBlock, Option<Box<ParsedStatement>>),
[INFO] [stdout]     |     -- ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 259 -     If(ParsedExpression, ParsedBlock, Option<Box<ParsedStatement>>),
[INFO] [stdout] 259 +     If((), (), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0`, `1`, and `2` are never read
[INFO] [stdout]    --> src/ast.rs:259:8
[INFO] [stdout]     |
[INFO] [stdout] 259 |     If(ParsedExpression, ParsedBlock, Option<Box<ParsedStatement>>),
[INFO] [stdout]     |     -- ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 259 -     If(ParsedExpression, ParsedBlock, Option<Box<ParsedStatement>>),
[INFO] [stdout] 259 +     If((), (), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0`, `1`, and `2` are never read
[INFO] [stdout]    --> src/ast.rs:261:13
[INFO] [stdout]     |
[INFO] [stdout] 261 |     ForLoop(ParsedVarDecl, ParsedExpression, ParsedBlock),
[INFO] [stdout]     |     ------- ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 261 -     ForLoop(ParsedVarDecl, ParsedExpression, ParsedBlock),
[INFO] [stdout] 261 +     ForLoop((), (), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/ast.rs:262:15
[INFO] [stdout]     |
[INFO] [stdout] 262 |     WhileLoop(ParsedExpression, ParsedBlock),
[INFO] [stdout]     |     --------- ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 262 -     WhileLoop(ParsedExpression, ParsedBlock),
[INFO] [stdout] 262 +     WhileLoop((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0`, `1`, and `2` are never read
[INFO] [stdout]    --> src/ast.rs:261:13
[INFO] [stdout]     |
[INFO] [stdout] 261 |     ForLoop(ParsedVarDecl, ParsedExpression, ParsedBlock),
[INFO] [stdout]     |     ------- ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 261 -     ForLoop(ParsedVarDecl, ParsedExpression, ParsedBlock),
[INFO] [stdout] 261 +     ForLoop((), (), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:263:18
[INFO] [stdout]     |
[INFO] [stdout] 263 |     InfiniteLoop(ParsedBlock),
[INFO] [stdout]     |     ------------ ^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` 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] 263 -     InfiniteLoop(ParsedBlock),
[INFO] [stdout] 263 +     InfiniteLoop(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/ast.rs:266:12
[INFO] [stdout]     |
[INFO] [stdout] 266 |     Return(ParsedExpression),
[INFO] [stdout]     |     ------ ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` 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] 266 -     Return(ParsedExpression),
[INFO] [stdout] 266 +     Return(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/ast.rs:262:15
[INFO] [stdout]     |
[INFO] [stdout] 262 |     WhileLoop(ParsedExpression, ParsedBlock),
[INFO] [stdout]     |     --------- ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 262 -     WhileLoop(ParsedExpression, ParsedBlock),
[INFO] [stdout] 262 +     WhileLoop((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `VarAssign` and `Block` are never constructed
[INFO] [stdout]    --> src/ast.rs:258:5
[INFO] [stdout]     |
[INFO] [stdout] 255 | pub enum ParsedStatement {
[INFO] [stdout]     |          --------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 258 |     VarAssign(String, BinaryOperator, ParsedExpression),
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 259 |     If(ParsedExpression, ParsedBlock, Option<Box<ParsedStatement>>),
[INFO] [stdout] 260 |     Block(ParsedBlock),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` 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:263:18
[INFO] [stdout]     |
[INFO] [stdout] 263 |     InfiniteLoop(ParsedBlock),
[INFO] [stdout]     |     ------------ ^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` 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] 263 -     InfiniteLoop(ParsedBlock),
[INFO] [stdout] 263 +     InfiniteLoop(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `current_module_path` and `path` are never read
[INFO] [stdout]    --> src/ast.rs:271:9
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub struct ParsedImport {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 271 |     pub current_module_path: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 272 |     pub path: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedImport` 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:266:12
[INFO] [stdout]     |
[INFO] [stdout] 266 |     Return(ParsedExpression),
[INFO] [stdout]     |     ------ ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` 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] 266 -     Return(ParsedExpression),
[INFO] [stdout] 266 +     Return(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `VarAssign` and `Block` are never constructed
[INFO] [stdout]    --> src/ast.rs:258:5
[INFO] [stdout]     |
[INFO] [stdout] 255 | pub enum ParsedStatement {
[INFO] [stdout]     |          --------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 258 |     VarAssign(String, BinaryOperator, ParsedExpression),
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 259 |     If(ParsedExpression, ParsedBlock, Option<Box<ParsedStatement>>),
[INFO] [stdout] 260 |     Block(ParsedBlock),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedStatement` 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 `Untyped`, `UnlabeledTypes`, and `LabeledTypes` are never constructed
[INFO] [stdout]    --> src/ast.rs:283:5
[INFO] [stdout]     |
[INFO] [stdout] 282 | pub enum ParsedEnumVariant {
[INFO] [stdout]     |          ----------------- variants in this enum
[INFO] [stdout] 283 |     Untyped(String),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 284 |     UnlabeledTypes(String, Vec<ParsedType>),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 285 |     LabeledTypes(String, Vec<ParsedVarDecl>),
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedEnumVariant` 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 `current_module_path` and `path` are never read
[INFO] [stdout]    --> src/ast.rs:271:9
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub struct ParsedImport {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 271 |     pub current_module_path: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 272 |     pub path: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedImport` 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 `Untyped`, `UnlabeledTypes`, and `LabeledTypes` are never constructed
[INFO] [stdout]    --> src/ast.rs:283:5
[INFO] [stdout]     |
[INFO] [stdout] 282 | pub enum ParsedEnumVariant {
[INFO] [stdout]     |          ----------------- variants in this enum
[INFO] [stdout] 283 |     Untyped(String),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 284 |     UnlabeledTypes(String, Vec<ParsedType>),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 285 |     LabeledTypes(String, Vec<ParsedVarDecl>),
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedEnumVariant` 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 `variants` is never read
[INFO] [stdout]    --> src/ast.rs:291:9
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub struct ParsedEnumDecl {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 290 |     pub name: String,
[INFO] [stdout] 291 |     pub variants: Vec<ParsedEnumVariant>,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedEnumDecl` 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 `imports` is never read
[INFO] [stdout]    --> src/ast.rs:311:9
[INFO] [stdout]     |
[INFO] [stdout] 309 | pub struct ParsedModule {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 310 |     pub name: String,
[INFO] [stdout] 311 |     pub imports: Vec<ParsedImport>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Module` is never constructed
[INFO] [stdout]   --> src/codegen/llvm.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct Module {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `new_string_ptr`, `to_cstring`, `add_proc_decl`, `add_proc_call`, and `compile_proc_decl` are never used
[INFO] [stdout]   --> src/codegen/llvm.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Module {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] 25 |     fn new_string_ptr(&mut self, s: &str) -> *const i8 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn to_cstring(&self) -> CString {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn add_proc_decl(&mut self, proc_decl: &ParsedProcDecl) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn add_proc_call(&mut self, proc_call: &ParsedProcCall) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn compile_proc_decl(&mut self, proc_decl: &ParsedProcDecl) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TypeInfo` is never used
[INFO] [stdout]   --> src/typechecker.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum TypeInfo {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `name` is never used
[INFO] [stdout]   --> src/typechecker.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl TypeInfo {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 19 |     pub fn name(&self) -> &String {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Typechecker` is never constructed
[INFO] [stdout]   --> src/typechecker.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Typechecker {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `variants` is never read
[INFO] [stdout]    --> src/ast.rs:291:9
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub struct ParsedEnumDecl {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 290 |     pub name: String,
[INFO] [stdout] 291 |     pub variants: Vec<ParsedEnumVariant>,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParsedEnumDecl` 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 `imports` is never read
[INFO] [stdout]    --> src/ast.rs:311:9
[INFO] [stdout]     |
[INFO] [stdout] 309 | pub struct ParsedModule {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 310 |     pub name: String,
[INFO] [stdout] 311 |     pub imports: Vec<ParsedImport>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Module` is never constructed
[INFO] [stdout]   --> src/codegen/llvm.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct Module {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `new_string_ptr`, `to_cstring`, `add_proc_decl`, `add_proc_call`, and `compile_proc_decl` are never used
[INFO] [stdout]   --> src/codegen/llvm.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Module {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] 25 |     fn new_string_ptr(&mut self, s: &str) -> *const i8 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn to_cstring(&self) -> CString {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn add_proc_decl(&mut self, proc_decl: &ParsedProcDecl) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn add_proc_call(&mut self, proc_call: &ParsedProcCall) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn compile_proc_decl(&mut self, proc_decl: &ParsedProcDecl) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TypeInfo` is never used
[INFO] [stdout]   --> src/typechecker.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum TypeInfo {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `name` is never used
[INFO] [stdout]   --> src/typechecker.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl TypeInfo {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 19 |     pub fn name(&self) -> &String {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Typechecker` is never constructed
[INFO] [stdout]   --> src/typechecker.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Typechecker {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/typechecker.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl Typechecker {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 29 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn primitive(ty: PrimitiveType) -> ParsedType {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn preregister_primitives(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn register_type(
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub fn get_type_id(
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn is_type_registered(&self, ty_name: &String) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 89 |     fn add_type_info(&self, ty: &ParsedType) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub fn verify_module(&mut self, module: &ParsedModule) -> Result<(), &'static str>{
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/typechecker.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl Typechecker {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 29 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn primitive(ty: PrimitiveType) -> ParsedType {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn preregister_primitives(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn register_type(
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub fn get_type_id(
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn is_type_registered(&self, ty_name: &String) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 89 |     fn add_type_info(&self, ty: &ParsedType) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub fn verify_module(&mut self, module: &ParsedModule) -> Result<(), &'static str>{
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.08s
[INFO] running `Command { std: "docker" "inspect" "a3c4383d560c8be423f61fb418f59011bd3db8d36caf509e9042e723a94ef86e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a3c4383d560c8be423f61fb418f59011bd3db8d36caf509e9042e723a94ef86e", kill_on_drop: false }`
[INFO] [stdout] a3c4383d560c8be423f61fb418f59011bd3db8d36caf509e9042e723a94ef86e
