[INFO] cloning repository https://github.com/puranjaigarg783/program_analysis
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/puranjaigarg783/program_analysis" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpuranjaigarg783%2Fprogram_analysis", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpuranjaigarg783%2Fprogram_analysis'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 73f3d91e39d2254885fc057c7e09cee1639bcbe1
[INFO] checking puranjaigarg783/program_analysis/73f3d91e39d2254885fc057c7e09cee1639bcbe1 against master#e0e204f3e97ad5f79524b9c259dc38df606ed82c for pr-149218
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpuranjaigarg783%2Fprogram_analysis" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/puranjaigarg783/program_analysis
[INFO] finished tweaking git repo https://github.com/puranjaigarg783/program_analysis
[INFO] tweaked toml for git repo https://github.com/puranjaigarg783/program_analysis written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/puranjaigarg783/program_analysis on toolchain e0e204f3e97ad5f79524b9c259dc38df606ed82c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e0e204f3e97ad5f79524b9c259dc38df606ed82c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/puranjaigarg783/program_analysis 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" "+e0e204f3e97ad5f79524b9c259dc38df606ed82c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded cpufeatures v0.2.15
[INFO] [stderr]   Downloaded serde-lexpr v0.1.3
[INFO] [stderr]   Downloaded pest_generator v2.7.14
[INFO] [stderr]   Downloaded lexpr-macros v0.2.2
[INFO] [stderr]   Downloaded ascent_base v0.7.0
[INFO] [stderr]   Downloaded pest_derive v2.7.14
[INFO] [stderr]   Downloaded boxcar v0.1.0
[INFO] [stderr]   Downloaded derive-syn-parse v0.2.0
[INFO] [stderr]   Downloaded ascent v0.7.0
[INFO] [stderr]   Downloaded pest v2.7.14
[INFO] [stderr]   Downloaded logos-codegen v0.14.2
[INFO] [stderr]   Downloaded logos-derive v0.14.2
[INFO] [stderr]   Downloaded lexpr v0.2.7
[INFO] [stderr]   Downloaded pest_meta v2.7.14
[INFO] [stderr]   Downloaded ascent_macro v0.7.0
[INFO] [stderr]   Downloaded hashconsing v1.6.0
[INFO] [stderr]   Downloaded logos v0.14.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+e0e204f3e97ad5f79524b9c259dc38df606ed82c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8ed38f6cb04344bbbbccb04e41b394a0ef2cdd311bee4a8c2a020213216f7558
[INFO] running `Command { std: "docker" "start" "-a" "8ed38f6cb04344bbbbccb04e41b394a0ef2cdd311bee4a8c2a020213216f7558", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8ed38f6cb04344bbbbccb04e41b394a0ef2cdd311bee4a8c2a020213216f7558", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8ed38f6cb04344bbbbccb04e41b394a0ef2cdd311bee4a8c2a020213216f7558", kill_on_drop: false }`
[INFO] [stdout] 8ed38f6cb04344bbbbccb04e41b394a0ef2cdd311bee4a8c2a020213216f7558
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+e0e204f3e97ad5f79524b9c259dc38df606ed82c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6b134cd0b061566c99c5bd12e10b49c06fad52ca6e808ed2459320234591ccad
[INFO] running `Command { std: "docker" "start" "-a" "6b134cd0b061566c99c5bd12e10b49c06fad52ca6e808ed2459320234591ccad", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.215
[INFO] [stderr]    Compiling hashbrown v0.15.1
[INFO] [stderr]     Checking either v1.13.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.89
[INFO] [stderr]     Checking itoa v1.0.13
[INFO] [stderr]    Compiling beef v0.5.2
[INFO] [stderr]     Checking ahash v0.8.11
[INFO] [stderr]    Compiling fixedbitset v0.4.2
[INFO] [stderr]    Compiling ascent_base v0.7.0
[INFO] [stderr]    Compiling serde_json v1.0.133
[INFO] [stderr]    Compiling duplicate v1.0.0
[INFO] [stderr]     Checking instant v0.1.13
[INFO] [stderr]     Checking boxcar v0.1.0
[INFO] [stderr]     Checking diff v0.1.13
[INFO] [stderr]     Checking yansi v1.0.1
[INFO] [stderr]     Checking hashconsing v1.6.0
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]     Checking pretty_assertions v1.4.1
[INFO] [stderr]    Compiling indexmap v2.6.0
[INFO] [stderr]    Compiling syn v2.0.87
[INFO] [stderr]    Compiling lexpr-macros v0.2.2
[INFO] [stderr]     Checking lexpr v0.2.7
[INFO] [stderr]    Compiling petgraph v0.6.5
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking dashmap v5.5.3
[INFO] [stderr]    Compiling logos-codegen v0.14.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling serde_derive v1.0.215
[INFO] [stderr]    Compiling derive-syn-parse v0.2.0
[INFO] [stderr]    Compiling derive_more v0.99.18
[INFO] [stderr]    Compiling ascent_macro v0.7.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling pest v2.7.14
[INFO] [stderr]    Compiling logos-derive v0.14.2
[INFO] [stderr]     Checking logos v0.14.2
[INFO] [stderr]    Compiling pest_meta v2.7.14
[INFO] [stderr]     Checking ascent v0.7.0
[INFO] [stderr]    Compiling pest_generator v2.7.14
[INFO] [stderr]    Compiling pest_derive v2.7.14
[INFO] [stderr]     Checking serde-lexpr v0.1.3
[INFO] [stderr]     Checking optimization v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `collapse`
[INFO] [stdout]  --> middle_end/optimization/tests.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use collapse::*;
[INFO] [stdout]   |     ^^^^^^^^ use of unresolved module or unlinked crate `collapse`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `collapse`, use `cargo add collapse` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `collapse`
[INFO] [stdout]  --> middle_end/analysis/tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use collapse::*;
[INFO] [stdout]   |     ^^^^^^^^ use of unresolved module or unlinked crate `collapse`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `collapse`, use `cargo add collapse` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `collapsed_eq` in this scope
[INFO] [stdout]   --> middle_end/analysis/tests.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     collapsed_eq!(&actual, &expected);
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `collapsed_eq` in this scope
[INFO] [stdout]   --> middle_end/optimization/tests.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     collapsed_eq!(&actual, &expected);
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `associated_impl::*`
[INFO] [stdout]  --> front_end/ast.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use associated_impl::*;
[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: `display_impl::*`
[INFO] [stdout]   --> front_end/ast.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use display_impl::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fromstr_impl::*`
[INFO] [stdout]   --> front_end/ast.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use fromstr_impl::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `associated_impl::*`
[INFO] [stdout]  --> front_end/ast.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use associated_impl::*;
[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: `display_impl::*`
[INFO] [stdout]   --> front_end/ast.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use display_impl::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fromstr_impl::*`
[INFO] [stdout]   --> front_end/ast.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use fromstr_impl::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `derive_more::Display`
[INFO] [stdout]  --> middle_end/analysis/integer_interval.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use derive_more::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `derive_more::Display`
[INFO] [stdout]  --> middle_end/analysis/integer_interval.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use derive_more::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> middle_end/analysis_rdef/reaching_defs.rs:37:59
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn analyze(program: &Valid<Program>, func: FuncId) -> (Map<ProgramPoint, Set<ProgramPoint>>) {
[INFO] [stdout]    |                                                           ^                                    ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 37 - pub fn analyze(program: &Valid<Program>, func: FuncId) -> (Map<ProgramPoint, Set<ProgramPoint>>) {
[INFO] [stdout] 37 + pub fn analyze(program: &Valid<Program>, func: FuncId) -> Map<ProgramPoint, Set<ProgramPoint>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> middle_end/analysis_rdef/reaching_defs.rs:37:59
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn analyze(program: &Valid<Program>, func: FuncId) -> (Map<ProgramPoint, Set<ProgramPoint>>) {
[INFO] [stdout]    |                                                           ^                                    ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 37 - pub fn analyze(program: &Valid<Program>, func: FuncId) -> (Map<ProgramPoint, Set<ProgramPoint>>) {
[INFO] [stdout] 37 + pub fn analyze(program: &Valid<Program>, func: FuncId) -> Map<ProgramPoint, Set<ProgramPoint>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:37:93
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn analyze(program: &Valid<Program>, func: FuncId, pts_to: Map<String, Set<String>>) -> (Map<ProgramPoint, Set<ProgramPoint>>) {
[INFO] [stdout]    |                                                                                             ^                                    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 37 - pub fn analyze(program: &Valid<Program>, func: FuncId, pts_to: Map<String, Set<String>>) -> (Map<ProgramPoint, Set<ProgramPoint>>) {
[INFO] [stdout] 37 + pub fn analyze(program: &Valid<Program>, func: FuncId, pts_to: Map<String, Set<String>>) -> Map<ProgramPoint, Set<ProgramPoint>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt`
[INFO] [stdout]  --> middle_end/analysis_constraints.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::fmt;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:37:93
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn analyze(program: &Valid<Program>, func: FuncId, pts_to: Map<String, Set<String>>) -> (Map<ProgramPoint, Set<ProgramPoint>>) {
[INFO] [stdout]    |                                                                                             ^                                    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 37 - pub fn analyze(program: &Valid<Program>, func: FuncId, pts_to: Map<String, Set<String>>) -> (Map<ProgramPoint, Set<ProgramPoint>>) {
[INFO] [stdout] 37 + pub fn analyze(program: &Valid<Program>, func: FuncId, pts_to: Map<String, Set<String>>) -> Map<ProgramPoint, Set<ProgramPoint>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt`
[INFO] [stdout]  --> middle_end/analysis_constraints.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::fmt;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::associated_impl::*`
[INFO] [stdout]   --> middle_end/lir.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub use self::associated_impl::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::display_impl::*`
[INFO] [stdout]   --> middle_end/lir.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub use self::display_impl::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::associated_impl::*`
[INFO] [stdout]   --> middle_end/lir.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub use self::associated_impl::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::display_impl::*`
[INFO] [stdout]   --> middle_end/lir.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub use self::display_impl::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::misc_impl::*`
[INFO] [stdout]   --> middle_end/lir.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub use self::misc_impl::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::misc_impl::*`
[INFO] [stdout]   --> middle_end/lir.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub use self::misc_impl::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> middle_end/constraints/constraint_node.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> middle_end/constraints/constraint_node.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> middle_end/constraints/constraint_solve.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap as Map`
[INFO] [stdout]  --> middle_end/constraints.rs:9:24
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::collections::{BTreeMap as Map, BTreeSet as Set};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> middle_end/constraints/constraint_solve.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap as Map`
[INFO] [stdout]  --> middle_end/constraints.rs:9:24
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::collections::{BTreeMap as Map, BTreeSet as Set};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BTreeMap as Map` and `BTreeSet as Set`
[INFO] [stdout]  --> middle_end/taint.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::{BTreeMap as Map, BTreeSet as Set};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Display`
[INFO] [stdout]  --> middle_end/taint.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::fmt::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `derive_more::Display`
[INFO] [stdout]  --> middle_end/control_analysis/control.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use derive_more::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> middle_end/control_analysis/control.rs:29:60
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn analyze2(program: &Valid<Program>, func: FuncId) -> (Map<BbId, Env>) {
[INFO] [stdout]    |                                                            ^              ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 29 - pub fn analyze2(program: &Valid<Program>, func: FuncId) -> (Map<BbId, Env>) {
[INFO] [stdout] 29 + pub fn analyze2(program: &Valid<Program>, func: FuncId) -> Map<BbId, Env>  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BTreeMap as Map` and `BTreeSet as Set`
[INFO] [stdout]  --> middle_end/taint.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::{BTreeMap as Map, BTreeSet as Set};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Display`
[INFO] [stdout]  --> middle_end/taint.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::fmt::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `derive_more::Display`
[INFO] [stdout]  --> middle_end/control_analysis/control.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use derive_more::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> middle_end/control_analysis/control.rs:29:60
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn analyze2(program: &Valid<Program>, func: FuncId) -> (Map<BbId, Env>) {
[INFO] [stdout]    |                                                            ^              ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 29 - pub fn analyze2(program: &Valid<Program>, func: FuncId) -> (Map<BbId, Env>) {
[INFO] [stdout] 29 + pub fn analyze2(program: &Valid<Program>, func: FuncId) -> Map<BbId, Env>  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> middle_end/control_analysis.rs:389:6
[INFO] [stdout]     |
[INFO] [stdout] 389 | ) -> (Map<BbId, A>) {
[INFO] [stdout]     |      ^            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 389 - ) -> (Map<BbId, A>) {
[INFO] [stdout] 389 + ) -> Map<BbId, A> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> middle_end/control_analysis.rs:389:6
[INFO] [stdout]     |
[INFO] [stdout] 389 | ) -> (Map<BbId, A>) {
[INFO] [stdout]     |      ^            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 389 - ) -> (Map<BbId, A>) {
[INFO] [stdout] 389 + ) -> Map<BbId, A> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> middle_end/analysis/integer_interval.rs:447:29
[INFO] [stdout]     |
[INFO] [stdout] 446 | ...                   panic!("panicking even though it should work, b_div div by 0");
[INFO] [stdout]     |                       -------------------------------------------------------------- any code following this expression is unreachable
[INFO] [stdout] 447 | ...                   (Unbounded, i1)
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> middle_end/analysis/integer_interval.rs:447:29
[INFO] [stdout]     |
[INFO] [stdout] 446 | ...                   panic!("panicking even though it should work, b_div div by 0");
[INFO] [stdout]     |                       -------------------------------------------------------------- any code following this expression is unreachable
[INFO] [stdout] 447 | ...                   (Unbounded, i1)
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]    --> interpreter.rs:193:22
[INFO] [stdout]     |
[INFO] [stdout] 193 |             AddrOf { lhs, op } => {
[INFO] [stdout]     |                      ^^^ help: try ignoring the field: `lhs: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> interpreter.rs:193:27
[INFO] [stdout]     |
[INFO] [stdout] 193 |             AddrOf { lhs, op } => {
[INFO] [stdout]     |                           ^^ help: try ignoring the field: `op: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> middle_end/analysis/constant_prop.rs:350:27
[INFO] [stdout]     |
[INFO] [stdout] 350 |             AddrOf { lhs, op } => if lhs.typ().is_int() { self.insert(&lhs, &V::Top) },
[INFO] [stdout]     |                           ^^ help: try ignoring the field: `op: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> middle_end/analysis/constant_prop.rs:502:13
[INFO] [stdout]     |
[INFO] [stdout] 502 |             _ => (),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> middle_end/analysis/constant_prop.rs:502:13
[INFO] [stdout]     |
[INFO] [stdout] 458 | /             Branch {
[INFO] [stdout] 459 | |                 cond,
[INFO] [stdout] 460 | |                 tt,
[INFO] [stdout] 461 | |                 ff,
[INFO] [stdout] 462 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 471 | /             CallDirect {
[INFO] [stdout] 472 | |                 lhs,
[INFO] [stdout] 473 | |                 callee: _,
[INFO] [stdout] 474 | |                 args,
[INFO] [stdout] 475 | |                 next_bb: _,
[INFO] [stdout] 476 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 483 | /             CallIndirect {
[INFO] [stdout] 484 | |                 lhs,
[INFO] [stdout] 485 | |                 callee: _,
[INFO] [stdout] 486 | |                 args,
[INFO] [stdout] 487 | |                 next_bb: _,
[INFO] [stdout] 488 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 496 |               Jump(_) => {
[INFO] [stdout]     |               ------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 502 |               _ => (),
[INFO] [stdout]     |               ^ ...and 1 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> middle_end/analysis/integer_interval.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             _ => panic!("unexpected case in widening"),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> middle_end/analysis/integer_interval.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |             (V::Bot, _) => *widee,
[INFO] [stdout]    |             ----------- matches some of the same values
[INFO] [stdout] 48 |             (_, V::Bot) => *self,
[INFO] [stdout]    |             ----------- matches some of the same values
[INFO] [stdout] 49 |             // else it is range
[INFO] [stdout] 50 |             (V::R((self_low, self_high)), V::R((widee_low, widee_high))) => {
[INFO] [stdout]    |             ------------------------------------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 64 |             _ => panic!("unexpected case in widening"),
[INFO] [stdout]    |             ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> middle_end/analysis/integer_interval.rs:683:27
[INFO] [stdout]     |
[INFO] [stdout] 683 |             AddrOf { lhs, op } => if lhs.typ().is_int() { self.insert(&lhs, &V::top()) },
[INFO] [stdout]     |                           ^^ help: try ignoring the field: `op: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> middle_end/analysis/integer_interval.rs:440:35
[INFO] [stdout]     |
[INFO] [stdout] 440 |             fn interval_division((mut i1_low, mut i1_high): IntInterval, (mut i2_low, mut i2_high): IntInterval) -> Value {
[INFO] [stdout]     |                                   ----^^^^^^
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> middle_end/analysis/integer_interval.rs:440:47
[INFO] [stdout]     |
[INFO] [stdout] 440 |             fn interval_division((mut i1_low, mut i1_high): IntInterval, (mut i2_low, mut i2_high): IntInterval) -> Value {
[INFO] [stdout]     |                                               ----^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> middle_end/analysis/integer_interval.rs:850:13
[INFO] [stdout]     |
[INFO] [stdout] 850 |             _ => (),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> middle_end/analysis/integer_interval.rs:850:13
[INFO] [stdout]     |
[INFO] [stdout] 791 | /             Branch {
[INFO] [stdout] 792 | |                 cond,
[INFO] [stdout] 793 | |                 tt,
[INFO] [stdout] 794 | |                 ff,
[INFO] [stdout] 795 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 819 | /             CallDirect {
[INFO] [stdout] 820 | |                 lhs,
[INFO] [stdout] 821 | |                 callee: _,
[INFO] [stdout] 822 | |                 args,
[INFO] [stdout] 823 | |                 next_bb: _,
[INFO] [stdout] 824 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 831 | /             CallIndirect {
[INFO] [stdout] 832 | |                 lhs,
[INFO] [stdout] 833 | |                 callee: _,
[INFO] [stdout] 834 | |                 args,
[INFO] [stdout] 835 | |                 next_bb: _,
[INFO] [stdout] 836 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 844 |               Jump(_) => {
[INFO] [stdout]     |               ------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 850 |               _ => (),
[INFO] [stdout]     |               ^ ...and 1 other patterns collectively make this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `join_type`
[INFO] [stdout]   --> middle_end/analysis/liveness.rs:37:57
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn join_with(&mut self, _rhs: &Self, _block: &BbId, join_type: i64) -> bool {
[INFO] [stdout]    |                                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_join_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]   --> middle_end/analysis/liveness.rs:41:53
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn analyze_inst(&mut self, _inst: &Instruction, cfg: &Cfg) {
[INFO] [stdout]    |                                                     ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]   --> middle_end/analysis/liveness.rs:45:50
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn analyze_term(&mut self, _term: &Terminal, cfg: &Cfg) -> Set<BbId> {
[INFO] [stdout]    |                                                  ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]   --> middle_end/analysis/liveness.rs:49:44
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn analyze_bb(&self, _bb: &BasicBlock, cfg: &Cfg) -> (Vec<Self>, Set<BbId>) {
[INFO] [stdout]    |                                            ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `join_type`
[INFO] [stdout]   --> middle_end/analysis/reaching_defs.rs:63:56
[INFO] [stdout]    |
[INFO] [stdout] 63 |     fn join_with(&mut self, rhs: &Self, _block: &BbId, join_type: i64) -> bool {
[INFO] [stdout]    |                                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_join_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]   --> middle_end/analysis/reaching_defs.rs:86:52
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn analyze_inst(&mut self, inst: &Instruction, cfg: &Cfg) {
[INFO] [stdout]    |                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `this_inst`
[INFO] [stdout]   --> middle_end/analysis/reaching_defs.rs:87:13
[INFO] [stdout]    |
[INFO] [stdout] 87 |         let this_inst = &self.curr_inst.clone().unwrap();
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_this_inst`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]    --> middle_end/analysis/reaching_defs.rs:141:49
[INFO] [stdout]     |
[INFO] [stdout] 141 |     fn analyze_term(&mut self, term: &Terminal, cfg: &Cfg) -> Set<BbId> {
[INFO] [stdout]     |                                                 ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ret_ty`
[INFO] [stdout]    --> middle_end/analysis.rs:195:30
[INFO] [stdout]     |
[INFO] [stdout] 195 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                              ^^^^^^ help: try ignoring the field: `ret_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `param_ty`
[INFO] [stdout]    --> middle_end/analysis.rs:195:38
[INFO] [stdout]     |
[INFO] [stdout] 195 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                                      ^^^^^^^^ help: try ignoring the field: `param_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> middle_end/analysis_rdef/reaching_defs.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let len = self.0.len();
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bb`
[INFO] [stdout]   --> middle_end/analysis_rdef/reaching_defs.rs:17:14
[INFO] [stdout]    |
[INFO] [stdout] 17 |         for (bb, pp) in self.0.iter().enumerate() {
[INFO] [stdout]    |              ^^ help: if this is intentional, prefix it with an underscore: `_bb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `join_type`
[INFO] [stdout]   --> middle_end/analysis_rdef/reaching_defs.rs:78:56
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn join_with(&mut self, rhs: &Self, _block: &BbId, join_type: i64) -> bool {
[INFO] [stdout]    |                                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_join_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `store`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:101:112
[INFO] [stdout]     |
[INFO] [stdout] 101 | ...Point, Set<ProgramPoint>>, store: &mut Map<VarId, Set<InstId>>) {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:129:31
[INFO] [stdout]     |
[INFO] [stdout] 129 |             Alloc { lhs, num, id } => {
[INFO] [stdout]     |                               ^^ help: try ignoring the field: `id: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ext_callee`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:141:28
[INFO] [stdout]     |
[INFO] [stdout] 141 |             CallExt { lhs, ext_callee, args } => {
[INFO] [stdout]     |                            ^^^^^^^^^^ help: try ignoring the field: `ext_callee: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:165:29
[INFO] [stdout]     |
[INFO] [stdout] 165 |             Gfp { lhs, src, field } => {
[INFO] [stdout]     |                             ^^^^^ help: try ignoring the field: `field: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `store`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:223:109
[INFO] [stdout]     |
[INFO] [stdout] 223 | ...Point, Set<ProgramPoint>>, store: &mut Map<VarId, Set<InstId>>) -> Set<BbId> {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `callee`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:280:31
[INFO] [stdout]     |
[INFO] [stdout] 280 |             CallDirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                               ^^^^^^ help: try ignoring the field: `callee: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_bb`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:280:45
[INFO] [stdout]     |
[INFO] [stdout] 280 |             CallDirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                                             ^^^^^^^ help: try ignoring the field: `next_bb: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_bb`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:291:47
[INFO] [stdout]     |
[INFO] [stdout] 291 |             CallIndirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                                               ^^^^^^^ help: try ignoring the field: `next_bb: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> middle_end/analysis_rdef.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |                 i,
[INFO] [stdout]    |                 ^ help: try ignoring the field: `i: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ret_ty`
[INFO] [stdout]    --> middle_end/analysis_rdef.rs:306:30
[INFO] [stdout]     |
[INFO] [stdout] 306 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                              ^^^^^^ help: try ignoring the field: `ret_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `param_ty`
[INFO] [stdout]    --> middle_end/analysis_rdef.rs:306:38
[INFO] [stdout]     |
[INFO] [stdout] 306 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                                      ^^^^^^^^ help: try ignoring the field: `param_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let len = self.0.len();
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bb`
[INFO] [stdout]   --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:17:14
[INFO] [stdout]    |
[INFO] [stdout] 17 |         for (bb, pp) in self.0.iter().enumerate() {
[INFO] [stdout]    |              ^^ help: if this is intentional, prefix it with an underscore: `_bb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `join_type`
[INFO] [stdout]   --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:78:56
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn join_with(&mut self, rhs: &Self, _block: &BbId, join_type: i64) -> bool {
[INFO] [stdout]    |                                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_join_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `store`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:101:112
[INFO] [stdout]     |
[INFO] [stdout] 101 | ...Point, Set<ProgramPoint>>, store: &mut Map<VarId, Set<InstId>>) {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:129:31
[INFO] [stdout]     |
[INFO] [stdout] 129 |             Alloc { lhs, num, id } => {
[INFO] [stdout]     |                               ^^ help: try ignoring the field: `id: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ext_callee`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:141:28
[INFO] [stdout]     |
[INFO] [stdout] 141 |             CallExt { lhs, ext_callee, args } => {
[INFO] [stdout]     |                            ^^^^^^^^^^ help: try ignoring the field: `ext_callee: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:165:29
[INFO] [stdout]     |
[INFO] [stdout] 165 |             Gfp { lhs, src, field } => {
[INFO] [stdout]     |                             ^^^^^ help: try ignoring the field: `field: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `store`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:229:109
[INFO] [stdout]     |
[INFO] [stdout] 229 | ...Point, Set<ProgramPoint>>, store: &mut Map<VarId, Set<InstId>>) -> Set<BbId> {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `callee`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:286:31
[INFO] [stdout]     |
[INFO] [stdout] 286 |             CallDirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                               ^^^^^^ help: try ignoring the field: `callee: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_bb`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:286:45
[INFO] [stdout]     |
[INFO] [stdout] 286 |             CallDirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                                             ^^^^^^^ help: try ignoring the field: `next_bb: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_bb`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:297:47
[INFO] [stdout]     |
[INFO] [stdout] 297 |             CallIndirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                                               ^^^^^^^ help: try ignoring the field: `next_bb: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> middle_end/analysis_rdef_ptrs.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |                 i,
[INFO] [stdout]    |                 ^ help: try ignoring the field: `i: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]    --> interpreter.rs:193:22
[INFO] [stdout]     |
[INFO] [stdout] 193 |             AddrOf { lhs, op } => {
[INFO] [stdout]     |                      ^^^ help: try ignoring the field: `lhs: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> interpreter.rs:193:27
[INFO] [stdout]     |
[INFO] [stdout] 193 |             AddrOf { lhs, op } => {
[INFO] [stdout]     |                           ^^ help: try ignoring the field: `op: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ret_ty`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs.rs:308:30
[INFO] [stdout]     |
[INFO] [stdout] 308 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                              ^^^^^^ help: try ignoring the field: `ret_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `param_ty`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs.rs:308:38
[INFO] [stdout]     |
[INFO] [stdout] 308 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                                      ^^^^^^^^ help: try ignoring the field: `param_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> middle_end/analysis_constraints/constraints_gen.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |         let len = self.0.len();
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bb`
[INFO] [stdout]   --> middle_end/analysis_constraints/constraints_gen.rs:18:14
[INFO] [stdout]    |
[INFO] [stdout] 18 |         for (bb, pp) in self.0.iter().enumerate() {
[INFO] [stdout]    |              ^^ help: if this is intentional, prefix it with an underscore: `_bb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> middle_end/analysis/constant_prop.rs:350:27
[INFO] [stdout]     |
[INFO] [stdout] 350 |             AddrOf { lhs, op } => if lhs.typ().is_int() { self.insert(&lhs, &V::Top) },
[INFO] [stdout]     |                           ^^ help: try ignoring the field: `op: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `join_type`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:111:56
[INFO] [stdout]     |
[INFO] [stdout] 111 |     fn join_with(&mut self, rhs: &Self, _block: &BbId, join_type: i64) -> bool {
[INFO] [stdout]     |                                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_join_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:134:52
[INFO] [stdout]     |
[INFO] [stdout] 134 |     fn analyze_inst(&mut self, inst: &Instruction, cfg: &Cfg, soln: &mut Set<Constraint>, store: &mut Map<VarId, Set<InstId>>) {
[INFO] [stdout]     |                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `store`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:134:91
[INFO] [stdout]     |
[INFO] [stdout] 134 |     fn analyze_inst(&mut self, inst: &Instruction, cfg: &Cfg, soln: &mut Set<Constraint>, store: &mut Map<VarId, Set<InstId>>) {
[INFO] [stdout]     |                                                                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `this_pp`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:138:13
[INFO] [stdout]     |
[INFO] [stdout] 138 |         let this_pp = ProgramPoint::from_instid(this_inst.clone());
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_this_pp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:148:26
[INFO] [stdout]     |
[INFO] [stdout] 148 |             Alloc { lhs, num, id } => {
[INFO] [stdout]     |                          ^^^ help: try ignoring the field: `num: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:156:21
[INFO] [stdout]     |
[INFO] [stdout] 156 |             Arith { lhs, aop:_, op1, op2 } => {
[INFO] [stdout]     |                     ^^^ help: try ignoring the field: `lhs: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op1`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:156:33
[INFO] [stdout]     |
[INFO] [stdout] 156 |             Arith { lhs, aop:_, op1, op2 } => {
[INFO] [stdout]     |                                 ^^^ help: try ignoring the field: `op1: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op2`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:156:38
[INFO] [stdout]     |
[INFO] [stdout] 156 |             Arith { lhs, aop:_, op1, op2 } => {
[INFO] [stdout]     |                                      ^^^ help: try ignoring the field: `op2: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:159:19
[INFO] [stdout]     |
[INFO] [stdout] 159 |             Cmp { lhs, rop:_, op1, op2 } => {
[INFO] [stdout]     |                   ^^^ help: try ignoring the field: `lhs: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op1`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:159:31
[INFO] [stdout]     |
[INFO] [stdout] 159 |             Cmp { lhs, rop:_, op1, op2 } => {
[INFO] [stdout]     |                               ^^^ help: try ignoring the field: `op1: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op2`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:159:36
[INFO] [stdout]     |
[INFO] [stdout] 159 |             Cmp { lhs, rop:_, op1, op2 } => {
[INFO] [stdout]     |                                    ^^^ help: try ignoring the field: `op2: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:162:23
[INFO] [stdout]     |
[INFO] [stdout] 162 |             CallExt { lhs, ext_callee, args } => {
[INFO] [stdout]     |                       ^^^ help: try ignoring the field: `lhs: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ext_callee`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:162:28
[INFO] [stdout]     |
[INFO] [stdout] 162 |             CallExt { lhs, ext_callee, args } => {
[INFO] [stdout]     |                            ^^^^^^^^^^ help: try ignoring the field: `ext_callee: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:162:40
[INFO] [stdout]     |
[INFO] [stdout] 162 |             CallExt { lhs, ext_callee, args } => {
[INFO] [stdout]     |                                        ^^^^ help: try ignoring the field: `args: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:179:17
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 idx,
[INFO] [stdout]     |                 ^^^ help: try ignoring the field: `idx: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:188:29
[INFO] [stdout]     |
[INFO] [stdout] 188 |             Gfp { lhs, src, field } => {
[INFO] [stdout]     |                             ^^^^^ help: try ignoring the field: `field: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> middle_end/analysis/constant_prop.rs:502:13
[INFO] [stdout]     |
[INFO] [stdout] 502 |             _ => (),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> middle_end/analysis/constant_prop.rs:502:13
[INFO] [stdout]     |
[INFO] [stdout] 458 | /             Branch {
[INFO] [stdout] 459 | |                 cond,
[INFO] [stdout] 460 | |                 tt,
[INFO] [stdout] 461 | |                 ff,
[INFO] [stdout] 462 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 471 | /             CallDirect {
[INFO] [stdout] 472 | |                 lhs,
[INFO] [stdout] 473 | |                 callee: _,
[INFO] [stdout] 474 | |                 args,
[INFO] [stdout] 475 | |                 next_bb: _,
[INFO] [stdout] 476 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 483 | /             CallIndirect {
[INFO] [stdout] 484 | |                 lhs,
[INFO] [stdout] 485 | |                 callee: _,
[INFO] [stdout] 486 | |                 args,
[INFO] [stdout] 487 | |                 next_bb: _,
[INFO] [stdout] 488 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 496 |               Jump(_) => {
[INFO] [stdout]     |               ------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 502 |               _ => (),
[INFO] [stdout]     |               ^ ...and 1 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `store`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:218:88
[INFO] [stdout]     |
[INFO] [stdout] 218 | ...oln: &mut Set<Constraint>, store: &mut Map<VarId, Set<InstId>>) -> Set<BbId> {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `this_pp`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |         let this_pp = ProgramPoint::from(self.curr_inst.clone().unwrap().0, None);
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_this_pp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_bb`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:222:45
[INFO] [stdout]     |
[INFO] [stdout] 222 |             CallDirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                                             ^^^^^^^ help: try ignoring the field: `next_bb: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_bb`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:251:47
[INFO] [stdout]     |
[INFO] [stdout] 251 |             CallIndirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                                               ^^^^^^^ help: try ignoring the field: `next_bb: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:277:22
[INFO] [stdout]     |
[INFO] [stdout] 277 |             Branch { cond, .. } => {
[INFO] [stdout]     |                      ^^^^ help: try ignoring the field: `cond: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:280:22
[INFO] [stdout]     |
[INFO] [stdout] 280 |             Ret(Some(op)) => {
[INFO] [stdout]     |                      ^^ help: if this is intentional, prefix it with an underscore: `_op`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> middle_end/analysis/integer_interval.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             _ => panic!("unexpected case in widening"),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> middle_end/analysis/integer_interval.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |             (V::Bot, _) => *widee,
[INFO] [stdout]    |             ----------- matches some of the same values
[INFO] [stdout] 48 |             (_, V::Bot) => *self,
[INFO] [stdout]    |             ----------- matches some of the same values
[INFO] [stdout] 49 |             // else it is range
[INFO] [stdout] 50 |             (V::R((self_low, self_high)), V::R((widee_low, widee_high))) => {
[INFO] [stdout]    |             ------------------------------------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 64 |             _ => panic!("unexpected case in widening"),
[INFO] [stdout]    |             ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ret_ty`
[INFO] [stdout]    --> middle_end/analysis_constraints.rs:299:30
[INFO] [stdout]     |
[INFO] [stdout] 299 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                              ^^^^^^ help: try ignoring the field: `ret_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `param_ty`
[INFO] [stdout]    --> middle_end/analysis_constraints.rs:299:38
[INFO] [stdout]     |
[INFO] [stdout] 299 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                                      ^^^^^^^^ help: try ignoring the field: `param_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> middle_end/analysis/integer_interval.rs:683:27
[INFO] [stdout]     |
[INFO] [stdout] 683 |             AddrOf { lhs, op } => if lhs.typ().is_int() { self.insert(&lhs, &V::top()) },
[INFO] [stdout]     |                           ^^ help: try ignoring the field: `op: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> middle_end/analysis/integer_interval.rs:440:35
[INFO] [stdout]     |
[INFO] [stdout] 440 |             fn interval_division((mut i1_low, mut i1_high): IntInterval, (mut i2_low, mut i2_high): IntInterval) -> Value {
[INFO] [stdout]     |                                   ----^^^^^^
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> middle_end/analysis/integer_interval.rs:440:47
[INFO] [stdout]     |
[INFO] [stdout] 440 |             fn interval_division((mut i1_low, mut i1_high): IntInterval, (mut i2_low, mut i2_high): IntInterval) -> Value {
[INFO] [stdout]     |                                               ----^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> middle_end/analysis/integer_interval.rs:850:13
[INFO] [stdout]     |
[INFO] [stdout] 850 |             _ => (),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> middle_end/analysis/integer_interval.rs:850:13
[INFO] [stdout]     |
[INFO] [stdout] 791 | /             Branch {
[INFO] [stdout] 792 | |                 cond,
[INFO] [stdout] 793 | |                 tt,
[INFO] [stdout] 794 | |                 ff,
[INFO] [stdout] 795 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 819 | /             CallDirect {
[INFO] [stdout] 820 | |                 lhs,
[INFO] [stdout] 821 | |                 callee: _,
[INFO] [stdout] 822 | |                 args,
[INFO] [stdout] 823 | |                 next_bb: _,
[INFO] [stdout] 824 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 831 | /             CallIndirect {
[INFO] [stdout] 832 | |                 lhs,
[INFO] [stdout] 833 | |                 callee: _,
[INFO] [stdout] 834 | |                 args,
[INFO] [stdout] 835 | |                 next_bb: _,
[INFO] [stdout] 836 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 844 |               Jump(_) => {
[INFO] [stdout]     |               ------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 850 |               _ => (),
[INFO] [stdout]     |               ^ ...and 1 other patterns collectively make this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `join_type`
[INFO] [stdout]   --> middle_end/analysis/liveness.rs:37:57
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn join_with(&mut self, _rhs: &Self, _block: &BbId, join_type: i64) -> bool {
[INFO] [stdout]    |                                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_join_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]   --> middle_end/analysis/liveness.rs:41:53
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn analyze_inst(&mut self, _inst: &Instruction, cfg: &Cfg) {
[INFO] [stdout]    |                                                     ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]   --> middle_end/analysis/liveness.rs:45:50
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn analyze_term(&mut self, _term: &Terminal, cfg: &Cfg) -> Set<BbId> {
[INFO] [stdout]    |                                                  ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]   --> middle_end/analysis/liveness.rs:49:44
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn analyze_bb(&self, _bb: &BasicBlock, cfg: &Cfg) -> (Vec<Self>, Set<BbId>) {
[INFO] [stdout]    |                                            ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `join_type`
[INFO] [stdout]   --> middle_end/analysis/reaching_defs.rs:63:56
[INFO] [stdout]    |
[INFO] [stdout] 63 |     fn join_with(&mut self, rhs: &Self, _block: &BbId, join_type: i64) -> bool {
[INFO] [stdout]    |                                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_join_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]   --> middle_end/analysis/reaching_defs.rs:86:52
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn analyze_inst(&mut self, inst: &Instruction, cfg: &Cfg) {
[INFO] [stdout]    |                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `this_inst`
[INFO] [stdout]   --> middle_end/analysis/reaching_defs.rs:87:13
[INFO] [stdout]    |
[INFO] [stdout] 87 |         let this_inst = &self.curr_inst.clone().unwrap();
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_this_inst`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]    --> middle_end/analysis/reaching_defs.rs:141:49
[INFO] [stdout]     |
[INFO] [stdout] 141 |     fn analyze_term(&mut self, term: &Terminal, cfg: &Cfg) -> Set<BbId> {
[INFO] [stdout]     |                                                 ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ret_ty`
[INFO] [stdout]    --> middle_end/analysis.rs:195:30
[INFO] [stdout]     |
[INFO] [stdout] 195 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                              ^^^^^^ help: try ignoring the field: `ret_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `param_ty`
[INFO] [stdout]    --> middle_end/analysis.rs:195:38
[INFO] [stdout]     |
[INFO] [stdout] 195 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                                      ^^^^^^^^ help: try ignoring the field: `param_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> middle_end/analysis_rdef/reaching_defs.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let len = self.0.len();
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bb`
[INFO] [stdout]   --> middle_end/analysis_rdef/reaching_defs.rs:17:14
[INFO] [stdout]    |
[INFO] [stdout] 17 |         for (bb, pp) in self.0.iter().enumerate() {
[INFO] [stdout]    |              ^^ help: if this is intentional, prefix it with an underscore: `_bb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `join_type`
[INFO] [stdout]   --> middle_end/analysis_rdef/reaching_defs.rs:78:56
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn join_with(&mut self, rhs: &Self, _block: &BbId, join_type: i64) -> bool {
[INFO] [stdout]    |                                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_join_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `store`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:101:112
[INFO] [stdout]     |
[INFO] [stdout] 101 | ...Point, Set<ProgramPoint>>, store: &mut Map<VarId, Set<InstId>>) {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:129:31
[INFO] [stdout]     |
[INFO] [stdout] 129 |             Alloc { lhs, num, id } => {
[INFO] [stdout]     |                               ^^ help: try ignoring the field: `id: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ext_callee`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:141:28
[INFO] [stdout]     |
[INFO] [stdout] 141 |             CallExt { lhs, ext_callee, args } => {
[INFO] [stdout]     |                            ^^^^^^^^^^ help: try ignoring the field: `ext_callee: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:165:29
[INFO] [stdout]     |
[INFO] [stdout] 165 |             Gfp { lhs, src, field } => {
[INFO] [stdout]     |                             ^^^^^ help: try ignoring the field: `field: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `store`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:223:109
[INFO] [stdout]     |
[INFO] [stdout] 223 | ...Point, Set<ProgramPoint>>, store: &mut Map<VarId, Set<InstId>>) -> Set<BbId> {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `callee`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:280:31
[INFO] [stdout]     |
[INFO] [stdout] 280 |             CallDirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                               ^^^^^^ help: try ignoring the field: `callee: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_bb`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:280:45
[INFO] [stdout]     |
[INFO] [stdout] 280 |             CallDirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                                             ^^^^^^^ help: try ignoring the field: `next_bb: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_bb`
[INFO] [stdout]    --> middle_end/analysis_rdef/reaching_defs.rs:291:47
[INFO] [stdout]     |
[INFO] [stdout] 291 |             CallIndirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                                               ^^^^^^^ help: try ignoring the field: `next_bb: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> middle_end/analysis_rdef.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |                 i,
[INFO] [stdout]    |                 ^ help: try ignoring the field: `i: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ret_ty`
[INFO] [stdout]    --> middle_end/analysis_rdef.rs:306:30
[INFO] [stdout]     |
[INFO] [stdout] 306 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                              ^^^^^^ help: try ignoring the field: `ret_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `param_ty`
[INFO] [stdout]    --> middle_end/analysis_rdef.rs:306:38
[INFO] [stdout]     |
[INFO] [stdout] 306 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                                      ^^^^^^^^ help: try ignoring the field: `param_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let len = self.0.len();
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bb`
[INFO] [stdout]   --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:17:14
[INFO] [stdout]    |
[INFO] [stdout] 17 |         for (bb, pp) in self.0.iter().enumerate() {
[INFO] [stdout]    |              ^^ help: if this is intentional, prefix it with an underscore: `_bb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `join_type`
[INFO] [stdout]   --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:78:56
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn join_with(&mut self, rhs: &Self, _block: &BbId, join_type: i64) -> bool {
[INFO] [stdout]    |                                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_join_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `store`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:101:112
[INFO] [stdout]     |
[INFO] [stdout] 101 | ...Point, Set<ProgramPoint>>, store: &mut Map<VarId, Set<InstId>>) {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:129:31
[INFO] [stdout]     |
[INFO] [stdout] 129 |             Alloc { lhs, num, id } => {
[INFO] [stdout]     |                               ^^ help: try ignoring the field: `id: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ext_callee`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:141:28
[INFO] [stdout]     |
[INFO] [stdout] 141 |             CallExt { lhs, ext_callee, args } => {
[INFO] [stdout]     |                            ^^^^^^^^^^ help: try ignoring the field: `ext_callee: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:165:29
[INFO] [stdout]     |
[INFO] [stdout] 165 |             Gfp { lhs, src, field } => {
[INFO] [stdout]     |                             ^^^^^ help: try ignoring the field: `field: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `store`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:229:109
[INFO] [stdout]     |
[INFO] [stdout] 229 | ...Point, Set<ProgramPoint>>, store: &mut Map<VarId, Set<InstId>>) -> Set<BbId> {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `callee`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:286:31
[INFO] [stdout]     |
[INFO] [stdout] 286 |             CallDirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                               ^^^^^^ help: try ignoring the field: `callee: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_bb`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:286:45
[INFO] [stdout]     |
[INFO] [stdout] 286 |             CallDirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                                             ^^^^^^^ help: try ignoring the field: `next_bb: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_bb`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs/reaching_defs_ptrs.rs:297:47
[INFO] [stdout]     |
[INFO] [stdout] 297 |             CallIndirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                                               ^^^^^^^ help: try ignoring the field: `next_bb: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> middle_end/analysis_rdef_ptrs.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |                 i,
[INFO] [stdout]    |                 ^ help: try ignoring the field: `i: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ret_ty`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs.rs:308:30
[INFO] [stdout]     |
[INFO] [stdout] 308 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                              ^^^^^^ help: try ignoring the field: `ret_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `param_ty`
[INFO] [stdout]    --> middle_end/analysis_rdef_ptrs.rs:308:38
[INFO] [stdout]     |
[INFO] [stdout] 308 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                                      ^^^^^^^^ help: try ignoring the field: `param_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> middle_end/analysis_constraints/constraints_gen.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |         let len = self.0.len();
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bb`
[INFO] [stdout]   --> middle_end/analysis_constraints/constraints_gen.rs:18:14
[INFO] [stdout]    |
[INFO] [stdout] 18 |         for (bb, pp) in self.0.iter().enumerate() {
[INFO] [stdout]    |              ^^ help: if this is intentional, prefix it with an underscore: `_bb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `join_type`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:111:56
[INFO] [stdout]     |
[INFO] [stdout] 111 |     fn join_with(&mut self, rhs: &Self, _block: &BbId, join_type: i64) -> bool {
[INFO] [stdout]     |                                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_join_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:134:52
[INFO] [stdout]     |
[INFO] [stdout] 134 |     fn analyze_inst(&mut self, inst: &Instruction, cfg: &Cfg, soln: &mut Set<Constraint>, store: &mut Map<VarId, Set<InstId>>) {
[INFO] [stdout]     |                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `store`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:134:91
[INFO] [stdout]     |
[INFO] [stdout] 134 |     fn analyze_inst(&mut self, inst: &Instruction, cfg: &Cfg, soln: &mut Set<Constraint>, store: &mut Map<VarId, Set<InstId>>) {
[INFO] [stdout]     |                                                                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `this_pp`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:138:13
[INFO] [stdout]     |
[INFO] [stdout] 138 |         let this_pp = ProgramPoint::from_instid(this_inst.clone());
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_this_pp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:148:26
[INFO] [stdout]     |
[INFO] [stdout] 148 |             Alloc { lhs, num, id } => {
[INFO] [stdout]     |                          ^^^ help: try ignoring the field: `num: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:156:21
[INFO] [stdout]     |
[INFO] [stdout] 156 |             Arith { lhs, aop:_, op1, op2 } => {
[INFO] [stdout]     |                     ^^^ help: try ignoring the field: `lhs: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op1`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:156:33
[INFO] [stdout]     |
[INFO] [stdout] 156 |             Arith { lhs, aop:_, op1, op2 } => {
[INFO] [stdout]     |                                 ^^^ help: try ignoring the field: `op1: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op2`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:156:38
[INFO] [stdout]     |
[INFO] [stdout] 156 |             Arith { lhs, aop:_, op1, op2 } => {
[INFO] [stdout]     |                                      ^^^ help: try ignoring the field: `op2: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:159:19
[INFO] [stdout]     |
[INFO] [stdout] 159 |             Cmp { lhs, rop:_, op1, op2 } => {
[INFO] [stdout]     |                   ^^^ help: try ignoring the field: `lhs: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op1`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:159:31
[INFO] [stdout]     |
[INFO] [stdout] 159 |             Cmp { lhs, rop:_, op1, op2 } => {
[INFO] [stdout]     |                               ^^^ help: try ignoring the field: `op1: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op2`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:159:36
[INFO] [stdout]     |
[INFO] [stdout] 159 |             Cmp { lhs, rop:_, op1, op2 } => {
[INFO] [stdout]     |                                    ^^^ help: try ignoring the field: `op2: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:162:23
[INFO] [stdout]     |
[INFO] [stdout] 162 |             CallExt { lhs, ext_callee, args } => {
[INFO] [stdout]     |                       ^^^ help: try ignoring the field: `lhs: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ext_callee`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:162:28
[INFO] [stdout]     |
[INFO] [stdout] 162 |             CallExt { lhs, ext_callee, args } => {
[INFO] [stdout]     |                            ^^^^^^^^^^ help: try ignoring the field: `ext_callee: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:162:40
[INFO] [stdout]     |
[INFO] [stdout] 162 |             CallExt { lhs, ext_callee, args } => {
[INFO] [stdout]     |                                        ^^^^ help: try ignoring the field: `args: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:179:17
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 idx,
[INFO] [stdout]     |                 ^^^ help: try ignoring the field: `idx: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:188:29
[INFO] [stdout]     |
[INFO] [stdout] 188 |             Gfp { lhs, src, field } => {
[INFO] [stdout]     |                             ^^^^^ help: try ignoring the field: `field: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `store`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:218:88
[INFO] [stdout]     |
[INFO] [stdout] 218 | ...oln: &mut Set<Constraint>, store: &mut Map<VarId, Set<InstId>>) -> Set<BbId> {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `this_pp`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |         let this_pp = ProgramPoint::from(self.curr_inst.clone().unwrap().0, None);
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_this_pp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_bb`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:222:45
[INFO] [stdout]     |
[INFO] [stdout] 222 |             CallDirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                                             ^^^^^^^ help: try ignoring the field: `next_bb: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_bb`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:251:47
[INFO] [stdout]     |
[INFO] [stdout] 251 |             CallIndirect { lhs, callee, args, next_bb } => {
[INFO] [stdout]     |                                               ^^^^^^^ help: try ignoring the field: `next_bb: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:277:22
[INFO] [stdout]     |
[INFO] [stdout] 277 |             Branch { cond, .. } => {
[INFO] [stdout]     |                      ^^^^ help: try ignoring the field: `cond: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> middle_end/analysis_constraints/constraints_gen.rs:280:22
[INFO] [stdout]     |
[INFO] [stdout] 280 |             Ret(Some(op)) => {
[INFO] [stdout]     |                      ^^ help: if this is intentional, prefix it with an underscore: `_op`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ret_ty`
[INFO] [stdout]    --> middle_end/analysis_constraints.rs:299:30
[INFO] [stdout]     |
[INFO] [stdout] 299 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                              ^^^^^^ help: try ignoring the field: `ret_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `param_ty`
[INFO] [stdout]    --> middle_end/analysis_constraints.rs:299:38
[INFO] [stdout]     |
[INFO] [stdout] 299 |                     Function{ret_ty, param_ty} => (),
[INFO] [stdout]     |                                      ^^^^^^^^ help: try ignoring the field: `param_ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]    --> middle_end/lir/validate.rs:456:33
[INFO] [stdout]     |
[INFO] [stdout] 456 |                     I::AddrOf { lhs, op } => {}
[INFO] [stdout]     |                                 ^^^ help: try ignoring the field: `lhs: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> middle_end/lir/validate.rs:456:38
[INFO] [stdout]     |
[INFO] [stdout] 456 |                     I::AddrOf { lhs, op } => {}
[INFO] [stdout]     |                                      ^^ help: try ignoring the field: `op: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]    --> middle_end/lir/validate.rs:456:33
[INFO] [stdout]     |
[INFO] [stdout] 456 |                     I::AddrOf { lhs, op } => {}
[INFO] [stdout]     |                                 ^^^ help: try ignoring the field: `lhs: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> middle_end/lir/validate.rs:456:38
[INFO] [stdout]     |
[INFO] [stdout] 456 |                     I::AddrOf { lhs, op } => {}
[INFO] [stdout]     |                                      ^^ help: try ignoring the field: `op: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]   --> middle_end/constraints/constraint_solve.rs:34:40
[INFO] [stdout]    |
[INFO] [stdout] 34 |                         if let Ref(v1, v2) = pred {
[INFO] [stdout]    |                                        ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]   --> middle_end/constraints/constraint_solve.rs:48:40
[INFO] [stdout]    |
[INFO] [stdout] 48 |                         if let Ref(v1, v2) = pred {
[INFO] [stdout]    |                                        ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1`
[INFO] [stdout]   --> middle_end/constraints/constraint_solve.rs:99:14
[INFO] [stdout]    |
[INFO] [stdout] 99 |         (Var(v1), Var(v2)) => {
[INFO] [stdout]    |              ^^ help: if this is intentional, prefix it with an underscore: `_v1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]   --> middle_end/constraints/constraint_solve.rs:99:23
[INFO] [stdout]    |
[INFO] [stdout] 99 |         (Var(v1), Var(v2)) => {
[INFO] [stdout]    |                       ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:105:15
[INFO] [stdout]     |
[INFO] [stdout] 105 |         (Proj(v1), Var(v2)) => {
[INFO] [stdout]     |               ^^ help: if this is intentional, prefix it with an underscore: `_v1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:105:24
[INFO] [stdout]     |
[INFO] [stdout] 105 |         (Proj(v1), Var(v2)) => {
[INFO] [stdout]     |                        ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:111:14
[INFO] [stdout]     |
[INFO] [stdout] 111 |         (Var(v1), Proj(v2)) => {
[INFO] [stdout]     |              ^^ help: if this is intentional, prefix it with an underscore: `_v1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:111:24
[INFO] [stdout]     |
[INFO] [stdout] 111 |         (Var(v1), Proj(v2)) => {
[INFO] [stdout]     |                        ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:117:18
[INFO] [stdout]     |
[INFO] [stdout] 117 |         (Ref(v1, v2), Var(v3)) => {
[INFO] [stdout]     |                  ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:123:15
[INFO] [stdout]     |
[INFO] [stdout] 123 |         (Proj(v1), Proj(v2)) => {
[INFO] [stdout]     |               ^^ help: if this is intentional, prefix it with an underscore: `_v1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:123:25
[INFO] [stdout]     |
[INFO] [stdout] 123 |         (Proj(v1), Proj(v2)) => {
[INFO] [stdout]     |                         ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:129:14
[INFO] [stdout]     |
[INFO] [stdout] 129 |         (Ref(v1, v2), Proj(v3)) => {
[INFO] [stdout]     |              ^^ help: if this is intentional, prefix it with an underscore: `_v1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:129:18
[INFO] [stdout]     |
[INFO] [stdout] 129 |         (Ref(v1, v2), Proj(v3)) => {
[INFO] [stdout]     |                  ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v3`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:129:28
[INFO] [stdout]     |
[INFO] [stdout] 129 |         (Ref(v1, v2), Proj(v3)) => {
[INFO] [stdout]     |                            ^^ help: if this is intentional, prefix it with an underscore: `_v3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:161:28
[INFO] [stdout]     |
[INFO] [stdout] 161 |             if let Ref(v1, v2) = pred {
[INFO] [stdout]     |                            ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> middle_end/constraints.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |             _ => unreachable!(),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> middle_end/constraints.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |               ConstraintExp::Var(var) => {
[INFO] [stdout]     |               ----------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 103 |               ConstraintExp::Ref(var1, var2) => {
[INFO] [stdout]     |               ------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 106 |               ConstraintExp::Proj(var) => write!(f, "proj(ref,1,{})", var.with_funcid()),
[INFO] [stdout]     |               ------------------------ matches some of the same values
[INFO] [stdout] 107 | /             ConstraintExp::Lam{
[INFO] [stdout] 108 | |                 name,
[INFO] [stdout] 109 | |                 param_ty,
[INFO] [stdout] 110 | |                 ret_ty,
[INFO] [stdout] 111 | |                 ret_op,
[INFO] [stdout] 112 | |                 args,
[INFO] [stdout] 113 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 155 |               _ => unreachable!(),
[INFO] [stdout]     |               ^ ...and 1 other patterns collectively make this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> middle_end/slice/slice_solve.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut debug_string = String::from("");
[INFO] [stdout]    |         ----^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug_string`
[INFO] [stdout]   --> middle_end/slice/slice_solve.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut debug_string = String::from("");
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_debug_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> middle_end/slice/slice_solve.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let mut debug_string = String::from("");
[INFO] [stdout]    |         ----^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug_string`
[INFO] [stdout]   --> middle_end/slice/slice_solve.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let mut debug_string = String::from("");
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_debug_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]   --> middle_end/taint/taint_analysis.rs:60:52
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn analyze_inst(&mut self, inst: &Instruction, cfg: &Cfg) {
[INFO] [stdout]    |                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]   --> middle_end/taint/taint_analysis.rs:79:40
[INFO] [stdout]    |
[INFO] [stdout] 79 |             CallExt { lhs, ext_callee, args } => {
[INFO] [stdout]    |                                        ^^^^ help: try ignoring the field: `args: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]   --> middle_end/taint/taint_analysis.rs:91:49
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn analyze_term(&mut self, term: &Terminal, cfg: &Cfg) -> Set<BbId> {
[INFO] [stdout]    |                                                 ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> middle_end/taint/taint_analysis.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |     let mut taint_state = TaintState {
[INFO] [stdout]     |         ----^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pts_to`
[INFO] [stdout]    --> middle_end/taint/taint_analysis.rs:150:56
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub fn analyze(program: &Valid<Program>, func: FuncId, pts_to: Map<String, Set<String>>) -> String {
[INFO] [stdout]     |                                                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_pts_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `full_set_val`
[INFO] [stdout]   --> middle_end/control_analysis/control.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let full_set_val = Value(full_set);
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_set_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `init_store`
[INFO] [stdout]   --> middle_end/control_analysis/control.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let init_store = Env::new(Map::new());
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `full_set_val`
[INFO] [stdout]   --> middle_end/control_analysis/control.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |     let full_set_val = Value(full_set);
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_set_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `init_store`
[INFO] [stdout]   --> middle_end/control_analysis/control.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |     let init_store = Env::new(Map::new());
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `full_set_val`
[INFO] [stdout]   --> middle_end/control_analysis/control.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let full_set_val = Value(full_set);
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_set_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `join_type`
[INFO] [stdout]   --> middle_end/control_analysis/control.rs:77:56
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn join_with(&mut self, rhs: &Self, _block: &BbId, join_type: i64) -> bool {
[INFO] [stdout]    |                                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_join_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:100:52
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn analyze_inst(&mut self, inst: &Instruction, cfg: &Cfg) {
[INFO] [stdout]     |                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `this_inst`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:101:13
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let this_inst = &self.curr_inst.clone().unwrap();
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_this_inst`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `use_set` is assigned to, but never used
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let mut use_set: Vec<VarId> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_use_set` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `def`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |         let def = match inst {
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_def`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `use_set` is never read
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:122:17
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 use_set = get_vars(vec![op1, op2]);
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 180 |             _ => (),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 149 | /             Branch {
[INFO] [stdout] 150 | |                 cond,
[INFO] [stdout] 151 | |                 tt,
[INFO] [stdout] 152 | |                 ff,
[INFO] [stdout] 153 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 158 | /             CallDirect {
[INFO] [stdout] 159 | |                 lhs,
[INFO] [stdout] 160 | |                 callee: _,
[INFO] [stdout] 161 | |                 args,
[INFO] [stdout] 162 | |                 next_bb,
[INFO] [stdout] 163 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 167 | /             CallIndirect {
[INFO] [stdout] 168 | |                 lhs,
[INFO] [stdout] 169 | |                 callee: _,
[INFO] [stdout] 170 | |                 args,
[INFO] [stdout] 171 | |                 next_bb,
[INFO] [stdout] 172 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 175 |               Jump(next_bb) => {
[INFO] [stdout]     |               ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 180 |               _ => (),
[INFO] [stdout]     |               ^ ...and 1 other patterns collectively make this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:141:49
[INFO] [stdout]     |
[INFO] [stdout] 141 |     fn analyze_term(&mut self, term: &Terminal, cfg: &Cfg) {
[INFO] [stdout]     |                                                 ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 cond,
[INFO] [stdout]     |                 ^^^^ help: try ignoring the field: `cond: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:159:17
[INFO] [stdout]     |
[INFO] [stdout] 159 |                 lhs,
[INFO] [stdout]     |                 ^^^ help: try ignoring the field: `lhs: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:161:17
[INFO] [stdout]     |
[INFO] [stdout] 161 |                 args,
[INFO] [stdout]     |                 ^^^^ help: try ignoring the field: `args: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:168:17
[INFO] [stdout]     |
[INFO] [stdout] 168 |                 lhs,
[INFO] [stdout]     |                 ^^^ help: try ignoring the field: `lhs: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:170:17
[INFO] [stdout]     |
[INFO] [stdout] 170 |                 args,
[INFO] [stdout]     |                 ^^^^ help: try ignoring the field: `args: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]   --> middle_end/constraints/constraint_solve.rs:34:40
[INFO] [stdout]    |
[INFO] [stdout] 34 |                         if let Ref(v1, v2) = pred {
[INFO] [stdout]    |                                        ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]   --> middle_end/constraints/constraint_solve.rs:48:40
[INFO] [stdout]    |
[INFO] [stdout] 48 |                         if let Ref(v1, v2) = pred {
[INFO] [stdout]    |                                        ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1`
[INFO] [stdout]   --> middle_end/constraints/constraint_solve.rs:99:14
[INFO] [stdout]    |
[INFO] [stdout] 99 |         (Var(v1), Var(v2)) => {
[INFO] [stdout]    |              ^^ help: if this is intentional, prefix it with an underscore: `_v1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]   --> middle_end/constraints/constraint_solve.rs:99:23
[INFO] [stdout]    |
[INFO] [stdout] 99 |         (Var(v1), Var(v2)) => {
[INFO] [stdout]    |                       ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:105:15
[INFO] [stdout]     |
[INFO] [stdout] 105 |         (Proj(v1), Var(v2)) => {
[INFO] [stdout]     |               ^^ help: if this is intentional, prefix it with an underscore: `_v1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:105:24
[INFO] [stdout]     |
[INFO] [stdout] 105 |         (Proj(v1), Var(v2)) => {
[INFO] [stdout]     |                        ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:111:14
[INFO] [stdout]     |
[INFO] [stdout] 111 |         (Var(v1), Proj(v2)) => {
[INFO] [stdout]     |              ^^ help: if this is intentional, prefix it with an underscore: `_v1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:111:24
[INFO] [stdout]     |
[INFO] [stdout] 111 |         (Var(v1), Proj(v2)) => {
[INFO] [stdout]     |                        ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:117:18
[INFO] [stdout]     |
[INFO] [stdout] 117 |         (Ref(v1, v2), Var(v3)) => {
[INFO] [stdout]     |                  ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:123:15
[INFO] [stdout]     |
[INFO] [stdout] 123 |         (Proj(v1), Proj(v2)) => {
[INFO] [stdout]     |               ^^ help: if this is intentional, prefix it with an underscore: `_v1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:123:25
[INFO] [stdout]     |
[INFO] [stdout] 123 |         (Proj(v1), Proj(v2)) => {
[INFO] [stdout]     |                         ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:129:14
[INFO] [stdout]     |
[INFO] [stdout] 129 |         (Ref(v1, v2), Proj(v3)) => {
[INFO] [stdout]     |              ^^ help: if this is intentional, prefix it with an underscore: `_v1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:129:18
[INFO] [stdout]     |
[INFO] [stdout] 129 |         (Ref(v1, v2), Proj(v3)) => {
[INFO] [stdout]     |                  ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v3`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:129:28
[INFO] [stdout]     |
[INFO] [stdout] 129 |         (Ref(v1, v2), Proj(v3)) => {
[INFO] [stdout]     |                            ^^ help: if this is intentional, prefix it with an underscore: `_v3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]    --> middle_end/constraints/constraint_solve.rs:161:28
[INFO] [stdout]     |
[INFO] [stdout] 161 |             if let Ref(v1, v2) = pred {
[INFO] [stdout]     |                            ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> middle_end/constraints.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |             _ => unreachable!(),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> middle_end/constraints.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |               ConstraintExp::Var(var) => {
[INFO] [stdout]     |               ----------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 103 |               ConstraintExp::Ref(var1, var2) => {
[INFO] [stdout]     |               ------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 106 |               ConstraintExp::Proj(var) => write!(f, "proj(ref,1,{})", var.with_funcid()),
[INFO] [stdout]     |               ------------------------ matches some of the same values
[INFO] [stdout] 107 | /             ConstraintExp::Lam{
[INFO] [stdout] 108 | |                 name,
[INFO] [stdout] 109 | |                 param_ty,
[INFO] [stdout] 110 | |                 ret_ty,
[INFO] [stdout] 111 | |                 ret_op,
[INFO] [stdout] 112 | |                 args,
[INFO] [stdout] 113 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 155 |               _ => unreachable!(),
[INFO] [stdout]     |               ^ ...and 1 other patterns collectively make this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> middle_end/slice/slice_solve.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut debug_string = String::from("");
[INFO] [stdout]    |         ----^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug_string`
[INFO] [stdout]   --> middle_end/slice/slice_solve.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut debug_string = String::from("");
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_debug_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> middle_end/slice/slice_solve.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let mut debug_string = String::from("");
[INFO] [stdout]    |         ----^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug_string`
[INFO] [stdout]   --> middle_end/slice/slice_solve.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let mut debug_string = String::from("");
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_debug_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]   --> middle_end/taint/taint_analysis.rs:60:52
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn analyze_inst(&mut self, inst: &Instruction, cfg: &Cfg) {
[INFO] [stdout]    |                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]   --> middle_end/taint/taint_analysis.rs:79:40
[INFO] [stdout]    |
[INFO] [stdout] 79 |             CallExt { lhs, ext_callee, args } => {
[INFO] [stdout]    |                                        ^^^^ help: try ignoring the field: `args: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]   --> middle_end/taint/taint_analysis.rs:91:49
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn analyze_term(&mut self, term: &Terminal, cfg: &Cfg) -> Set<BbId> {
[INFO] [stdout]    |                                                 ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> middle_end/taint/taint_analysis.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |     let mut taint_state = TaintState {
[INFO] [stdout]     |         ----^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pts_to`
[INFO] [stdout]    --> middle_end/taint/taint_analysis.rs:150:56
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub fn analyze(program: &Valid<Program>, func: FuncId, pts_to: Map<String, Set<String>>) -> String {
[INFO] [stdout]     |                                                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_pts_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `full_set_val`
[INFO] [stdout]   --> middle_end/control_analysis/control.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let full_set_val = Value(full_set);
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_set_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `init_store`
[INFO] [stdout]   --> middle_end/control_analysis/control.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let init_store = Env::new(Map::new());
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `full_set_val`
[INFO] [stdout]   --> middle_end/control_analysis/control.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |     let full_set_val = Value(full_set);
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_set_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `init_store`
[INFO] [stdout]   --> middle_end/control_analysis/control.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |     let init_store = Env::new(Map::new());
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_store`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `optimization` (lib test) due to 4 previous errors; 137 warnings emitted
[INFO] [stdout] warning: unused variable: `full_set_val`
[INFO] [stdout]   --> middle_end/control_analysis/control.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let full_set_val = Value(full_set);
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_set_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `join_type`
[INFO] [stdout]   --> middle_end/control_analysis/control.rs:77:56
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn join_with(&mut self, rhs: &Self, _block: &BbId, join_type: i64) -> bool {
[INFO] [stdout]    |                                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_join_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:100:52
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn analyze_inst(&mut self, inst: &Instruction, cfg: &Cfg) {
[INFO] [stdout]     |                                                    ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `this_inst`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:101:13
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let this_inst = &self.curr_inst.clone().unwrap();
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_this_inst`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `use_set` is assigned to, but never used
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let mut use_set: Vec<VarId> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_use_set` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `def`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |         let def = match inst {
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_def`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `use_set` is never read
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:122:17
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 use_set = get_vars(vec![op1, op2]);
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 180 |             _ => (),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 149 | /             Branch {
[INFO] [stdout] 150 | |                 cond,
[INFO] [stdout] 151 | |                 tt,
[INFO] [stdout] 152 | |                 ff,
[INFO] [stdout] 153 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 158 | /             CallDirect {
[INFO] [stdout] 159 | |                 lhs,
[INFO] [stdout] 160 | |                 callee: _,
[INFO] [stdout] 161 | |                 args,
[INFO] [stdout] 162 | |                 next_bb,
[INFO] [stdout] 163 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 167 | /             CallIndirect {
[INFO] [stdout] 168 | |                 lhs,
[INFO] [stdout] 169 | |                 callee: _,
[INFO] [stdout] 170 | |                 args,
[INFO] [stdout] 171 | |                 next_bb,
[INFO] [stdout] 172 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 175 |               Jump(next_bb) => {
[INFO] [stdout]     |               ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 180 |               _ => (),
[INFO] [stdout]     |               ^ ...and 1 other patterns collectively make this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cfg`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:141:49
[INFO] [stdout]     |
[INFO] [stdout] 141 |     fn analyze_term(&mut self, term: &Terminal, cfg: &Cfg) {
[INFO] [stdout]     |                                                 ^^^ help: if this is intentional, prefix it with an underscore: `_cfg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cond`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 cond,
[INFO] [stdout]     |                 ^^^^ help: try ignoring the field: `cond: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:159:17
[INFO] [stdout]     |
[INFO] [stdout] 159 |                 lhs,
[INFO] [stdout]     |                 ^^^ help: try ignoring the field: `lhs: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:161:17
[INFO] [stdout]     |
[INFO] [stdout] 161 |                 args,
[INFO] [stdout]     |                 ^^^^ help: try ignoring the field: `args: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:168:17
[INFO] [stdout]     |
[INFO] [stdout] 168 |                 lhs,
[INFO] [stdout]     |                 ^^^ help: try ignoring the field: `lhs: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `args`
[INFO] [stdout]    --> middle_end/control_analysis/control.rs:170:17
[INFO] [stdout]     |
[INFO] [stdout] 170 |                 args,
[INFO] [stdout]     |                 ^^^^ help: try ignoring the field: `args: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `dummy_var` is never used
[INFO] [stdout]   --> middle_end/constraints.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl ConstraintExp {
[INFO] [stdout]    | ------------------ associated function in this implementation
[INFO] [stdout] 31 |     fn dummy_var() -> ConstraintExp {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> middle_end/constraints.rs:161:26
[INFO] [stdout]     |
[INFO] [stdout] 161 | pub struct ConstraintVar(Option<FuncId>, VarId);
[INFO] [stdout]     |            ------------- ^^^^^^^^^^^^^^  ^^^^^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            fields in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing these fields
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_from` is never used
[INFO] [stdout]   --> middle_end/constraints/constraint_solve.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn read_from(path: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_rdef` is never used
[INFO] [stdout]    --> middle_end/slice/slice_solve.rs:161:4
[INFO] [stdout]     |
[INFO] [stdout] 161 | fn print_rdef(result: &Map<ProgramPoint, Set<ProgramPoint>>) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_dominance` is never used
[INFO] [stdout]    --> middle_end/slice/slice_solve.rs:181:4
[INFO] [stdout]     |
[INFO] [stdout] 181 | fn print_dominance(result: &Map<BbId, Set<BbId>>) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `sources` is never read
[INFO] [stdout]   --> middle_end/taint/taint_analysis.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | struct TaintState {
[INFO] [stdout]    |        ---------- field in this struct
[INFO] [stdout] 43 |     sources: Set<FuncId>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TaintState` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "6b134cd0b061566c99c5bd12e10b49c06fad52ca6e808ed2459320234591ccad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6b134cd0b061566c99c5bd12e10b49c06fad52ca6e808ed2459320234591ccad", kill_on_drop: false }`
[INFO] [stdout] 6b134cd0b061566c99c5bd12e10b49c06fad52ca6e808ed2459320234591ccad
