[INFO] cloning repository https://github.com/EliasLittle/Errand
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/EliasLittle/Errand" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FEliasLittle%2FErrand", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FEliasLittle%2FErrand'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] cdb1af2cf403618c1e5ea13245f79c15d4c50899
[INFO] testing EliasLittle/Errand against master#ec6f9a5b4413f74386267ef8efc93712c2ce6db6 for pr-155739
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FEliasLittle%2FErrand" "/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/EliasLittle/Errand
[INFO] finished tweaking git repo https://github.com/EliasLittle/Errand
[INFO] tweaked toml for git repo https://github.com/EliasLittle/Errand written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/EliasLittle/Errand on toolchain ec6f9a5b4413f74386267ef8efc93712c2ce6db6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/EliasLittle/Errand 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" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded cranelift-object v0.121.1
[INFO] [stderr]   Downloaded cranelift-control v0.121.1
[INFO] [stderr]   Downloaded cranelift-module v0.121.1
[INFO] [stderr]   Downloaded wasmtime-math v34.0.1
[INFO] [stderr]   Downloaded cranelift-assembler-x64 v0.121.1
[INFO] [stderr]   Downloaded cranelift-native v0.121.1
[INFO] [stderr]   Downloaded cranelift-codegen-shared v0.121.1
[INFO] [stderr]   Downloaded cranelift-bitset v0.121.1
[INFO] [stderr]   Downloaded cranelift v0.121.1
[INFO] [stderr]   Downloaded cranelift-srcgen v0.121.1
[INFO] [stderr]   Downloaded cranelift-assembler-x64-meta v0.121.1
[INFO] [stderr]   Downloaded cranelift-entity v0.121.1
[INFO] [stderr]   Downloaded cranelift-bforest v0.121.1
[INFO] [stderr]   Downloaded clap v4.5.41
[INFO] [stderr]   Downloaded cranelift-frontend v0.121.1
[INFO] [stderr]   Downloaded cranelift-codegen-meta v0.121.1
[INFO] [stderr]   Downloaded cranelift-isle v0.121.1
[INFO] [stderr]   Downloaded clap_builder v4.5.41
[INFO] [stderr]   Downloaded regalloc2 v0.12.2
[INFO] [stderr]   Downloaded cranelift-codegen v0.121.1
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 98c1701f690974436222c537d6a5671d1617b220ac96a6b470d04c594559d269
[INFO] running `Command { std: "docker" "start" "-a" "98c1701f690974436222c537d6a5671d1617b220ac96a6b470d04c594559d269", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "98c1701f690974436222c537d6a5671d1617b220ac96a6b470d04c594559d269", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "98c1701f690974436222c537d6a5671d1617b220ac96a6b470d04c594559d269", kill_on_drop: false }`
[INFO] [stdout] 98c1701f690974436222c537d6a5671d1617b220ac96a6b470d04c594559d269
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 517f13588f9deaf97eb2ee0bd58b51dd099e4cb83546b483c8d5c83836b2334b
[INFO] running `Command { std: "docker" "start" "-a" "517f13588f9deaf97eb2ee0bd58b51dd099e4cb83546b483c8d5c83836b2334b", kill_on_drop: false }`
[INFO] [stderr]    Compiling cranelift-srcgen v0.121.1
[INFO] [stderr]    Compiling cranelift-isle v0.121.1
[INFO] [stderr]    Compiling cranelift-codegen-shared v0.121.1
[INFO] [stderr]    Compiling proc-macro2 v1.0.93
[INFO] [stderr]    Compiling cranelift-bitset v0.121.1
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling arbitrary v1.4.1
[INFO] [stderr]    Compiling unicode-ident v1.0.15
[INFO] [stderr]    Compiling hashbrown v0.15.4
[INFO] [stderr]    Compiling target-lexicon v0.13.2
[INFO] [stderr]    Compiling bumpalo v3.19.0
[INFO] [stderr]    Compiling anyhow v1.0.98
[INFO] [stderr]    Compiling wasmtime-math v34.0.1
[INFO] [stderr]    Compiling regex-syntax v0.8.6
[INFO] [stderr]    Compiling anstyle v1.0.11
[INFO] [stderr]    Compiling anstyle-query v1.1.3
[INFO] [stderr]    Compiling object v0.36.7
[INFO] [stderr]    Compiling crc32fast v1.4.2
[INFO] [stderr]    Compiling thiserror v1.0.65
[INFO] [stderr]    Compiling cranelift-assembler-x64-meta v0.121.1
[INFO] [stderr]    Compiling clap_lex v0.7.5
[INFO] [stderr]    Compiling cranelift-entity v0.121.1
[INFO] [stderr]    Compiling anstream v0.6.19
[INFO] [stderr]    Compiling is-terminal v0.4.16
[INFO] [stderr]    Compiling humantime v2.2.0
[INFO] [stderr]    Compiling clap_builder v4.5.41
[INFO] [stderr]    Compiling colored v2.2.0
[INFO] [stderr]    Compiling cranelift-control v0.121.1
[INFO] [stderr]    Compiling cranelift-bforest v0.121.1
[INFO] [stderr]    Compiling cranelift-codegen-meta v0.121.1
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]    Compiling cranelift-assembler-x64 v0.121.1
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling indexmap v2.9.0
[INFO] [stderr]    Compiling regalloc2 v0.12.2
[INFO] [stderr]    Compiling regex-automata v0.4.10
[INFO] [stderr]    Compiling gimli v0.31.1
[INFO] [stderr]    Compiling cranelift-codegen v0.121.1
[INFO] [stderr]    Compiling clap_derive v4.5.41
[INFO] [stderr]    Compiling thiserror-impl v1.0.65
[INFO] [stderr]    Compiling regex v1.11.2
[INFO] [stderr]    Compiling clap v4.5.41
[INFO] [stderr]    Compiling env_logger v0.10.2
[INFO] [stderr]    Compiling cranelift-frontend v0.121.1
[INFO] [stderr]    Compiling cranelift-module v0.121.1
[INFO] [stderr]    Compiling cranelift-native v0.121.1
[INFO] [stderr]    Compiling cranelift-object v0.121.1
[INFO] [stderr]    Compiling cranelift v0.121.1
[INFO] [stderr]    Compiling Errand v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `TypeExpression`
[INFO] [stdout]  --> src/frontend/resolver.rs:4:53
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::frontend::ast::{Expression, Program, Id, TypeExpression};
[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: `lower::*`
[INFO] [stdout]   --> src/frontend/mod.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use lower::*; 
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt`
[INFO] [stdout]  --> src/backend/interpreter.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::fmt;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Linkage` and `ModuleError`
[INFO] [stdout]  --> src/backend/cranelift_compiler.rs:7:32
[INFO] [stdout]   |
[INFO] [stdout] 7 | use cranelift_module::{Module, Linkage, ModuleError};
[INFO] [stdout]   |                                ^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ExternalName`
[INFO] [stdout]  --> src/backend/cranelift_compiler.rs:8:39
[INFO] [stdout]   |
[INFO] [stdout] 8 | use cranelift_codegen::ir::{AbiParam, ExternalName};
[INFO] [stdout]   |                                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FuncRef`
[INFO] [stdout]  --> src/backend/cranelift_compiler.rs:9:36
[INFO] [stdout]   |
[INFO] [stdout] 9 | use cranelift_codegen::ir::{Value, FuncRef};
[INFO] [stdout]   |                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cranelift_codegen::print_errors::pretty_error`
[INFO] [stdout]   --> src/backend/cranelift_compiler.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use cranelift_codegen::print_errors::pretty_error;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `backend::interpreter`
[INFO] [stdout]  --> src/backend/preir.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::{backend::interpreter, frontend::ast::{BinaryOperator, FieldDefinition, Parameter, TypeExpression, UnaryOperator}};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `instr_index` should have an upper camel case name
[INFO] [stdout]    --> src/backend/preir.rs:204:10
[INFO] [stdout]     |
[INFO] [stdout] 204 | pub type instr_index = i64;
[INFO] [stdout]     |          ^^^^^^^^^^^ help: convert the identifier to upper camel case: `InstrIndex`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `decl_index` should have an upper camel case name
[INFO] [stdout]    --> src/backend/preir.rs:205:10
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub type decl_index = i64;
[INFO] [stdout]     |          ^^^^^^^^^^ help: convert the identifier to upper camel case: `DeclIndex`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> src/frontend/parser.rs:226:46
[INFO] [stdout]     |
[INFO] [stdout] 226 | ...   Expression::Identifier { id, type_expr } => Ok(Expression::BinaryOp { operator: BinaryOperator::Assignment, left: Box::new(lh...
[INFO] [stdout]     |                                ^^ help: try ignoring the field: `id: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_expr`
[INFO] [stdout]    --> src/frontend/parser.rs:226:50
[INFO] [stdout]     |
[INFO] [stdout] 226 | ...   Expression::Identifier { id, type_expr } => Ok(Expression::BinaryOp { operator: BinaryOperator::Assignment, left: Box::new(lh...
[INFO] [stdout]     |                                    ^^^^^^^^^ help: try ignoring the field: `type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type_expr`
[INFO] [stdout]   --> src/frontend/resolver.rs:58:68
[INFO] [stdout]    |
[INFO] [stdout] 58 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign: _ } => {
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^^^^ help: try ignoring the field: `return_type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]    --> src/frontend/type_inference.rs:303:66
[INFO] [stdout]     |
[INFO] [stdout] 303 |                 Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign: _ } => {
[INFO] [stdout]     |                                                                  ^^^^ help: try ignoring the field: `body: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_ty`
[INFO] [stdout]    --> src/frontend/type_inference.rs:491:45
[INFO] [stdout]     |
[INFO] [stdout] 491 | ...                   if let Some(field_ty) = fields.get(field_name) {
[INFO] [stdout]     |                                   ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_ty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `changed` is never read
[INFO] [stdout]    --> src/frontend/type_inference.rs:585:35
[INFO] [stdout]     |
[INFO] [stdout] 585 |                 let mut changed = false;
[INFO] [stdout]     |                                   ^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 591 |                         changed = true;
[INFO] [stdout]     |                         -------------- `changed` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]    --> src/frontend/type_inference.rs:617:28
[INFO] [stdout]     |
[INFO] [stdout] 617 |             (Type::Unknown(var), _) => {
[INFO] [stdout]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]    --> src/frontend/type_inference.rs:624:31
[INFO] [stdout]     |
[INFO] [stdout] 624 |             (_, Type::Unknown(var)) => {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `interpreter`
[INFO] [stdout]   --> src/backend/interpreter.rs:98:20
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn call(&self, interpreter: &mut Interpreter, arguments: Vec<Value>) -> Result<Value, String> {
[INFO] [stdout]    |                    ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interpreter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/backend/interpreter.rs:158:44
[INFO] [stdout]     |
[INFO] [stdout] 158 |                 Some(t.fields.iter().map(|(k, v)| Value::Type(*v.clone()).to_type_expr()).collect())
[INFO] [stdout]     |                                            ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/backend/interpreter.rs:252:41
[INFO] [stdout]     |
[INFO] [stdout] 252 |                     ControlFlow::Return(val) => unreachable!(),
[INFO] [stdout]     |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `iterator`
[INFO] [stdout]    --> src/backend/interpreter.rs:279:31
[INFO] [stdout]     |
[INFO] [stdout] 279 | ...   Expression::For { iterator, range, body } => Err(ControlFlow::Err("For loops not implemented in interpreter, please desugar"....
[INFO] [stdout]     |                         ^^^^^^^^ help: try ignoring the field: `iterator: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `range`
[INFO] [stdout]    --> src/backend/interpreter.rs:279:41
[INFO] [stdout]     |
[INFO] [stdout] 279 | ...   Expression::For { iterator, range, body } => Err(ControlFlow::Err("For loops not implemented in interpreter, please desugar"....
[INFO] [stdout]     |                                   ^^^^^ help: try ignoring the field: `range: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]    --> src/backend/interpreter.rs:279:48
[INFO] [stdout]     |
[INFO] [stdout] 279 | ...   Expression::For { iterator, range, body } => Err(ControlFlow::Err("For loops not implemented in interpreter, please desugar"....
[INFO] [stdout]     |                                          ^^^^ help: try ignoring the field: `body: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_expr`
[INFO] [stdout]    --> src/backend/interpreter.rs:285:40
[INFO] [stdout]     |
[INFO] [stdout] 285 |     fn eval_identifier(&self, id: &Id, type_expr: &Option<TypeExpression>) -> Result<Value, ControlFlow<Value, String>> {
[INFO] [stdout]     |                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_type_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operator`
[INFO] [stdout]    --> src/backend/interpreter.rs:328:34
[INFO] [stdout]     |
[INFO] [stdout] 328 |     fn handle_div_by_zero(&self, operator: &BinaryOperator, left: &Value, right: &Value) -> Result<Value, ControlFlow<Value, String...
[INFO] [stdout]     |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `left_val`
[INFO] [stdout]    --> src/backend/interpreter.rs:367:42
[INFO] [stdout]     |
[INFO] [stdout] 367 |             (BinaryOperator::Assignment, left_val, right_val) => {
[INFO] [stdout]     |                                          ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_left_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_expr`
[INFO] [stdout]    --> src/backend/interpreter.rs:368:53
[INFO] [stdout]     |
[INFO] [stdout] 368 |                 if let Expression::Identifier { id, type_expr } = left {
[INFO] [stdout]     |                                                     ^^^^^^^^^ help: try ignoring the field: `type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/backend/interpreter.rs:391:49
[INFO] [stdout]     |
[INFO] [stdout] 391 |             (BinaryOperator::Divide, Value::Int(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                 ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/backend/interpreter.rs:391:64
[INFO] [stdout]     |
[INFO] [stdout] 391 |             (BinaryOperator::Divide, Value::Int(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                                ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/backend/interpreter.rs:392:51
[INFO] [stdout]     |
[INFO] [stdout] 392 |             (BinaryOperator::Divide, Value::Float(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                   ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/backend/interpreter.rs:392:68
[INFO] [stdout]     |
[INFO] [stdout] 392 |             (BinaryOperator::Divide, Value::Float(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                                    ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/backend/interpreter.rs:393:49
[INFO] [stdout]     |
[INFO] [stdout] 393 |             (BinaryOperator::Divide, Value::Int(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                 ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/backend/interpreter.rs:393:66
[INFO] [stdout]     |
[INFO] [stdout] 393 |             (BinaryOperator::Divide, Value::Int(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                                  ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/backend/interpreter.rs:394:51
[INFO] [stdout]     |
[INFO] [stdout] 394 |             (BinaryOperator::Divide, Value::Float(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                   ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/backend/interpreter.rs:394:66
[INFO] [stdout]     |
[INFO] [stdout] 394 |             (BinaryOperator::Divide, Value::Float(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                                  ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type_expr`
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:187:81
[INFO] [stdout]     |
[INFO] [stdout] 187 | ...: &[Parameter], return_type_expr: &Option<TypeExpression>) -> Result<(), String> {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_type_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type_expr`
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:216:89
[INFO] [stdout]     |
[INFO] [stdout] 216 | ...: &[Parameter], return_type_expr: &Option<TypeExpression>) -> Result<(), String> {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_type_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameters`
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:279:75
[INFO] [stdout]     |
[INFO] [stdout] 279 |     fn add_function_to_module(&mut self, name: &str, func: &mut Function, parameters: &[Parameter]) -> Result<FuncId, String> {
[INFO] [stdout]     |                                                                           ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parameters`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:346:13
[INFO] [stdout]     |
[INFO] [stdout] 346 |         let mut ffi_functions = if format!("{}", arch) == "aarch64" && format!("{}", os) == "darwin" {
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_expr`
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:685:42
[INFO] [stdout]     |
[INFO] [stdout] 685 |             Expression::Identifier { id, type_expr } => {
[INFO] [stdout]     |                                          ^^^^^^^^^ help: try ignoring the field: `type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1058:46
[INFO] [stdout]      |
[INFO] [stdout] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stdout]      |                                              ^^ help: try ignoring the field: `id: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameters`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1058:50
[INFO] [stdout]      |
[INFO] [stdout] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stdout]      |                                                  ^^^^^^^^^^ help: try ignoring the field: `parameters: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1058:62
[INFO] [stdout]      |
[INFO] [stdout] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stdout]      |                                                              ^^^^ help: try ignoring the field: `body: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type_expr`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1058:68
[INFO] [stdout]      |
[INFO] [stdout] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stdout]      |                                                                    ^^^^^^^^^^^^^^^^ help: try ignoring the field: `return_type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1088:44
[INFO] [stdout]      |
[INFO] [stdout] 1088 |             Expression::StructDefinition { id, fields } => {
[INFO] [stdout]      |                                            ^^ help: try ignoring the field: `id: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fields`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1088:48
[INFO] [stdout]      |
[INFO] [stdout] 1088 |             Expression::StructDefinition { id, fields } => {
[INFO] [stdout]      |                                                ^^^^^^ help: try ignoring the field: `fields: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `func`
[INFO] [stdout]   --> src/backend/ir_lowering.rs:29:48
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn compile_clif_to_machine_code(&self, func: Function) -> Result<Vec<u8>, String> {
[INFO] [stdout]    |                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_func`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program`
[INFO] [stdout]   --> src/backend/ir_lowering.rs:51:33
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn lower_to_llvm(&self, program: &Program) -> Result<String, String> {
[INFO] [stdout]    |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/backend/preir.rs:47:36
[INFO] [stdout]    |
[INFO] [stdout] 47 |                     Instr::VarDecl(data) => format!("    {}", self.format_instr_with_context(instr)),
[INFO] [stdout]    |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/backend/preir.rs:48:37
[INFO] [stdout]    |
[INFO] [stdout] 48 |                     Instr::FuncDecl(data) => format!("    {}", self.format_instr_with_context(instr)),
[INFO] [stdout]    |                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/backend/preir.rs:49:39
[INFO] [stdout]    |
[INFO] [stdout] 49 |                     Instr::StructDecl(data) => format!("    {}", self.format_instr_with_context(instr)),
[INFO] [stdout]    |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tokens` is never read
[INFO] [stdout]    --> src/frontend/lexer.rs:209:5
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub struct Lexer {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 208 |     source: String,
[INFO] [stdout] 209 |     tokens: Vec<Token>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_identifier_start` and `read_multiline_comment` are never used
[INFO] [stdout]    --> src/frontend/lexer.rs:281:8
[INFO] [stdout]     |
[INFO] [stdout] 217 | impl Lexer {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 281 |     fn is_identifier_start(&self, c: char) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 300 |     fn read_multiline_comment(&mut self) -> Result<Token, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `current` is never used
[INFO] [stdout]   --> src/frontend/parser.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Parser {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn current(&self) -> Result<&Token, String> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_subset` is never used
[INFO] [stdout]    --> src/frontend/type_inference.rs:691:8
[INFO] [stdout]     |
[INFO] [stdout] 267 | impl TypeInferencer {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 691 |     fn is_subset(&self, s1: &[Type], s2: &[Type]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_numeric`, `is_subset`, and `is_disjoint` are never used
[INFO] [stdout]    --> src/frontend/type_inference.rs:698:8
[INFO] [stdout]     |
[INFO] [stdout] 697 | impl Type {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] 698 |     fn is_numeric(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 712 |     fn is_subset(&self, other: &[Type]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 719 |     fn is_disjoint(&self, other: &[Type]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_any` is never used
[INFO] [stdout]   --> src/backend/interpreter.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | trait Callable {
[INFO] [stdout]    |       -------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 29 |     fn as_any(&self) -> &dyn Any;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `builder_ctx` is never read
[INFO] [stdout]   --> src/backend/cranelift_compiler.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct CraneliftCompiler {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] 21 |     builder_ctx: FunctionBuilderContext,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `Errand` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = help: convert the identifier to snake case: `errand`
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/frontend/parser.rs:405:13
[INFO] [stdout]     |
[INFO] [stdout] 405 |             self.expect(&TokenType::Newline); // Should these be eats or expects?
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 405 |             let _ = self.expect(&TokenType::Newline); // Should these be eats or expects?
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/frontend/resolver.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |             self.resolve_expr(expr);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 28 |             let _ = self.resolve_expr(expr);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Arg`
[INFO] [stdout]  --> src/bin/errand_cli.rs:2:32
[INFO] [stdout]   |
[INFO] [stdout] 2 | use clap::{Parser, Subcommand, Arg, ValueEnum};
[INFO] [stdout]   |                                ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 04s
[INFO] running `Command { std: "docker" "inspect" "517f13588f9deaf97eb2ee0bd58b51dd099e4cb83546b483c8d5c83836b2334b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "517f13588f9deaf97eb2ee0bd58b51dd099e4cb83546b483c8d5c83836b2334b", kill_on_drop: false }`
[INFO] [stdout] 517f13588f9deaf97eb2ee0bd58b51dd099e4cb83546b483c8d5c83836b2334b
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 73df034edac2b66a2a9869ce646e4170f4fc9d1b977a3e9ed742a24f472f96a8
[INFO] running `Command { std: "docker" "start" "-a" "73df034edac2b66a2a9869ce646e4170f4fc9d1b977a3e9ed742a24f472f96a8", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `TypeExpression`
[INFO] [stdout]  --> src/frontend/resolver.rs:4:53
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::frontend::ast::{Expression, Program, Id, TypeExpression};
[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: `lower::*`
[INFO] [stdout]   --> src/frontend/mod.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use lower::*; 
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt`
[INFO] [stdout]  --> src/backend/interpreter.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::fmt;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Linkage` and `ModuleError`
[INFO] [stdout]  --> src/backend/cranelift_compiler.rs:7:32
[INFO] [stdout]   |
[INFO] [stdout] 7 | use cranelift_module::{Module, Linkage, ModuleError};
[INFO] [stdout]   |                                ^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ExternalName`
[INFO] [stdout]  --> src/backend/cranelift_compiler.rs:8:39
[INFO] [stdout]   |
[INFO] [stdout] 8 | use cranelift_codegen::ir::{AbiParam, ExternalName};
[INFO] [stdout]   |                                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FuncRef`
[INFO] [stdout]  --> src/backend/cranelift_compiler.rs:9:36
[INFO] [stdout]   |
[INFO] [stdout] 9 | use cranelift_codegen::ir::{Value, FuncRef};
[INFO] [stdout]   |                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cranelift_codegen::print_errors::pretty_error`
[INFO] [stdout]   --> src/backend/cranelift_compiler.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use cranelift_codegen::print_errors::pretty_error;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `backend::interpreter`
[INFO] [stdout]  --> src/backend/preir.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::{backend::interpreter, frontend::ast::{BinaryOperator, FieldDefinition, Parameter, TypeExpression, UnaryOperator}};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `instr_index` should have an upper camel case name
[INFO] [stdout]    --> src/backend/preir.rs:204:10
[INFO] [stdout]     |
[INFO] [stdout] 204 | pub type instr_index = i64;
[INFO] [stdout]     |          ^^^^^^^^^^^ help: convert the identifier to upper camel case: `InstrIndex`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `decl_index` should have an upper camel case name
[INFO] [stdout]    --> src/backend/preir.rs:205:10
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub type decl_index = i64;
[INFO] [stdout]     |          ^^^^^^^^^^ help: convert the identifier to upper camel case: `DeclIndex`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> src/frontend/parser.rs:226:46
[INFO] [stdout]     |
[INFO] [stdout] 226 | ...   Expression::Identifier { id, type_expr } => Ok(Expression::BinaryOp { operator: BinaryOperator::Assignment, left: Box::new(lh...
[INFO] [stdout]     |                                ^^ help: try ignoring the field: `id: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_expr`
[INFO] [stdout]    --> src/frontend/parser.rs:226:50
[INFO] [stdout]     |
[INFO] [stdout] 226 | ...   Expression::Identifier { id, type_expr } => Ok(Expression::BinaryOp { operator: BinaryOperator::Assignment, left: Box::new(lh...
[INFO] [stdout]     |                                    ^^^^^^^^^ help: try ignoring the field: `type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type_expr`
[INFO] [stdout]   --> src/frontend/resolver.rs:58:68
[INFO] [stdout]    |
[INFO] [stdout] 58 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign: _ } => {
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^^^^ help: try ignoring the field: `return_type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]    --> src/frontend/type_inference.rs:303:66
[INFO] [stdout]     |
[INFO] [stdout] 303 |                 Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign: _ } => {
[INFO] [stdout]     |                                                                  ^^^^ help: try ignoring the field: `body: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_ty`
[INFO] [stdout]    --> src/frontend/type_inference.rs:491:45
[INFO] [stdout]     |
[INFO] [stdout] 491 | ...                   if let Some(field_ty) = fields.get(field_name) {
[INFO] [stdout]     |                                   ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_ty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `changed` is never read
[INFO] [stdout]    --> src/frontend/type_inference.rs:585:35
[INFO] [stdout]     |
[INFO] [stdout] 585 |                 let mut changed = false;
[INFO] [stdout]     |                                   ^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 591 |                         changed = true;
[INFO] [stdout]     |                         -------------- `changed` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]    --> src/frontend/type_inference.rs:617:28
[INFO] [stdout]     |
[INFO] [stdout] 617 |             (Type::Unknown(var), _) => {
[INFO] [stdout]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]    --> src/frontend/type_inference.rs:624:31
[INFO] [stdout]     |
[INFO] [stdout] 624 |             (_, Type::Unknown(var)) => {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `interpreter`
[INFO] [stdout]   --> src/backend/interpreter.rs:98:20
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn call(&self, interpreter: &mut Interpreter, arguments: Vec<Value>) -> Result<Value, String> {
[INFO] [stdout]    |                    ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interpreter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/backend/interpreter.rs:158:44
[INFO] [stdout]     |
[INFO] [stdout] 158 |                 Some(t.fields.iter().map(|(k, v)| Value::Type(*v.clone()).to_type_expr()).collect())
[INFO] [stdout]     |                                            ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/backend/interpreter.rs:252:41
[INFO] [stdout]     |
[INFO] [stdout] 252 |                     ControlFlow::Return(val) => unreachable!(),
[INFO] [stdout]     |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `iterator`
[INFO] [stdout]    --> src/backend/interpreter.rs:279:31
[INFO] [stdout]     |
[INFO] [stdout] 279 | ...   Expression::For { iterator, range, body } => Err(ControlFlow::Err("For loops not implemented in interpreter, please desugar"....
[INFO] [stdout]     |                         ^^^^^^^^ help: try ignoring the field: `iterator: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `range`
[INFO] [stdout]    --> src/backend/interpreter.rs:279:41
[INFO] [stdout]     |
[INFO] [stdout] 279 | ...   Expression::For { iterator, range, body } => Err(ControlFlow::Err("For loops not implemented in interpreter, please desugar"....
[INFO] [stdout]     |                                   ^^^^^ help: try ignoring the field: `range: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]    --> src/backend/interpreter.rs:279:48
[INFO] [stdout]     |
[INFO] [stdout] 279 | ...   Expression::For { iterator, range, body } => Err(ControlFlow::Err("For loops not implemented in interpreter, please desugar"....
[INFO] [stdout]     |                                          ^^^^ help: try ignoring the field: `body: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_expr`
[INFO] [stdout]    --> src/backend/interpreter.rs:285:40
[INFO] [stdout]     |
[INFO] [stdout] 285 |     fn eval_identifier(&self, id: &Id, type_expr: &Option<TypeExpression>) -> Result<Value, ControlFlow<Value, String>> {
[INFO] [stdout]     |                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_type_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operator`
[INFO] [stdout]    --> src/backend/interpreter.rs:328:34
[INFO] [stdout]     |
[INFO] [stdout] 328 |     fn handle_div_by_zero(&self, operator: &BinaryOperator, left: &Value, right: &Value) -> Result<Value, ControlFlow<Value, String...
[INFO] [stdout]     |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `left_val`
[INFO] [stdout]    --> src/backend/interpreter.rs:367:42
[INFO] [stdout]     |
[INFO] [stdout] 367 |             (BinaryOperator::Assignment, left_val, right_val) => {
[INFO] [stdout]     |                                          ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_left_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_expr`
[INFO] [stdout]    --> src/backend/interpreter.rs:368:53
[INFO] [stdout]     |
[INFO] [stdout] 368 |                 if let Expression::Identifier { id, type_expr } = left {
[INFO] [stdout]     |                                                     ^^^^^^^^^ help: try ignoring the field: `type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/backend/interpreter.rs:391:49
[INFO] [stdout]     |
[INFO] [stdout] 391 |             (BinaryOperator::Divide, Value::Int(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                 ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/backend/interpreter.rs:391:64
[INFO] [stdout]     |
[INFO] [stdout] 391 |             (BinaryOperator::Divide, Value::Int(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                                ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/backend/interpreter.rs:392:51
[INFO] [stdout]     |
[INFO] [stdout] 392 |             (BinaryOperator::Divide, Value::Float(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                   ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling Errand v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/backend/interpreter.rs:392:68
[INFO] [stdout]     |
[INFO] [stdout] 392 |             (BinaryOperator::Divide, Value::Float(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                                    ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/backend/interpreter.rs:393:49
[INFO] [stdout]     |
[INFO] [stdout] 393 |             (BinaryOperator::Divide, Value::Int(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                 ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/backend/interpreter.rs:393:66
[INFO] [stdout]     |
[INFO] [stdout] 393 |             (BinaryOperator::Divide, Value::Int(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                                  ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/backend/interpreter.rs:394:51
[INFO] [stdout]     |
[INFO] [stdout] 394 |             (BinaryOperator::Divide, Value::Float(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                   ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/backend/interpreter.rs:394:66
[INFO] [stdout]     |
[INFO] [stdout] 394 |             (BinaryOperator::Divide, Value::Float(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                                  ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type_expr`
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:187:81
[INFO] [stdout]     |
[INFO] [stdout] 187 | ...: &[Parameter], return_type_expr: &Option<TypeExpression>) -> Result<(), String> {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_type_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type_expr`
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:216:89
[INFO] [stdout]     |
[INFO] [stdout] 216 | ...: &[Parameter], return_type_expr: &Option<TypeExpression>) -> Result<(), String> {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_type_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameters`
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:279:75
[INFO] [stdout]     |
[INFO] [stdout] 279 |     fn add_function_to_module(&mut self, name: &str, func: &mut Function, parameters: &[Parameter]) -> Result<FuncId, String> {
[INFO] [stdout]     |                                                                           ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parameters`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:346:13
[INFO] [stdout]     |
[INFO] [stdout] 346 |         let mut ffi_functions = if format!("{}", arch) == "aarch64" && format!("{}", os) == "darwin" {
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_expr`
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:685:42
[INFO] [stdout]     |
[INFO] [stdout] 685 |             Expression::Identifier { id, type_expr } => {
[INFO] [stdout]     |                                          ^^^^^^^^^ help: try ignoring the field: `type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1058:46
[INFO] [stdout]      |
[INFO] [stdout] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stdout]      |                                              ^^ help: try ignoring the field: `id: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameters`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1058:50
[INFO] [stdout]      |
[INFO] [stdout] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stdout]      |                                                  ^^^^^^^^^^ help: try ignoring the field: `parameters: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1058:62
[INFO] [stdout]      |
[INFO] [stdout] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stdout]      |                                                              ^^^^ help: try ignoring the field: `body: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type_expr`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1058:68
[INFO] [stdout]      |
[INFO] [stdout] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stdout]      |                                                                    ^^^^^^^^^^^^^^^^ help: try ignoring the field: `return_type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1088:44
[INFO] [stdout]      |
[INFO] [stdout] 1088 |             Expression::StructDefinition { id, fields } => {
[INFO] [stdout]      |                                            ^^ help: try ignoring the field: `id: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fields`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1088:48
[INFO] [stdout]      |
[INFO] [stdout] 1088 |             Expression::StructDefinition { id, fields } => {
[INFO] [stdout]      |                                                ^^^^^^ help: try ignoring the field: `fields: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `func`
[INFO] [stdout]   --> src/backend/ir_lowering.rs:29:48
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn compile_clif_to_machine_code(&self, func: Function) -> Result<Vec<u8>, String> {
[INFO] [stdout]    |                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_func`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program`
[INFO] [stdout]   --> src/backend/ir_lowering.rs:51:33
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn lower_to_llvm(&self, program: &Program) -> Result<String, String> {
[INFO] [stdout]    |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/backend/preir.rs:47:36
[INFO] [stdout]    |
[INFO] [stdout] 47 |                     Instr::VarDecl(data) => format!("    {}", self.format_instr_with_context(instr)),
[INFO] [stdout]    |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/backend/preir.rs:48:37
[INFO] [stdout]    |
[INFO] [stdout] 48 |                     Instr::FuncDecl(data) => format!("    {}", self.format_instr_with_context(instr)),
[INFO] [stdout]    |                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/backend/preir.rs:49:39
[INFO] [stdout]    |
[INFO] [stdout] 49 |                     Instr::StructDecl(data) => format!("    {}", self.format_instr_with_context(instr)),
[INFO] [stdout]    |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tokens` is never read
[INFO] [stdout]    --> src/frontend/lexer.rs:209:5
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub struct Lexer {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 208 |     source: String,
[INFO] [stdout] 209 |     tokens: Vec<Token>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_identifier_start` and `read_multiline_comment` are never used
[INFO] [stdout]    --> src/frontend/lexer.rs:281:8
[INFO] [stdout]     |
[INFO] [stdout] 217 | impl Lexer {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 281 |     fn is_identifier_start(&self, c: char) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 300 |     fn read_multiline_comment(&mut self) -> Result<Token, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `current` is never used
[INFO] [stdout]   --> src/frontend/parser.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Parser {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn current(&self) -> Result<&Token, String> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_subset` is never used
[INFO] [stdout]    --> src/frontend/type_inference.rs:691:8
[INFO] [stdout]     |
[INFO] [stdout] 267 | impl TypeInferencer {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 691 |     fn is_subset(&self, s1: &[Type], s2: &[Type]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_numeric`, `is_subset`, and `is_disjoint` are never used
[INFO] [stdout]    --> src/frontend/type_inference.rs:698:8
[INFO] [stdout]     |
[INFO] [stdout] 697 | impl Type {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] 698 |     fn is_numeric(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 712 |     fn is_subset(&self, other: &[Type]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 719 |     fn is_disjoint(&self, other: &[Type]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_any` is never used
[INFO] [stdout]   --> src/backend/interpreter.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | trait Callable {
[INFO] [stdout]    |       -------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 29 |     fn as_any(&self) -> &dyn Any;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `builder_ctx` is never read
[INFO] [stdout]   --> src/backend/cranelift_compiler.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct CraneliftCompiler {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] 21 |     builder_ctx: FunctionBuilderContext,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `Errand` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = help: convert the identifier to snake case: `errand`
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/frontend/parser.rs:405:13
[INFO] [stdout]     |
[INFO] [stdout] 405 |             self.expect(&TokenType::Newline); // Should these be eats or expects?
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 405 |             let _ = self.expect(&TokenType::Newline); // Should these be eats or expects?
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/frontend/resolver.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |             self.resolve_expr(expr);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 28 |             let _ = self.resolve_expr(expr);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Arg`
[INFO] [stdout]  --> src/bin/errand_cli.rs:2:32
[INFO] [stdout]   |
[INFO] [stdout] 2 | use clap::{Parser, Subcommand, Arg, ValueEnum};
[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: `TypeExpression`
[INFO] [stdout]  --> src/frontend/resolver.rs:4:53
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::frontend::ast::{Expression, Program, Id, TypeExpression};
[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: `lower::*`
[INFO] [stdout]   --> src/frontend/mod.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use lower::*; 
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt`
[INFO] [stdout]  --> src/backend/interpreter.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::fmt;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Linkage` and `ModuleError`
[INFO] [stdout]  --> src/backend/cranelift_compiler.rs:7:32
[INFO] [stdout]   |
[INFO] [stdout] 7 | use cranelift_module::{Module, Linkage, ModuleError};
[INFO] [stdout]   |                                ^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ExternalName`
[INFO] [stdout]  --> src/backend/cranelift_compiler.rs:8:39
[INFO] [stdout]   |
[INFO] [stdout] 8 | use cranelift_codegen::ir::{AbiParam, ExternalName};
[INFO] [stdout]   |                                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FuncRef`
[INFO] [stdout]  --> src/backend/cranelift_compiler.rs:9:36
[INFO] [stdout]   |
[INFO] [stdout] 9 | use cranelift_codegen::ir::{Value, FuncRef};
[INFO] [stdout]   |                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cranelift_codegen::print_errors::pretty_error`
[INFO] [stdout]   --> src/backend/cranelift_compiler.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use cranelift_codegen::print_errors::pretty_error;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `backend::interpreter`
[INFO] [stdout]  --> src/backend/preir.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::{backend::interpreter, frontend::ast::{BinaryOperator, FieldDefinition, Parameter, TypeExpression, UnaryOperator}};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `instr_index` should have an upper camel case name
[INFO] [stdout]    --> src/backend/preir.rs:204:10
[INFO] [stdout]     |
[INFO] [stdout] 204 | pub type instr_index = i64;
[INFO] [stdout]     |          ^^^^^^^^^^^ help: convert the identifier to upper camel case: `InstrIndex`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `decl_index` should have an upper camel case name
[INFO] [stdout]    --> src/backend/preir.rs:205:10
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub type decl_index = i64;
[INFO] [stdout]     |          ^^^^^^^^^^ help: convert the identifier to upper camel case: `DeclIndex`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> src/frontend/parser.rs:226:46
[INFO] [stdout]     |
[INFO] [stdout] 226 | ...   Expression::Identifier { id, type_expr } => Ok(Expression::BinaryOp { operator: BinaryOperator::Assignment, left: Box::new(lh...
[INFO] [stdout]     |                                ^^ help: try ignoring the field: `id: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_expr`
[INFO] [stdout]    --> src/frontend/parser.rs:226:50
[INFO] [stdout]     |
[INFO] [stdout] 226 | ...   Expression::Identifier { id, type_expr } => Ok(Expression::BinaryOp { operator: BinaryOperator::Assignment, left: Box::new(lh...
[INFO] [stdout]     |                                    ^^^^^^^^^ help: try ignoring the field: `type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type_expr`
[INFO] [stdout]   --> src/frontend/resolver.rs:58:68
[INFO] [stdout]    |
[INFO] [stdout] 58 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign: _ } => {
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^^^^ help: try ignoring the field: `return_type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]    --> src/frontend/type_inference.rs:303:66
[INFO] [stdout]     |
[INFO] [stdout] 303 |                 Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign: _ } => {
[INFO] [stdout]     |                                                                  ^^^^ help: try ignoring the field: `body: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field_ty`
[INFO] [stdout]    --> src/frontend/type_inference.rs:491:45
[INFO] [stdout]     |
[INFO] [stdout] 491 | ...                   if let Some(field_ty) = fields.get(field_name) {
[INFO] [stdout]     |                                   ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_ty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `changed` is never read
[INFO] [stdout]    --> src/frontend/type_inference.rs:585:35
[INFO] [stdout]     |
[INFO] [stdout] 585 |                 let mut changed = false;
[INFO] [stdout]     |                                   ^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 591 |                         changed = true;
[INFO] [stdout]     |                         -------------- `changed` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]    --> src/frontend/type_inference.rs:617:28
[INFO] [stdout]     |
[INFO] [stdout] 617 |             (Type::Unknown(var), _) => {
[INFO] [stdout]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]    --> src/frontend/type_inference.rs:624:31
[INFO] [stdout]     |
[INFO] [stdout] 624 |             (_, Type::Unknown(var)) => {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `interpreter`
[INFO] [stdout]   --> src/backend/interpreter.rs:98:20
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn call(&self, interpreter: &mut Interpreter, arguments: Vec<Value>) -> Result<Value, String> {
[INFO] [stdout]    |                    ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interpreter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/backend/interpreter.rs:158:44
[INFO] [stdout]     |
[INFO] [stdout] 158 |                 Some(t.fields.iter().map(|(k, v)| Value::Type(*v.clone()).to_type_expr()).collect())
[INFO] [stdout]     |                                            ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/backend/interpreter.rs:252:41
[INFO] [stdout]     |
[INFO] [stdout] 252 |                     ControlFlow::Return(val) => unreachable!(),
[INFO] [stdout]     |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `iterator`
[INFO] [stdout]    --> src/backend/interpreter.rs:279:31
[INFO] [stdout]     |
[INFO] [stdout] 279 | ...   Expression::For { iterator, range, body } => Err(ControlFlow::Err("For loops not implemented in interpreter, please desugar"....
[INFO] [stdout]     |                         ^^^^^^^^ help: try ignoring the field: `iterator: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `range`
[INFO] [stdout]    --> src/backend/interpreter.rs:279:41
[INFO] [stdout]     |
[INFO] [stdout] 279 | ...   Expression::For { iterator, range, body } => Err(ControlFlow::Err("For loops not implemented in interpreter, please desugar"....
[INFO] [stdout]     |                                   ^^^^^ help: try ignoring the field: `range: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]    --> src/backend/interpreter.rs:279:48
[INFO] [stdout]     |
[INFO] [stdout] 279 | ...   Expression::For { iterator, range, body } => Err(ControlFlow::Err("For loops not implemented in interpreter, please desugar"....
[INFO] [stdout]     |                                          ^^^^ help: try ignoring the field: `body: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_expr`
[INFO] [stdout]    --> src/backend/interpreter.rs:285:40
[INFO] [stdout]     |
[INFO] [stdout] 285 |     fn eval_identifier(&self, id: &Id, type_expr: &Option<TypeExpression>) -> Result<Value, ControlFlow<Value, String>> {
[INFO] [stdout]     |                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_type_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operator`
[INFO] [stdout]    --> src/backend/interpreter.rs:328:34
[INFO] [stdout]     |
[INFO] [stdout] 328 |     fn handle_div_by_zero(&self, operator: &BinaryOperator, left: &Value, right: &Value) -> Result<Value, ControlFlow<Value, String...
[INFO] [stdout]     |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `left_val`
[INFO] [stdout]    --> src/backend/interpreter.rs:367:42
[INFO] [stdout]     |
[INFO] [stdout] 367 |             (BinaryOperator::Assignment, left_val, right_val) => {
[INFO] [stdout]     |                                          ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_left_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_expr`
[INFO] [stdout]    --> src/backend/interpreter.rs:368:53
[INFO] [stdout]     |
[INFO] [stdout] 368 |                 if let Expression::Identifier { id, type_expr } = left {
[INFO] [stdout]     |                                                     ^^^^^^^^^ help: try ignoring the field: `type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/backend/interpreter.rs:391:49
[INFO] [stdout]     |
[INFO] [stdout] 391 |             (BinaryOperator::Divide, Value::Int(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                 ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/backend/interpreter.rs:391:64
[INFO] [stdout]     |
[INFO] [stdout] 391 |             (BinaryOperator::Divide, Value::Int(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                                ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/backend/interpreter.rs:392:51
[INFO] [stdout]     |
[INFO] [stdout] 392 |             (BinaryOperator::Divide, Value::Float(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                   ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/backend/interpreter.rs:392:68
[INFO] [stdout]     |
[INFO] [stdout] 392 |             (BinaryOperator::Divide, Value::Float(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                                    ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/backend/interpreter.rs:393:49
[INFO] [stdout]     |
[INFO] [stdout] 393 |             (BinaryOperator::Divide, Value::Int(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                 ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/backend/interpreter.rs:393:66
[INFO] [stdout]     |
[INFO] [stdout] 393 |             (BinaryOperator::Divide, Value::Int(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                                  ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/backend/interpreter.rs:394:51
[INFO] [stdout]     |
[INFO] [stdout] 394 |             (BinaryOperator::Divide, Value::Float(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                   ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/backend/interpreter.rs:394:66
[INFO] [stdout]     |
[INFO] [stdout] 394 |             (BinaryOperator::Divide, Value::Float(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stdout]     |                                                                  ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type_expr`
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:187:81
[INFO] [stdout]     |
[INFO] [stdout] 187 | ...: &[Parameter], return_type_expr: &Option<TypeExpression>) -> Result<(), String> {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_type_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type_expr`
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:216:89
[INFO] [stdout]     |
[INFO] [stdout] 216 | ...: &[Parameter], return_type_expr: &Option<TypeExpression>) -> Result<(), String> {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_type_expr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameters`
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:279:75
[INFO] [stdout]     |
[INFO] [stdout] 279 |     fn add_function_to_module(&mut self, name: &str, func: &mut Function, parameters: &[Parameter]) -> Result<FuncId, String> {
[INFO] [stdout]     |                                                                           ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parameters`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:346:13
[INFO] [stdout]     |
[INFO] [stdout] 346 |         let mut ffi_functions = if format!("{}", arch) == "aarch64" && format!("{}", os) == "darwin" {
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `type_expr`
[INFO] [stdout]    --> src/backend/cranelift_compiler.rs:685:42
[INFO] [stdout]     |
[INFO] [stdout] 685 |             Expression::Identifier { id, type_expr } => {
[INFO] [stdout]     |                                          ^^^^^^^^^ help: try ignoring the field: `type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1058:46
[INFO] [stdout]      |
[INFO] [stdout] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stdout]      |                                              ^^ help: try ignoring the field: `id: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameters`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1058:50
[INFO] [stdout]      |
[INFO] [stdout] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stdout]      |                                                  ^^^^^^^^^^ help: try ignoring the field: `parameters: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1058:62
[INFO] [stdout]      |
[INFO] [stdout] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stdout]      |                                                              ^^^^ help: try ignoring the field: `body: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `return_type_expr`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1058:68
[INFO] [stdout]      |
[INFO] [stdout] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stdout]      |                                                                    ^^^^^^^^^^^^^^^^ help: try ignoring the field: `return_type_expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1088:44
[INFO] [stdout]      |
[INFO] [stdout] 1088 |             Expression::StructDefinition { id, fields } => {
[INFO] [stdout]      |                                            ^^ help: try ignoring the field: `id: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fields`
[INFO] [stdout]     --> src/backend/cranelift_compiler.rs:1088:48
[INFO] [stdout]      |
[INFO] [stdout] 1088 |             Expression::StructDefinition { id, fields } => {
[INFO] [stdout]      |                                                ^^^^^^ help: try ignoring the field: `fields: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `func`
[INFO] [stdout]   --> src/backend/ir_lowering.rs:29:48
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn compile_clif_to_machine_code(&self, func: Function) -> Result<Vec<u8>, String> {
[INFO] [stdout]    |                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_func`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program`
[INFO] [stdout]   --> src/backend/ir_lowering.rs:51:33
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn lower_to_llvm(&self, program: &Program) -> Result<String, String> {
[INFO] [stdout]    |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/backend/preir.rs:47:36
[INFO] [stdout]    |
[INFO] [stdout] 47 |                     Instr::VarDecl(data) => format!("    {}", self.format_instr_with_context(instr)),
[INFO] [stdout]    |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/backend/preir.rs:48:37
[INFO] [stdout]    |
[INFO] [stdout] 48 |                     Instr::FuncDecl(data) => format!("    {}", self.format_instr_with_context(instr)),
[INFO] [stdout]    |                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/backend/preir.rs:49:39
[INFO] [stdout]    |
[INFO] [stdout] 49 |                     Instr::StructDecl(data) => format!("    {}", self.format_instr_with_context(instr)),
[INFO] [stdout]    |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tokens` is never read
[INFO] [stdout]    --> src/frontend/lexer.rs:209:5
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub struct Lexer {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 208 |     source: String,
[INFO] [stdout] 209 |     tokens: Vec<Token>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_identifier_start` and `read_multiline_comment` are never used
[INFO] [stdout]    --> src/frontend/lexer.rs:281:8
[INFO] [stdout]     |
[INFO] [stdout] 217 | impl Lexer {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 281 |     fn is_identifier_start(&self, c: char) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 300 |     fn read_multiline_comment(&mut self) -> Result<Token, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `current` is never used
[INFO] [stdout]   --> src/frontend/parser.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Parser {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn current(&self) -> Result<&Token, String> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_subset` is never used
[INFO] [stdout]    --> src/frontend/type_inference.rs:691:8
[INFO] [stdout]     |
[INFO] [stdout] 267 | impl TypeInferencer {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 691 |     fn is_subset(&self, s1: &[Type], s2: &[Type]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_numeric`, `is_subset`, and `is_disjoint` are never used
[INFO] [stdout]    --> src/frontend/type_inference.rs:698:8
[INFO] [stdout]     |
[INFO] [stdout] 697 | impl Type {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] 698 |     fn is_numeric(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 712 |     fn is_subset(&self, other: &[Type]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 719 |     fn is_disjoint(&self, other: &[Type]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_any` is never used
[INFO] [stdout]   --> src/backend/interpreter.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | trait Callable {
[INFO] [stdout]    |       -------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 29 |     fn as_any(&self) -> &dyn Any;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `builder_ctx` is never read
[INFO] [stdout]   --> src/backend/cranelift_compiler.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct CraneliftCompiler {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] 21 |     builder_ctx: FunctionBuilderContext,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/frontend/parser.rs:405:13
[INFO] [stdout]     |
[INFO] [stdout] 405 |             self.expect(&TokenType::Newline); // Should these be eats or expects?
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 405 |             let _ = self.expect(&TokenType::Newline); // Should these be eats or expects?
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/frontend/resolver.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |             self.resolve_expr(expr);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 28 |             let _ = self.resolve_expr(expr);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.63s
[INFO] running `Command { std: "docker" "inspect" "73df034edac2b66a2a9869ce646e4170f4fc9d1b977a3e9ed742a24f472f96a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "73df034edac2b66a2a9869ce646e4170f4fc9d1b977a3e9ed742a24f472f96a8", kill_on_drop: false }`
[INFO] [stdout] 73df034edac2b66a2a9869ce646e4170f4fc9d1b977a3e9ed742a24f472f96a8
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 37b4d9cb18beef3eaa74e5416490651615087f713e3c899bfbd47c6a3ed4698b
[INFO] running `Command { std: "docker" "start" "-a" "37b4d9cb18beef3eaa74e5416490651615087f713e3c899bfbd47c6a3ed4698b", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `TypeExpression`
[INFO] [stderr]  --> src/frontend/resolver.rs:4:53
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::frontend::ast::{Expression, Program, Id, TypeExpression};
[INFO] [stderr]   |                                                     ^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `lower::*`
[INFO] [stderr]   --> src/frontend/mod.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub use lower::*; 
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fmt`
[INFO] [stderr]  --> src/backend/interpreter.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::fmt;
[INFO] [stderr]   |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Linkage` and `ModuleError`
[INFO] [stderr]  --> src/backend/cranelift_compiler.rs:7:32
[INFO] [stderr]   |
[INFO] [stderr] 7 | use cranelift_module::{Module, Linkage, ModuleError};
[INFO] [stderr]   |                                ^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ExternalName`
[INFO] [stderr]  --> src/backend/cranelift_compiler.rs:8:39
[INFO] [stderr]   |
[INFO] [stderr] 8 | use cranelift_codegen::ir::{AbiParam, ExternalName};
[INFO] [stderr]   |                                       ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `FuncRef`
[INFO] [stderr]  --> src/backend/cranelift_compiler.rs:9:36
[INFO] [stderr]   |
[INFO] [stderr] 9 | use cranelift_codegen::ir::{Value, FuncRef};
[INFO] [stderr]   |                                    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `cranelift_codegen::print_errors::pretty_error`
[INFO] [stderr]   --> src/backend/cranelift_compiler.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use cranelift_codegen::print_errors::pretty_error;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `backend::interpreter`
[INFO] [stderr]  --> src/backend/preir.rs:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::{backend::interpreter, frontend::ast::{BinaryOperator, FieldDefinition, Parameter, TypeExpression, UnaryOperator}};
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type `instr_index` should have an upper camel case name
[INFO] [stderr]    --> src/backend/preir.rs:204:10
[INFO] [stderr]     |
[INFO] [stderr] 204 | pub type instr_index = i64;
[INFO] [stderr]     |          ^^^^^^^^^^^ help: convert the identifier to upper camel case: `InstrIndex`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `decl_index` should have an upper camel case name
[INFO] [stderr]    --> src/backend/preir.rs:205:10
[INFO] [stderr]     |
[INFO] [stderr] 205 | pub type decl_index = i64;
[INFO] [stderr]     |          ^^^^^^^^^^ help: convert the identifier to upper camel case: `DeclIndex`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `id`
[INFO] [stderr]    --> src/frontend/parser.rs:226:46
[INFO] [stderr]     |
[INFO] [stderr] 226 | ...   Expression::Identifier { id, type_expr } => Ok(Expression::BinaryOp { operator: BinaryOperator::Assignment, left: Box::new(lh...
[INFO] [stderr]     |                                ^^ help: try ignoring the field: `id: _`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `type_expr`
[INFO] [stderr]    --> src/frontend/parser.rs:226:50
[INFO] [stderr]     |
[INFO] [stderr] 226 | ...   Expression::Identifier { id, type_expr } => Ok(Expression::BinaryOp { operator: BinaryOperator::Assignment, left: Box::new(lh...
[INFO] [stderr]     |                                    ^^^^^^^^^ help: try ignoring the field: `type_expr: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `return_type_expr`
[INFO] [stderr]   --> src/frontend/resolver.rs:58:68
[INFO] [stderr]    |
[INFO] [stderr] 58 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign: _ } => {
[INFO] [stderr]    |                                                                    ^^^^^^^^^^^^^^^^ help: try ignoring the field: `return_type_expr: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `body`
[INFO] [stderr]    --> src/frontend/type_inference.rs:303:66
[INFO] [stderr]     |
[INFO] [stderr] 303 |                 Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign: _ } => {
[INFO] [stderr]     |                                                                  ^^^^ help: try ignoring the field: `body: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `field_ty`
[INFO] [stderr]    --> src/frontend/type_inference.rs:491:45
[INFO] [stderr]     |
[INFO] [stderr] 491 | ...                   if let Some(field_ty) = fields.get(field_name) {
[INFO] [stderr]     |                                   ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_field_ty`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `changed` is never read
[INFO] [stderr]    --> src/frontend/type_inference.rs:585:35
[INFO] [stderr]     |
[INFO] [stderr] 585 |                 let mut changed = false;
[INFO] [stderr]     |                                   ^^^^^ this value is reassigned later and never used
[INFO] [stderr] ...
[INFO] [stderr] 591 |                         changed = true;
[INFO] [stderr]     |                         -------------- `changed` is overwritten here before the previous value is read
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `var`
[INFO] [stderr]    --> src/frontend/type_inference.rs:617:28
[INFO] [stderr]     |
[INFO] [stderr] 617 |             (Type::Unknown(var), _) => {
[INFO] [stderr]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `var`
[INFO] [stderr]    --> src/frontend/type_inference.rs:624:31
[INFO] [stderr]     |
[INFO] [stderr] 624 |             (_, Type::Unknown(var)) => {
[INFO] [stderr]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `interpreter`
[INFO] [stderr]   --> src/backend/interpreter.rs:98:20
[INFO] [stderr]    |
[INFO] [stderr] 98 |     fn call(&self, interpreter: &mut Interpreter, arguments: Vec<Value>) -> Result<Value, String> {
[INFO] [stderr]    |                    ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interpreter`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `k`
[INFO] [stderr]    --> src/backend/interpreter.rs:158:44
[INFO] [stderr]     |
[INFO] [stderr] 158 |                 Some(t.fields.iter().map(|(k, v)| Value::Type(*v.clone()).to_type_expr()).collect())
[INFO] [stderr]     |                                            ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `val`
[INFO] [stderr]    --> src/backend/interpreter.rs:252:41
[INFO] [stderr]     |
[INFO] [stderr] 252 |                     ControlFlow::Return(val) => unreachable!(),
[INFO] [stderr]     |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `iterator`
[INFO] [stderr]    --> src/backend/interpreter.rs:279:31
[INFO] [stderr]     |
[INFO] [stderr] 279 | ...   Expression::For { iterator, range, body } => Err(ControlFlow::Err("For loops not implemented in interpreter, please desugar"....
[INFO] [stderr]     |                         ^^^^^^^^ help: try ignoring the field: `iterator: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `range`
[INFO] [stderr]    --> src/backend/interpreter.rs:279:41
[INFO] [stderr]     |
[INFO] [stderr] 279 | ...   Expression::For { iterator, range, body } => Err(ControlFlow::Err("For loops not implemented in interpreter, please desugar"....
[INFO] [stderr]     |                                   ^^^^^ help: try ignoring the field: `range: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `body`
[INFO] [stderr]    --> src/backend/interpreter.rs:279:48
[INFO] [stderr]     |
[INFO] [stderr] 279 | ...   Expression::For { iterator, range, body } => Err(ControlFlow::Err("For loops not implemented in interpreter, please desugar"....
[INFO] [stderr]     |                                          ^^^^ help: try ignoring the field: `body: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `type_expr`
[INFO] [stderr]    --> src/backend/interpreter.rs:285:40
[INFO] [stderr]     |
[INFO] [stderr] 285 |     fn eval_identifier(&self, id: &Id, type_expr: &Option<TypeExpression>) -> Result<Value, ControlFlow<Value, String>> {
[INFO] [stderr]     |                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_type_expr`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `operator`
[INFO] [stderr]    --> src/backend/interpreter.rs:328:34
[INFO] [stderr]     |
[INFO] [stderr] 328 |     fn handle_div_by_zero(&self, operator: &BinaryOperator, left: &Value, right: &Value) -> Result<Value, ControlFlow<Value, String...
[INFO] [stderr]     |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operator`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `left_val`
[INFO] [stderr]    --> src/backend/interpreter.rs:367:42
[INFO] [stderr]     |
[INFO] [stderr] 367 |             (BinaryOperator::Assignment, left_val, right_val) => {
[INFO] [stderr]     |                                          ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_left_val`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `type_expr`
[INFO] [stderr]    --> src/backend/interpreter.rs:368:53
[INFO] [stderr]     |
[INFO] [stderr] 368 |                 if let Expression::Identifier { id, type_expr } = left {
[INFO] [stderr]     |                                                     ^^^^^^^^^ help: try ignoring the field: `type_expr: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `l`
[INFO] [stderr]    --> src/backend/interpreter.rs:391:49
[INFO] [stderr]     |
[INFO] [stderr] 391 |             (BinaryOperator::Divide, Value::Int(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stderr]     |                                                 ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `r`
[INFO] [stderr]    --> src/backend/interpreter.rs:391:64
[INFO] [stderr]     |
[INFO] [stderr] 391 |             (BinaryOperator::Divide, Value::Int(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stderr]     |                                                                ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `l`
[INFO] [stderr]    --> src/backend/interpreter.rs:392:51
[INFO] [stderr]     |
[INFO] [stderr] 392 |             (BinaryOperator::Divide, Value::Float(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stderr]     |                                                   ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `r`
[INFO] [stderr]    --> src/backend/interpreter.rs:392:68
[INFO] [stderr]     |
[INFO] [stderr] 392 |             (BinaryOperator::Divide, Value::Float(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stderr]     |                                                                    ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `l`
[INFO] [stderr]    --> src/backend/interpreter.rs:393:49
[INFO] [stderr]     |
[INFO] [stderr] 393 |             (BinaryOperator::Divide, Value::Int(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stderr]     |                                                 ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `r`
[INFO] [stderr]    --> src/backend/interpreter.rs:393:66
[INFO] [stderr]     |
[INFO] [stderr] 393 |             (BinaryOperator::Divide, Value::Int(l), Value::Float(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stderr]     |                                                                  ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `l`
[INFO] [stderr]    --> src/backend/interpreter.rs:394:51
[INFO] [stderr]     |
[INFO] [stderr] 394 |             (BinaryOperator::Divide, Value::Float(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stderr]     |                                                   ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `r`
[INFO] [stderr]    --> src/backend/interpreter.rs:394:66
[INFO] [stderr]     |
[INFO] [stderr] 394 |             (BinaryOperator::Divide, Value::Float(l), Value::Int(r)) => self.handle_div_by_zero(operator, &left_val, &right_val),
[INFO] [stderr]     |                                                                  ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `return_type_expr`
[INFO] [stderr]    --> src/backend/cranelift_compiler.rs:187:81
[INFO] [stderr]     |
[INFO] [stderr] 187 | ...: &[Parameter], return_type_expr: &Option<TypeExpression>) -> Result<(), String> {
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_type_expr`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `return_type_expr`
[INFO] [stderr]    --> src/backend/cranelift_compiler.rs:216:89
[INFO] [stderr]     |
[INFO] [stderr] 216 | ...: &[Parameter], return_type_expr: &Option<TypeExpression>) -> Result<(), String> {
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_type_expr`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `parameters`
[INFO] [stderr]    --> src/backend/cranelift_compiler.rs:279:75
[INFO] [stderr]     |
[INFO] [stderr] 279 |     fn add_function_to_module(&mut self, name: &str, func: &mut Function, parameters: &[Parameter]) -> Result<FuncId, String> {
[INFO] [stderr]     |                                                                           ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parameters`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/backend/cranelift_compiler.rs:346:13
[INFO] [stderr]     |
[INFO] [stderr] 346 |         let mut ffi_functions = if format!("{}", arch) == "aarch64" && format!("{}", os) == "darwin" {
[INFO] [stderr]     |             ----^^^^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `type_expr`
[INFO] [stderr]    --> src/backend/cranelift_compiler.rs:685:42
[INFO] [stderr]     |
[INFO] [stderr] 685 |             Expression::Identifier { id, type_expr } => {
[INFO] [stderr]     |                                          ^^^^^^^^^ help: try ignoring the field: `type_expr: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `id`
[INFO] [stderr]     --> src/backend/cranelift_compiler.rs:1058:46
[INFO] [stderr]      |
[INFO] [stderr] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stderr]      |                                              ^^ help: try ignoring the field: `id: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `parameters`
[INFO] [stderr]     --> src/backend/cranelift_compiler.rs:1058:50
[INFO] [stderr]      |
[INFO] [stderr] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stderr]      |                                                  ^^^^^^^^^^ help: try ignoring the field: `parameters: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `body`
[INFO] [stderr]     --> src/backend/cranelift_compiler.rs:1058:62
[INFO] [stderr]      |
[INFO] [stderr] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stderr]      |                                                              ^^^^ help: try ignoring the field: `body: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `return_type_expr`
[INFO] [stderr]     --> src/backend/cranelift_compiler.rs:1058:68
[INFO] [stderr]      |
[INFO] [stderr] 1058 |             Expression::FunctionDefinition { id, parameters, body, return_type_expr, foreign } => {
[INFO] [stderr]      |                                                                    ^^^^^^^^^^^^^^^^ help: try ignoring the field: `return_type_expr: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `id`
[INFO] [stderr]     --> src/backend/cranelift_compiler.rs:1088:44
[INFO] [stderr]      |
[INFO] [stderr] 1088 |             Expression::StructDefinition { id, fields } => {
[INFO] [stderr]      |                                            ^^ help: try ignoring the field: `id: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `fields`
[INFO] [stderr]     --> src/backend/cranelift_compiler.rs:1088:48
[INFO] [stderr]      |
[INFO] [stderr] 1088 |             Expression::StructDefinition { id, fields } => {
[INFO] [stderr]      |                                                ^^^^^^ help: try ignoring the field: `fields: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `func`
[INFO] [stderr]   --> src/backend/ir_lowering.rs:29:48
[INFO] [stderr]    |
[INFO] [stderr] 29 |     pub fn compile_clif_to_machine_code(&self, func: Function) -> Result<Vec<u8>, String> {
[INFO] [stderr]    |                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_func`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `program`
[INFO] [stderr]   --> src/backend/ir_lowering.rs:51:33
[INFO] [stderr]    |
[INFO] [stderr] 51 |     pub fn lower_to_llvm(&self, program: &Program) -> Result<String, String> {
[INFO] [stderr]    |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `data`
[INFO] [stderr]   --> src/backend/preir.rs:47:36
[INFO] [stderr]    |
[INFO] [stderr] 47 |                     Instr::VarDecl(data) => format!("    {}", self.format_instr_with_context(instr)),
[INFO] [stderr]    |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `data`
[INFO] [stderr]   --> src/backend/preir.rs:48:37
[INFO] [stderr]    |
[INFO] [stderr] 48 |                     Instr::FuncDecl(data) => format!("    {}", self.format_instr_with_context(instr)),
[INFO] [stderr]    |                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `data`
[INFO] [stderr]   --> src/backend/preir.rs:49:39
[INFO] [stderr]    |
[INFO] [stderr] 49 |                     Instr::StructDecl(data) => format!("    {}", self.format_instr_with_context(instr)),
[INFO] [stderr]    |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stderr] 
[INFO] [stderr] warning: field `tokens` is never read
[INFO] [stderr]    --> src/frontend/lexer.rs:209:5
[INFO] [stderr]     |
[INFO] [stderr] 207 | pub struct Lexer {
[INFO] [stderr]     |            ----- field in this struct
[INFO] [stderr] 208 |     source: String,
[INFO] [stderr] 209 |     tokens: Vec<Token>,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: methods `is_identifier_start` and `read_multiline_comment` are never used
[INFO] [stderr]    --> src/frontend/lexer.rs:281:8
[INFO] [stderr]     |
[INFO] [stderr] 217 | impl Lexer {
[INFO] [stderr]     | ---------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 281 |     fn is_identifier_start(&self, c: char) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 300 |     fn read_multiline_comment(&mut self) -> Result<Token, String> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `current` is never used
[INFO] [stderr]   --> src/frontend/parser.rs:67:8
[INFO] [stderr]    |
[INFO] [stderr] 16 | impl Parser {
[INFO] [stderr]    | ----------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 67 |     fn current(&self) -> Result<&Token, String> {
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `is_subset` is never used
[INFO] [stderr]    --> src/frontend/type_inference.rs:691:8
[INFO] [stderr]     |
[INFO] [stderr] 267 | impl TypeInferencer {
[INFO] [stderr]     | ------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 691 |     fn is_subset(&self, s1: &[Type], s2: &[Type]) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `is_numeric`, `is_subset`, and `is_disjoint` are never used
[INFO] [stderr]    --> src/frontend/type_inference.rs:698:8
[INFO] [stderr]     |
[INFO] [stderr] 697 | impl Type {
[INFO] [stderr]     | --------- methods in this implementation
[INFO] [stderr] 698 |     fn is_numeric(&self) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 712 |     fn is_subset(&self, other: &[Type]) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 719 |     fn is_disjoint(&self, other: &[Type]) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `as_any` is never used
[INFO] [stderr]   --> src/backend/interpreter.rs:29:8
[INFO] [stderr]    |
[INFO] [stderr] 24 | trait Callable {
[INFO] [stderr]    |       -------- method in this trait
[INFO] [stderr] ...
[INFO] [stderr] 29 |     fn as_any(&self) -> &dyn Any;
[INFO] [stderr]    |        ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `builder_ctx` is never read
[INFO] [stderr]   --> src/backend/cranelift_compiler.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub struct CraneliftCompiler {
[INFO] [stderr]    |            ----------------- field in this struct
[INFO] [stderr] 21 |     builder_ctx: FunctionBuilderContext,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: crate `Errand` should have a snake case name
[INFO] [stderr]   |
[INFO] [stderr]   = help: convert the identifier to snake case: `errand`
[INFO] [stderr]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]    --> src/frontend/parser.rs:405:13
[INFO] [stderr]     |
[INFO] [stderr] 405 |             self.expect(&TokenType::Newline); // Should these be eats or expects?
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 405 |             let _ = self.expect(&TokenType::Newline); // Should these be eats or expects?
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]   --> src/frontend/resolver.rs:28:13
[INFO] [stderr]    |
[INFO] [stderr] 28 |             self.resolve_expr(expr);
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 28 |             let _ = self.resolve_expr(expr);
[INFO] [stderr]    |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `Errand` (lib) generated 62 warnings (run `cargo fix --lib -p Errand` to apply 49 suggestions)
[INFO] [stderr] warning: `Errand` (lib test) generated 61 warnings (61 duplicates)
[INFO] [stderr] warning: unused import: `Arg`
[INFO] [stderr]  --> src/bin/errand_cli.rs:2:32
[INFO] [stderr]   |
[INFO] [stderr] 2 | use clap::{Parser, Subcommand, Arg, ValueEnum};
[INFO] [stderr]   |                                ^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `Errand` (bin "errand_cli" test) generated 1 warning (run `cargo fix --bin "errand_cli" -p Errand --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.21s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/Errand-cf342adb9f6b4800)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test backend::preir_gen::tests::test_function_definition ... ok
[INFO] [stdout] test backend::preir_gen::tests::test_basic_ir_generation ... ok
[INFO] [stdout] test backend::preir_gen::tests::test_instruction_formatting ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- backend::preir_gen::tests::test_instruction_formatting stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'backend::preir_gen::tests::test_instruction_formatting' (20) panicked at src/backend/preir_gen.rs:406:9:
[INFO] [stdout] assertion failed: formatted_output.contains("PreIR Instructions:")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x56ddbeab0aba - std[29689e6404d28ef9]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x56ddbeab0aba - std[29689e6404d28ef9]::backtrace_rs::backtrace::trace_unsynchronized::<std[29689e6404d28ef9]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x56ddbeab0aba - std[29689e6404d28ef9]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x56ddbeab0aba - <<std[29689e6404d28ef9]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[e929cb53b82a81ca]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x56ddbeac490a - <core[e929cb53b82a81ca]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x56ddbeac490a - core[e929cb53b82a81ca]::fmt::write
[INFO] [stdout]    6:     0x56ddbeab52f2 - std[29689e6404d28ef9]::io::default_write_fmt::<alloc[9d7caffeb3b5d2c6]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/io/mod.rs:621:11
[INFO] [stdout]    7:     0x56ddbeab52f2 - <alloc[9d7caffeb3b5d2c6]::vec::Vec<u8> as std[29689e6404d28ef9]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/io/mod.rs:1976:13
[INFO] [stdout]    8:     0x56ddbea8fabf - <std[29689e6404d28ef9]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x56ddbea8fabf - std[29689e6404d28ef9]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x56ddbeaa8f19 - std[29689e6404d28ef9]::panicking::default_hook
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x56ddbea3cfac - <alloc[9d7caffeb3b5d2c6]::boxed::Box<dyn for<'a, 'b> core[e929cb53b82a81ca]::ops::function::Fn<(&'a std[29689e6404d28ef9]::panic::PanicHookInfo<'b>,), Output = ()> + core[e929cb53b82a81ca]::marker::Send + core[e929cb53b82a81ca]::marker::Sync> as core[e929cb53b82a81ca]::ops::function::Fn<(&std[29689e6404d28ef9]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/alloc/src/boxed.rs:2285:9
[INFO] [stdout]   12:     0x56ddbea3cfac - test[a24b3028667022f7]::test_main_inner::<test[a24b3028667022f7]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x56ddbeaa90d2 - <alloc[9d7caffeb3b5d2c6]::boxed::Box<dyn for<'a, 'b> core[e929cb53b82a81ca]::ops::function::Fn<(&'a std[29689e6404d28ef9]::panic::PanicHookInfo<'b>,), Output = ()> + core[e929cb53b82a81ca]::marker::Send + core[e929cb53b82a81ca]::marker::Sync> as core[e929cb53b82a81ca]::ops::function::Fn<(&std[29689e6404d28ef9]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/alloc/src/boxed.rs:2285:9
[INFO] [stdout]   14:     0x56ddbeaa90d2 - std[29689e6404d28ef9]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x56ddbea8fbaa - std[29689e6404d28ef9]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x56ddbea84d89 - std[29689e6404d28ef9]::sys::backtrace::__rust_end_short_backtrace::<std[29689e6404d28ef9]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x56ddbea9088d - __rustc[3aed6af316653e63]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x56ddbeac505c - core[e929cb53b82a81ca]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x56ddbeac5022 - core[e929cb53b82a81ca]::panicking::panic
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/panicking.rs:150:5
[INFO] [stdout]   20:     0x56ddbea28ab4 - Errand[3e88c0a8d1c7e73b]::backend::preir_gen::tests::test_instruction_formatting
[INFO] [stdout]                                at /opt/rustwide/workdir/src/backend/preir_gen.rs:406:9
[INFO] [stdout]   21:     0x56ddbea1fc97 - Errand[3e88c0a8d1c7e73b]::backend::preir_gen::tests::test_instruction_formatting::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/backend/preir_gen.rs:376:37
[INFO] [stdout]   22:     0x56ddbea301e6 - <Errand[3e88c0a8d1c7e73b]::backend::preir_gen::tests::test_instruction_formatting::{closure#0} as core[e929cb53b82a81ca]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x56ddbea3028b - <fn() -> core[e929cb53b82a81ca]::result::Result<(), alloc[9d7caffeb3b5d2c6]::string::String> as core[e929cb53b82a81ca]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x56ddbea3028b - test[a24b3028667022f7]::__rust_begin_short_backtrace::<core[e929cb53b82a81ca]::result::Result<(), alloc[9d7caffeb3b5d2c6]::string::String>, fn() -> core[e929cb53b82a81ca]::result::Result<(), alloc[9d7caffeb3b5d2c6]::string::String>>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/test/src/lib.rs:724:18
[INFO] [stdout]   25:     0x56ddbea3da7b - test[a24b3028667022f7]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/test/src/lib.rs:747:74
[INFO] [stdout]   26:     0x56ddbea3da7b - <core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<test[a24b3028667022f7]::run_test_in_process::{closure#0}> as core[e929cb53b82a81ca]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   27:     0x56ddbea3da7b - std[29689e6404d28ef9]::panicking::catch_unwind::do_call::<core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<test[a24b3028667022f7]::run_test_in_process::{closure#0}>, core[e929cb53b82a81ca]::result::Result<(), alloc[9d7caffeb3b5d2c6]::string::String>>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   28:     0x56ddbea3da7b - std[29689e6404d28ef9]::panicking::catch_unwind::<core[e929cb53b82a81ca]::result::Result<(), alloc[9d7caffeb3b5d2c6]::string::String>, core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<test[a24b3028667022f7]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   29:     0x56ddbea3da7b - std[29689e6404d28ef9]::panic::catch_unwind::<core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<test[a24b3028667022f7]::run_test_in_process::{closure#0}>, core[e929cb53b82a81ca]::result::Result<(), alloc[9d7caffeb3b5d2c6]::string::String>>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panic.rs:359:14
[INFO] [stdout]   30:     0x56ddbea3da7b - test[a24b3028667022f7]::run_test_in_process
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/test/src/lib.rs:747:27
[INFO] [stdout]   31:     0x56ddbea3da7b - test[a24b3028667022f7]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/test/src/lib.rs:668:43
[INFO] [stdout]   32:     0x56ddbea37194 - test[a24b3028667022f7]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/test/src/lib.rs:698:41
[INFO] [stdout]   33:     0x56ddbea37194 - std[29689e6404d28ef9]::sys::backtrace::__rust_begin_short_backtrace::<test[a24b3028667022f7]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   34:     0x56ddbea40682 - std[29689e6404d28ef9]::thread::lifecycle::spawn_unchecked::<test[a24b3028667022f7]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   35:     0x56ddbea40682 - <core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<std[29689e6404d28ef9]::thread::lifecycle::spawn_unchecked<test[a24b3028667022f7]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[e929cb53b82a81ca]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   36:     0x56ddbea40682 - std[29689e6404d28ef9]::panicking::catch_unwind::do_call::<core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<std[29689e6404d28ef9]::thread::lifecycle::spawn_unchecked<test[a24b3028667022f7]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   37:     0x56ddbea40682 - std[29689e6404d28ef9]::panicking::catch_unwind::<(), core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<std[29689e6404d28ef9]::thread::lifecycle::spawn_unchecked<test[a24b3028667022f7]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   38:     0x56ddbea40682 - std[29689e6404d28ef9]::panic::catch_unwind::<core[e929cb53b82a81ca]::panic::unwind_safe::AssertUnwindSafe<std[29689e6404d28ef9]::thread::lifecycle::spawn_unchecked<test[a24b3028667022f7]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/panic.rs:359:14
[INFO] [stdout]   39:     0x56ddbea40682 - std[29689e6404d28ef9]::thread::lifecycle::spawn_unchecked::<test[a24b3028667022f7]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   40:     0x56ddbea40682 - <std[29689e6404d28ef9]::thread::lifecycle::spawn_unchecked<test[a24b3028667022f7]::run_test::{closure#1}, ()>::{closure#1} as core[e929cb53b82a81ca]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x56ddbeab03cf - <alloc[9d7caffeb3b5d2c6]::boxed::Box<dyn core[e929cb53b82a81ca]::ops::function::FnOnce<(), Output = ()> + core[e929cb53b82a81ca]::marker::Send> as core[e929cb53b82a81ca]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/alloc/src/boxed.rs:2271:9
[INFO] [stdout]   42:     0x56ddbeab03cf - <std[29689e6404d28ef9]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/ec6f9a5b4413f74386267ef8efc93712c2ce6db6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   43:     0x7afbd0849aa4 - <unknown>
[INFO] [stdout]   44:     0x7afbd08d6a64 - clone
[INFO] [stdout]   45:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     backend::preir_gen::tests::test_instruction_formatting
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 2 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "37b4d9cb18beef3eaa74e5416490651615087f713e3c899bfbd47c6a3ed4698b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "37b4d9cb18beef3eaa74e5416490651615087f713e3c899bfbd47c6a3ed4698b", kill_on_drop: false }`
[INFO] [stdout] 37b4d9cb18beef3eaa74e5416490651615087f713e3c899bfbd47c6a3ed4698b
