[INFO] cloning repository https://github.com/Hexorg/Ouroboros
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Hexorg/Ouroboros" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHexorg%2FOuroboros", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHexorg%2FOuroboros'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c247c94bcb43010d10c611aaade2529c7a98fd93
[INFO] checking Hexorg/Ouroboros against try#438eb4c1a1c3841523d7f672601e8adbe04cff28 for pr-147589-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHexorg%2FOuroboros" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Hexorg/Ouroboros
[INFO] finished tweaking git repo https://github.com/Hexorg/Ouroboros
[INFO] tweaked toml for git repo https://github.com/Hexorg/Ouroboros written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Hexorg/Ouroboros on toolchain 438eb4c1a1c3841523d7f672601e8adbe04cff28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Hexorg/Ouroboros 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" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ee7bbe72f5554e2a8b20b15b871a3ed3d9d7f1ef136928049f9b8713eff6424c
[INFO] running `Command { std: "docker" "start" "-a" "ee7bbe72f5554e2a8b20b15b871a3ed3d9d7f1ef136928049f9b8713eff6424c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ee7bbe72f5554e2a8b20b15b871a3ed3d9d7f1ef136928049f9b8713eff6424c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ee7bbe72f5554e2a8b20b15b871a3ed3d9d7f1ef136928049f9b8713eff6424c", kill_on_drop: false }`
[INFO] [stdout] ee7bbe72f5554e2a8b20b15b871a3ed3d9d7f1ef136928049f9b8713eff6424c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2961b9e9821de75762ec05f7745e949ec4a39347fb8482e106ee0a26b3c207a6
[INFO] running `Command { std: "docker" "start" "-a" "2961b9e9821de75762ec05f7745e949ec4a39347fb8482e106ee0a26b3c207a6", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking cfg-if v1.0.3
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]     Checking log v0.4.28
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling winnow v0.7.13
[INFO] [stderr]     Checking unicode-ident v1.0.19
[INFO] [stderr]    Compiling hashbrown v0.16.0
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]     Checking parking v2.2.1
[INFO] [stderr]    Compiling toml_datetime v0.7.2
[INFO] [stderr]     Checking slab v0.4.11
[INFO] [stderr]     Checking libloading v0.8.9
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]     Checking writeable v0.6.1
[INFO] [stderr]     Checking litemap v0.8.0
[INFO] [stderr]    Compiling icu_normalizer_data v2.0.0
[INFO] [stderr]    Compiling icu_properties_data v2.0.1
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]     Checking percent-encoding v2.3.2
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]    Compiling wayland-sys v0.31.7
[INFO] [stderr]     Checking fastrand v2.3.0
[INFO] [stderr]    Compiling find-msvc-tools v0.1.2
[INFO] [stderr]     Checking event-listener v5.4.1
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]     Checking scoped-tls v1.0.1
[INFO] [stderr]    Compiling cc v1.2.39
[INFO] [stderr]     Checking futures-lite v2.6.1
[INFO] [stderr]     Checking downcast-rs v1.2.1
[INFO] [stderr]    Compiling endi v1.1.0
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling quick-xml v0.37.5
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling wayland-client v0.31.11
[INFO] [stderr]    Compiling indexmap v2.11.4
[INFO] [stderr]     Checking async-task v4.7.1
[INFO] [stderr]     Checking async-channel v2.5.0
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]     Checking piper v0.2.4
[INFO] [stderr]     Checking tracing-core v0.1.34
[INFO] [stderr]     Checking blocking v1.6.2
[INFO] [stderr]     Checking async-lock v3.4.1
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]     Checking ttf-parser v0.25.1
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.10
[INFO] [stderr]    Compiling wayland-scanner v0.31.7
[INFO] [stderr]     Checking async-executor v1.13.3
[INFO] [stderr]     Checking async-broadcast v0.7.2
[INFO] [stderr]     Checking ordered-stream v0.2.0
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]     Checking getrandom v0.3.3
[INFO] [stderr]    Compiling toml_parser v1.0.3
[INFO] [stderr]     Checking signal-hook-registry v1.4.6
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking lock_api v0.4.14
[INFO] [stderr]    Compiling xml-rs v0.8.27
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]     Checking xcursor v0.3.10
[INFO] [stderr]    Compiling smithay-client-toolkit v0.19.2
[INFO] [stderr]    Compiling wayland-backend v0.3.11
[INFO] [stderr]     Checking cursor-icon v1.2.0
[INFO] [stderr]     Checking xkeysym v0.2.1
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]     Checking memmap2 v0.9.8
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking nohash-hasher v0.2.0
[INFO] [stderr]     Checking raw-window-handle v0.6.2
[INFO] [stderr]     Checking base64 v0.22.1
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]     Checking profiling v1.0.17
[INFO] [stderr]     Checking strict-num v0.1.1
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]     Checking epaint_default_fonts v0.32.3
[INFO] [stderr]    Compiling toml_edit v0.23.6
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]     Checking x11rb-protocol v0.13.2
[INFO] [stderr]     Checking adler2 v2.0.1
[INFO] [stderr]     Checking as-raw-xcb-connection v1.0.1
[INFO] [stderr]    Compiling winit v0.30.12
[INFO] [stderr]    Compiling siphasher v1.0.1
[INFO] [stderr]    Compiling unicase v2.8.1
[INFO] [stderr]    Compiling glutin_glx_sys v0.6.1
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]    Compiling glutin_egl_sys v0.7.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking owned_ttf_parser v0.25.1
[INFO] [stderr]     Checking smol_str v0.2.2
[INFO] [stderr]     Checking flate2 v1.1.2
[INFO] [stderr]     Checking ab_glyph v0.2.32
[INFO] [stderr]     Checking dpi v0.1.2
[INFO] [stderr]    Compiling phf v0.11.3
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.10.1
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]    Compiling glutin v0.32.3
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling proc-macro-crate v3.4.0
[INFO] [stderr]     Checking byteorder-lite v0.1.0
[INFO] [stderr]    Compiling mime_guess2 v2.3.1
[INFO] [stderr]     Checking pxfm v0.1.24
[INFO] [stderr]    Compiling glutin-winit v0.5.0
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]    Compiling yansi v1.0.1
[INFO] [stderr]     Checking async-fs v2.2.0
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling litrs v0.4.2
[INFO] [stderr]     Checking glow v0.16.0
[INFO] [stderr]    Compiling rfd v0.15.4
[INFO] [stderr]     Checking web-time v1.1.0
[INFO] [stderr]     Checking fixedbitset v0.5.7
[INFO] [stderr]     Checking pcode v0.2.0 (https://github.com/icicle-emu/icicle-emu#ebb9bd19)
[INFO] [stderr]     Checking sleigh-parse v0.3.0 (https://github.com/icicle-emu/icicle-emu#ebb9bd19)
[INFO] [stderr]     Checking btree_monstrousity v0.0.5
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking instant v0.1.13
[INFO] [stderr]     Checking pollster v0.4.0
[INFO] [stderr]     Checking plain v0.2.3
[INFO] [stderr]    Compiling document-features v0.2.11
[INFO] [stderr]     Checking sleigh-runtime v0.1.0 (https://github.com/icicle-emu/icicle-emu#ebb9bd19)
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.21.3
[INFO] [stderr]     Checking nodit v0.9.2
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling bytemuck_derive v1.10.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling enumn v0.1.14
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]     Checking moxcms v0.7.5
[INFO] [stderr]    Compiling enum-map-derive v0.17.0
[INFO] [stderr]    Compiling scroll_derive v0.13.1
[INFO] [stderr]    Compiling duplicate v2.0.0
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking enum-map v2.7.3
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]     Checking bytemuck v1.23.2
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking scroll v0.13.0
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking goblin v0.10.2
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking zerovec v0.11.4
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]    Compiling darling_macro v0.21.3
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]    Compiling darling v0.21.3
[INFO] [stderr]    Compiling enumset_derive v0.14.0
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.3
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking bitflags v2.9.4
[INFO] [stderr]     Checking zvariant_utils v3.2.1
[INFO] [stderr]     Checking enumflags2 v0.7.12
[INFO] [stderr]     Checking quick-xml v0.36.2
[INFO] [stderr]     Checking accesskit v0.19.0
[INFO] [stderr]     Checking emath v0.32.3
[INFO] [stderr]     Checking serde-xml-rs v0.6.0
[INFO] [stderr]     Checking petgraph v0.8.3
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking ron v0.10.1
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking png v0.18.0
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]     Checking ecolor v0.32.3
[INFO] [stderr]    Compiling zvariant_derive v5.7.0
[INFO] [stderr]     Checking epaint v0.32.3
[INFO] [stderr]     Checking enumset v1.1.10
[INFO] [stderr]     Checking accesskit_consumer v0.28.0
[INFO] [stderr]     Checking sleigh-compile v0.3.0 (https://github.com/icicle-emu/icicle-emu#ebb9bd19)
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]    Compiling zvariant v5.7.0
[INFO] [stderr]     Checking image v0.25.8
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking webbrowser v1.0.5
[INFO] [stderr]     Checking egui v0.32.3
[INFO] [stderr]    Compiling zbus_names v4.2.0
[INFO] [stderr]     Checking polling v3.11.0
[INFO] [stderr]     Checking gethostname v1.0.2
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]     Checking calloop v0.13.0
[INFO] [stderr]    Compiling zbus_xml v5.0.2
[INFO] [stderr]    Compiling zbus_macros v5.11.0
[INFO] [stderr]     Checking async-signal v0.2.13
[INFO] [stderr]     Checking async-net v2.0.0
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking async-process v2.5.0
[INFO] [stderr]    Compiling zbus-lockstep v0.5.1
[INFO] [stderr]    Compiling zbus-lockstep-macros v0.5.1
[INFO] [stderr]     Checking wayland-protocols v0.32.9
[INFO] [stderr]     Checking wayland-cursor v0.31.11
[INFO] [stderr]     Checking calloop-wayland-source v0.3.0
[INFO] [stderr]     Checking arboard v3.6.1
[INFO] [stderr]     Checking zbus v5.11.0
[INFO] [stderr]     Checking egui_glow v0.32.3
[INFO] [stderr]     Checking egui_dock v0.17.0
[INFO] [stderr]     Checking egui_graphs v0.28.0
[INFO] [stderr]     Checking egui_extras v0.32.3
[INFO] [stderr]     Checking wayland-protocols-wlr v0.3.9
[INFO] [stderr]     Checking wayland-protocols-plasma v0.3.9
[INFO] [stderr]     Checking atspi-common v0.9.0
[INFO] [stderr]     Checking ashpd v0.11.0
[INFO] [stderr]     Checking sctk-adwaita v0.10.1
[INFO] [stderr]     Checking smithay-clipboard v0.7.2
[INFO] [stderr]     Checking atspi-proxies v0.9.0
[INFO] [stderr]     Checking accesskit_atspi_common v0.12.0
[INFO] [stderr]     Checking atspi-connection v0.9.0
[INFO] [stderr]     Checking atspi v0.25.0
[INFO] [stderr]     Checking accesskit_unix v0.15.0
[INFO] [stderr]     Checking accesskit_winit v0.27.0
[INFO] [stderr]     Checking egui-winit v0.32.3
[INFO] [stderr]     Checking eframe v0.32.3
[INFO] [stderr]     Checking bin_ast v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `DiscreteFinite`
[INFO] [stdout]   --> src/ir/basic_block.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | use nodit::{DiscreteFinite, InclusiveInterval, Interval, NoditMap};
[INFO] [stdout]    |             ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/ir/basic_block.rs:415:39
[INFO] [stdout]     |
[INFO] [stdout] 415 |         let size_to_mask = |size: u8| (1u64.unbounded_shl(size as u32 * 8).wrapping_sub(1));
[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] 415 -         let size_to_mask = |size: u8| (1u64.unbounded_shl(size as u32 * 8).wrapping_sub(1));
[INFO] [stdout] 415 +         let size_to_mask = |size: u8| 1u64.unbounded_shl(size as u32 * 8).wrapping_sub(1);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/ir/basic_block.rs:461:36
[INFO] [stdout]     |
[INFO] [stdout] 461 |                         |size: u8| (1u64.unbounded_shl(size as u32 * 8).wrapping_sub(1));
[INFO] [stdout]     |                                    ^                                                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 461 -                         |size: u8| (1u64.unbounded_shl(size as u32 * 8).wrapping_sub(1));
[INFO] [stdout] 461 +                         |size: u8| 1u64.unbounded_shl(size as u32 * 8).wrapping_sub(1);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/ir/control_flow_graph.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |             (if let Some(slot) = blocks.slot_by_identifier(backward_graph[*k]) {
[INFO] [stdout]     |             ^
[INFO] [stdout] ...
[INFO] [stdout] 291 |             })
[INFO] [stdout]     |              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 287 ~             if let Some(slot) = blocks.slot_by_identifier(backward_graph[*k]) {
[INFO] [stdout] 288 |                 (slot, *v)
[INFO] [stdout] 289 |             } else {
[INFO] [stdout] 290 |                 (BlockSlot::default(), u32::MAX)
[INFO] [stdout] 291 ~             } 
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `algo::dominators::simple_fast` and `csr::DefaultIx`
[INFO] [stdout]    --> src/ir/control_flow_graph.rs:322:20
[INFO] [stdout]     |
[INFO] [stdout] 322 |     use petgraph::{algo::dominators::simple_fast, csr::DefaultIx};
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Address`, `Graph`, and `least_common_ancestor`
[INFO] [stdout]    --> src/ir/control_flow_graph.rs:324:17
[INFO] [stdout]     |
[INFO] [stdout] 324 |     use super::{least_common_ancestor, Address, Graph};
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SmallVec` and `smallvec`
[INFO] [stdout]     --> src/ir/expression.rs:2398:20
[INFO] [stdout]      |
[INFO] [stdout] 2398 |     use smallvec::{smallvec, SmallVec};
[INFO] [stdout]      |                    ^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Expression`, `InstructionSize::U32`, and `SMALLVEC_SIZE`
[INFO] [stdout]     --> src/ir/expression.rs:2400:17
[INFO] [stdout]      |
[INFO] [stdout] 2400 |     use super::{Expression, ExpressionOp, InstructionSize::U32, VariableSymbol, SMALLVEC_SIZE};
[INFO] [stdout]      |                 ^^^^^^^^^^                ^^^^^^^^^^^^^^^^^^^^                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sleigh_compile::ldef::SleighLanguage`
[INFO] [stdout]  --> src/ir/high_function.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use sleigh_compile::ldef::SleighLanguage;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoNodeReferences`
[INFO] [stdout]  --> src/ir/program_tree_structure.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 |     visit::{IntoNeighbors, IntoNodeReferences},
[INFO] [stdout]   |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `error::Error` and `fmt::Display`
[INFO] [stdout]  --> src/loaders/mod.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::{error::Error, fmt::Display, fs::File, io, io::Read, path::Path};
[INFO] [stdout]   |           ^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LiteralState`
[INFO] [stdout]  --> src/loaders/mod.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 |     memory::{LiteralState, Memory},
[INFO] [stdout]   |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LiteralKind`
[INFO] [stdout]  --> src/loaders/load_with_goblin.rs:2:21
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::memory::{LiteralKind, LiteralState};
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> src/loaders/load_with_goblin.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use goblin::{error, Object};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Cow`
[INFO] [stdout]  --> src/loaders/load_with_goblin.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::borrow::Cow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/loaders/load_with_goblin.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/loaders/load_with_goblin.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> src/loaders/load_with_goblin.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nodit::interval::ie`
[INFO] [stdout]  --> src/memory/navigation.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use nodit::interval::ie;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `Write`, `fs::File`, and `stdout`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fs::File,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 8 |     io::{stdout, Read, Write},
[INFO] [stdout]   |          ^^^^^^  ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `egui::Key`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use egui::Key;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `smallvec::smallvec`
[INFO] [stdout]   --> src/main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use smallvec::smallvec;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sleigh_compile::ldef::SleighLanguage`
[INFO] [stdout]  --> src/tab_viewer/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use sleigh_compile::ldef::SleighLanguage;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/tab_viewer/bb_graph.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Color32`, `Direction`, `InnerResponse`, `Layout`, `MenuBar`, `Rect`, `Scene`, and `UiBuilder`
[INFO] [stdout]  --> src/tab_viewer/bb_graph.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     Color32, Direction, InnerResponse, Layout, MenuBar, Painter, Pos2, Rect, Scene, Stroke, Ui,
[INFO] [stdout]   |     ^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^  ^^^^^^^                 ^^^^  ^^^^^
[INFO] [stdout] 5 |     UiBuilder, Vec2,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `generate_simple_digraph`
[INFO] [stdout]  --> src/tab_viewer/bb_graph.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     generate_simple_digraph, DefaultEdgeShape, DefaultNodeShape, Graph, GraphView,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BasicBlock` and `BlockSlot`
[INFO] [stdout]   --> src/tab_viewer/bb_graph.rs:17:23
[INFO] [stdout]    |
[INFO] [stdout] 17 |         basic_block::{BasicBlock, BlockIdentifier, BlockSlot},
[INFO] [stdout]    |                       ^^^^^^^^^^                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `InnerResponse`, `Response`, `RichText`, `Sense`, `Spacing`, `UiBuilder`, and `Vec2`
[INFO] [stdout]  --> src/tab_viewer/memory_view/mod.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 |     Color32, Grid, InnerResponse, Response, RichText, ScrollArea, Sense, Spacing, Stroke, Style,
[INFO] [stdout]   |                    ^^^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^              ^^^^^  ^^^^^^^
[INFO] [stdout] 6 |     Ui, UiBuilder, Vec2,
[INFO] [stdout]   |         ^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ScrollArea`
[INFO] [stdout]  --> src/tab_viewer/memory_view/asm_view.rs:2:55
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Color32, Grid, InnerResponse, Response, RichText, ScrollArea, Sense, Spacing, Stroke, Style,
[INFO] [stdout]   |                                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `expression::Expression`
[INFO] [stdout]   --> src/tab_viewer/memory_view/asm_view.rs:11:53
[INFO] [stdout]    |
[INFO] [stdout] 11 |     ir::{address::Address, basic_block::BasicBlock, expression::Expression},
[INFO] [stdout]    |                                                     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Color32`, `Grid`, `InnerResponse`, `Response`, `RichText`, `ScrollArea`, `Sense`, `Spacing`, `Style`, `UiBuilder`, and `Vec2`
[INFO] [stdout]  --> src/tab_viewer/memory_view/hexdump_view.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Color32, Grid, InnerResponse, Key, Label, Layout, Response, RichText, ScrollArea, Sense,
[INFO] [stdout]   |     ^^^^^^^  ^^^^  ^^^^^^^^^^^^^                      ^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^  ^^^^^
[INFO] [stdout] 3 |     Spacing, Stroke, Style, Ui, UiBuilder, Vec2,
[INFO] [stdout]   |     ^^^^^^^          ^^^^^      ^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Table`
[INFO] [stdout]  --> src/tab_viewer/memory_view/hexdump_view.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 | use egui_extras::{Column, Table, TableBuilder};
[INFO] [stdout]   |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/tab_viewer/memory_view/hexdump_view.rs:27:27
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let my_max_addr = (state.addr.0 + bytes.len() as u64);
[INFO] [stdout]    |                           ^                                 ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 27 -         let my_max_addr = (state.addr.0 + bytes.len() as u64);
[INFO] [stdout] 27 +         let my_max_addr = state.addr.0 + bytes.len() as u64 ;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `basic_block::BasicBlock` and `expression::Expression`
[INFO] [stdout]   --> src/tab_viewer/memory_view/mod.rs:14:28
[INFO] [stdout]    |
[INFO] [stdout] 14 |     ir::{address::Address, basic_block::BasicBlock, expression::Expression},
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/tab_viewer/memory_view/mod.rs:60:30
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let row_height = (ui.spacing().interact_size.y + ui.spacing().item_spacing.y);
[INFO] [stdout]    |                              ^                                                          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 60 -             let row_height = (ui.spacing().interact_size.y + ui.spacing().item_spacing.y);
[INFO] [stdout] 60 +             let row_height = ui.spacing().interact_size.y + ui.spacing().item_spacing.y ;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nodit::DiscreteFinite`
[INFO] [stdout]  --> src/tab_viewer/section_list.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use nodit::DiscreteFinite;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ExpressionOp`, `Expression`, `InstructionSize`, `scope::VariableDefinition`, and `type_system::VariableType`
[INFO] [stdout]   --> src/main.rs:21:18
[INFO] [stdout]    |
[INFO] [stdout] 21 |     expression::{Expression, ExpressionOp, InstructionSize, VariableSymbol},
[INFO] [stdout]    |                  ^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 22 |     high_function::HighFunction,
[INFO] [stdout] 23 |     scope::VariableDefinition,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 24 |     type_system::VariableType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DiscreteFinite`
[INFO] [stdout]   --> src/ir/basic_block.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | use nodit::{DiscreteFinite, InclusiveInterval, Interval, NoditMap};
[INFO] [stdout]    |             ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/ir/basic_block.rs:415:39
[INFO] [stdout]     |
[INFO] [stdout] 415 |         let size_to_mask = |size: u8| (1u64.unbounded_shl(size as u32 * 8).wrapping_sub(1));
[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] 415 -         let size_to_mask = |size: u8| (1u64.unbounded_shl(size as u32 * 8).wrapping_sub(1));
[INFO] [stdout] 415 +         let size_to_mask = |size: u8| 1u64.unbounded_shl(size as u32 * 8).wrapping_sub(1);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/ir/basic_block.rs:461:36
[INFO] [stdout]     |
[INFO] [stdout] 461 |                         |size: u8| (1u64.unbounded_shl(size as u32 * 8).wrapping_sub(1));
[INFO] [stdout]     |                                    ^                                                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 461 -                         |size: u8| (1u64.unbounded_shl(size as u32 * 8).wrapping_sub(1));
[INFO] [stdout] 461 +                         |size: u8| 1u64.unbounded_shl(size as u32 * 8).wrapping_sub(1);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/ir/control_flow_graph.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |             (if let Some(slot) = blocks.slot_by_identifier(backward_graph[*k]) {
[INFO] [stdout]     |             ^
[INFO] [stdout] ...
[INFO] [stdout] 291 |             })
[INFO] [stdout]     |              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 287 ~             if let Some(slot) = blocks.slot_by_identifier(backward_graph[*k]) {
[INFO] [stdout] 288 |                 (slot, *v)
[INFO] [stdout] 289 |             } else {
[INFO] [stdout] 290 |                 (BlockSlot::default(), u32::MAX)
[INFO] [stdout] 291 ~             } 
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `algo::dominators::simple_fast` and `csr::DefaultIx`
[INFO] [stdout]    --> src/ir/control_flow_graph.rs:322:20
[INFO] [stdout]     |
[INFO] [stdout] 322 |     use petgraph::{algo::dominators::simple_fast, csr::DefaultIx};
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Address`, `Graph`, and `least_common_ancestor`
[INFO] [stdout]    --> src/ir/control_flow_graph.rs:324:17
[INFO] [stdout]     |
[INFO] [stdout] 324 |     use super::{least_common_ancestor, Address, Graph};
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sub`
[INFO] [stdout]     --> src/ir/expression.rs:2632:46
[INFO] [stdout]      |
[INFO] [stdout] 2632 |         use ExpressionOp::{Add, Dereference, Sub, Value, Variable as VarOp};
[INFO] [stdout]      |                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Add` and `Dereference`
[INFO] [stdout]     --> src/ir/expression.rs:2655:28
[INFO] [stdout]      |
[INFO] [stdout] 2655 |         use ExpressionOp::{Add, Dereference, Sub, Value};
[INFO] [stdout]      |                            ^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Add`
[INFO] [stdout]     --> src/ir/expression.rs:2665:28
[INFO] [stdout]      |
[INFO] [stdout] 2665 |         use ExpressionOp::{Add, Dereference, Sub, Value};
[INFO] [stdout]      |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Add`
[INFO] [stdout]     --> src/ir/expression.rs:2715:28
[INFO] [stdout]      |
[INFO] [stdout] 2715 |         use ExpressionOp::{Add, Dereference, Sub, Value};
[INFO] [stdout]      |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sleigh_compile::ldef::SleighLanguage`
[INFO] [stdout]  --> src/ir/high_function.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use sleigh_compile::ldef::SleighLanguage;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoNodeReferences`
[INFO] [stdout]  --> src/ir/program_tree_structure.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 |     visit::{IntoNeighbors, IntoNodeReferences},
[INFO] [stdout]   |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `error::Error` and `fmt::Display`
[INFO] [stdout]  --> src/loaders/mod.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::{error::Error, fmt::Display, fs::File, io, io::Read, path::Path};
[INFO] [stdout]   |           ^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LiteralState`
[INFO] [stdout]  --> src/loaders/mod.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 |     memory::{LiteralState, Memory},
[INFO] [stdout]   |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LiteralKind`
[INFO] [stdout]  --> src/loaders/load_with_goblin.rs:2:21
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::memory::{LiteralKind, LiteralState};
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> src/loaders/load_with_goblin.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use goblin::{error, Object};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Cow`
[INFO] [stdout]  --> src/loaders/load_with_goblin.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::borrow::Cow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/loaders/load_with_goblin.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> src/loaders/load_with_goblin.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> src/loaders/load_with_goblin.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nodit::interval::ie`
[INFO] [stdout]  --> src/memory/navigation.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use nodit::interval::ie;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `Write`, `fs::File`, and `stdout`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fs::File,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 8 |     io::{stdout, Read, Write},
[INFO] [stdout]   |          ^^^^^^  ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `egui::Key`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use egui::Key;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `smallvec::smallvec`
[INFO] [stdout]   --> src/main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use smallvec::smallvec;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sleigh_compile::ldef::SleighLanguage`
[INFO] [stdout]  --> src/tab_viewer/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use sleigh_compile::ldef::SleighLanguage;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/tab_viewer/bb_graph.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Color32`, `Direction`, `InnerResponse`, `Layout`, `MenuBar`, `Rect`, `Scene`, and `UiBuilder`
[INFO] [stdout]  --> src/tab_viewer/bb_graph.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     Color32, Direction, InnerResponse, Layout, MenuBar, Painter, Pos2, Rect, Scene, Stroke, Ui,
[INFO] [stdout]   |     ^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^  ^^^^^^^                 ^^^^  ^^^^^
[INFO] [stdout] 5 |     UiBuilder, Vec2,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `generate_simple_digraph`
[INFO] [stdout]  --> src/tab_viewer/bb_graph.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     generate_simple_digraph, DefaultEdgeShape, DefaultNodeShape, Graph, GraphView,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BasicBlock` and `BlockSlot`
[INFO] [stdout]   --> src/tab_viewer/bb_graph.rs:17:23
[INFO] [stdout]    |
[INFO] [stdout] 17 |         basic_block::{BasicBlock, BlockIdentifier, BlockSlot},
[INFO] [stdout]    |                       ^^^^^^^^^^                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `InnerResponse`, `Response`, `RichText`, `Sense`, `Spacing`, `UiBuilder`, and `Vec2`
[INFO] [stdout]  --> src/tab_viewer/memory_view/mod.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 |     Color32, Grid, InnerResponse, Response, RichText, ScrollArea, Sense, Spacing, Stroke, Style,
[INFO] [stdout]   |                    ^^^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^              ^^^^^  ^^^^^^^
[INFO] [stdout] 6 |     Ui, UiBuilder, Vec2,
[INFO] [stdout]   |         ^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ScrollArea`
[INFO] [stdout]  --> src/tab_viewer/memory_view/asm_view.rs:2:55
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Color32, Grid, InnerResponse, Response, RichText, ScrollArea, Sense, Spacing, Stroke, Style,
[INFO] [stdout]   |                                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `expression::Expression`
[INFO] [stdout]   --> src/tab_viewer/memory_view/asm_view.rs:11:53
[INFO] [stdout]    |
[INFO] [stdout] 11 |     ir::{address::Address, basic_block::BasicBlock, expression::Expression},
[INFO] [stdout]    |                                                     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Color32`, `Grid`, `InnerResponse`, `Response`, `RichText`, `ScrollArea`, `Sense`, `Spacing`, `Style`, `UiBuilder`, and `Vec2`
[INFO] [stdout]  --> src/tab_viewer/memory_view/hexdump_view.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Color32, Grid, InnerResponse, Key, Label, Layout, Response, RichText, ScrollArea, Sense,
[INFO] [stdout]   |     ^^^^^^^  ^^^^  ^^^^^^^^^^^^^                      ^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^  ^^^^^
[INFO] [stdout] 3 |     Spacing, Stroke, Style, Ui, UiBuilder, Vec2,
[INFO] [stdout]   |     ^^^^^^^          ^^^^^      ^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Table`
[INFO] [stdout]  --> src/tab_viewer/memory_view/hexdump_view.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 | use egui_extras::{Column, Table, TableBuilder};
[INFO] [stdout]   |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/tab_viewer/memory_view/hexdump_view.rs:27:27
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let my_max_addr = (state.addr.0 + bytes.len() as u64);
[INFO] [stdout]    |                           ^                                 ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 27 -         let my_max_addr = (state.addr.0 + bytes.len() as u64);
[INFO] [stdout] 27 +         let my_max_addr = state.addr.0 + bytes.len() as u64 ;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `basic_block::BasicBlock` and `expression::Expression`
[INFO] [stdout]   --> src/tab_viewer/memory_view/mod.rs:14:28
[INFO] [stdout]    |
[INFO] [stdout] 14 |     ir::{address::Address, basic_block::BasicBlock, expression::Expression},
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/tab_viewer/memory_view/mod.rs:60:30
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let row_height = (ui.spacing().interact_size.y + ui.spacing().item_spacing.y);
[INFO] [stdout]    |                              ^                                                          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 60 -             let row_height = (ui.spacing().interact_size.y + ui.spacing().item_spacing.y);
[INFO] [stdout] 60 +             let row_height = ui.spacing().interact_size.y + ui.spacing().item_spacing.y ;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nodit::DiscreteFinite`
[INFO] [stdout]  --> src/tab_viewer/section_list.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use nodit::DiscreteFinite;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ExpressionOp`, `Expression`, `InstructionSize`, `scope::VariableDefinition`, and `type_system::VariableType`
[INFO] [stdout]   --> src/main.rs:21:18
[INFO] [stdout]    |
[INFO] [stdout] 21 |     expression::{Expression, ExpressionOp, InstructionSize, VariableSymbol},
[INFO] [stdout]    |                  ^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 22 |     high_function::HighFunction,
[INFO] [stdout] 23 |     scope::VariableDefinition,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 24 |     type_system::VariableType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `InclusiveInterval`
[INFO] [stdout]  --> src/ir/high_function.rs:1:43
[INFO] [stdout]   |
[INFO] [stdout] 1 | use nodit::{interval::ie, DiscreteFinite, InclusiveInterval, Interval, NoditMap};
[INFO] [stdout]   |                                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `true_branch_distance_to_return`
[INFO] [stdout]    --> src/ir/abstract_syntax_tree.rs:310:13
[INFO] [stdout]     |
[INFO] [stdout] 310 |         let true_branch_distance_to_return =
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_true_branch_distance_to_return`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hf`
[INFO] [stdout]    --> src/ir/abstract_syntax_tree.rs:508:5
[INFO] [stdout]     |
[INFO] [stdout] 508 |     hf: &HighFunction,
[INFO] [stdout]     |     ^^ help: if this is intentional, prefix it with an underscore: `_hf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `InclusiveInterval`
[INFO] [stdout]  --> src/ir/high_function.rs:1:43
[INFO] [stdout]   |
[INFO] [stdout] 1 | use nodit::{interval::ie, DiscreteFinite, InclusiveInterval, Interval, NoditMap};
[INFO] [stdout]   |                                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `true_branch_distance_to_return`
[INFO] [stdout]    --> src/ir/abstract_syntax_tree.rs:310:13
[INFO] [stdout]     |
[INFO] [stdout] 310 |         let true_branch_distance_to_return =
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_true_branch_distance_to_return`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hf`
[INFO] [stdout]    --> src/ir/abstract_syntax_tree.rs:508:5
[INFO] [stdout]     |
[INFO] [stdout] 508 |     hf: &HighFunction,
[INFO] [stdout]     |     ^^ help: if this is intentional, prefix it with an underscore: `_hf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lang`
[INFO] [stdout]    --> src/ir/expression.rs:155:9
[INFO] [stdout]     |
[INFO] [stdout] 155 |         lang: Option<&SleighLanguage>,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_lang`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]    --> src/ir/expression.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |         f: &mut std::fmt::Formatter<'_>,
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lang`
[INFO] [stdout]    --> src/ir/expression.rs:155:9
[INFO] [stdout]     |
[INFO] [stdout] 155 |         lang: Option<&SleighLanguage>,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_lang`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]    --> src/ir/expression.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |         f: &mut std::fmt::Formatter<'_>,
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ir/mod.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let mut dasm = String::new();
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dasm`
[INFO] [stdout]   --> src/ir/mod.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let mut dasm = String::new();
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dasm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug_id`
[INFO] [stdout]    --> src/ir/mod.rs:552:17
[INFO] [stdout]     |
[INFO] [stdout] 552 |             let debug_id = self.blocks[block_id].identifier;
[INFO] [stdout]     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_debug_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `false_branch`
[INFO] [stdout]    --> src/ir/mod.rs:556:21
[INFO] [stdout]     |
[INFO] [stdout] 556 |                     false_branch,
[INFO] [stdout]     |                     ^^^^^^^^^^^^ help: try ignoring the field: `false_branch: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr`
[INFO] [stdout]    --> src/ir/mod.rs:559:46
[INFO] [stdout]     |
[INFO] [stdout] 559 |                     DestinationKind::Virtual(addr, idx) => *idx = dst,
[INFO] [stdout]     |                                              ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `te`
[INFO] [stdout]   --> src/loaders/load_with_goblin.rs:77:20
[INFO] [stdout]    |
[INFO] [stdout] 77 |         Object::TE(te) => todo!(),
[INFO] [stdout]    |                    ^^ help: if this is intentional, prefix it with an underscore: `_te`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `coff`
[INFO] [stdout]   --> src/loaders/load_with_goblin.rs:78:22
[INFO] [stdout]    |
[INFO] [stdout] 78 |         Object::COFF(coff) => todo!(),
[INFO] [stdout]    |                      ^^^^ help: if this is intentional, prefix it with an underscore: `_coff`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mach`
[INFO] [stdout]   --> src/loaders/load_with_goblin.rs:79:22
[INFO] [stdout]    |
[INFO] [stdout] 79 |         Object::Mach(mach) => todo!(),
[INFO] [stdout]    |                      ^^^^ help: if this is intentional, prefix it with an underscore: `_mach`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `archive`
[INFO] [stdout]   --> src/loaders/load_with_goblin.rs:80:25
[INFO] [stdout]    |
[INFO] [stdout] 80 |         Object::Archive(archive) => todo!(),
[INFO] [stdout]    |                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_archive`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/tab_viewer/decompiler.rs:428:13
[INFO] [stdout]     |
[INFO] [stdout] 428 |             a => {
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/tab_viewer/decompiler.rs:428:13
[INFO] [stdout]     |
[INFO] [stdout] 126 |               AstStatement::Block(v) => {
[INFO] [stdout]     |               ---------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 131 |               AstStatement::Nop => (),
[INFO] [stdout]     |               ----------------- matches some of the same values
[INFO] [stdout] 132 | /             AstStatement::If {
[INFO] [stdout] 133 | |                 sese: pts,
[INFO] [stdout] 134 | |                 condition,
[INFO] [stdout] 135 | |                 true_statement,
[INFO] [stdout] ...   |
[INFO] [stdout] 138 | |                 else_branch,
[INFO] [stdout] 139 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 242 |               AstStatement::Comment(c) => {
[INFO] [stdout]     |               ------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 428 |               a => {
[INFO] [stdout]     |               ^ ...and 6 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: variable does not need to be mutable
[INFO] [stdout]   --> src/ir/mod.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let mut dasm = String::new();
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dasm`
[INFO] [stdout]   --> src/ir/mod.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let mut dasm = String::new();
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dasm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/tab_viewer/decompiler.rs:269:42
[INFO] [stdout]     |
[INFO] [stdout] 269 |                     if let Cow::Borrowed(s) = resolve_symbol(mem, &result, hf, *pts) {
[INFO] [stdout]     |                                          ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body_address`
[INFO] [stdout]    --> src/tab_viewer/decompiler.rs:343:17
[INFO] [stdout]     |
[INFO] [stdout] 343 |                 body_address,
[INFO] [stdout]     |                 ^^^^^^^^^^^^ help: try ignoring the field: `body_address: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sym`
[INFO] [stdout]    --> src/tab_viewer/decompiler.rs:477:38
[INFO] [stdout]     |
[INFO] [stdout] 477 |                 if let Cow::Borrowed(sym) = resolve_symbol(mem, &var, hf, ip_block) {
[INFO] [stdout]     |                                      ^^^ help: if this is intentional, prefix it with an underscore: `_sym`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug_id`
[INFO] [stdout]    --> src/ir/mod.rs:552:17
[INFO] [stdout]     |
[INFO] [stdout] 552 |             let debug_id = self.blocks[block_id].identifier;
[INFO] [stdout]     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_debug_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `false_branch`
[INFO] [stdout]    --> src/ir/mod.rs:556:21
[INFO] [stdout]     |
[INFO] [stdout] 556 |                     false_branch,
[INFO] [stdout]     |                     ^^^^^^^^^^^^ help: try ignoring the field: `false_branch: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr`
[INFO] [stdout]    --> src/ir/mod.rs:559:46
[INFO] [stdout]     |
[INFO] [stdout] 559 |                     DestinationKind::Virtual(addr, idx) => *idx = dst,
[INFO] [stdout]     |                                              ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ip_block`
[INFO] [stdout]    --> src/tab_viewer/decompiler.rs:732:5
[INFO] [stdout]     |
[INFO] [stdout] 732 |     ip_block: SingleEntrySingleExit<BlockSlot>,
[INFO] [stdout]     |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ip_block`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `te`
[INFO] [stdout]   --> src/loaders/load_with_goblin.rs:77:20
[INFO] [stdout]    |
[INFO] [stdout] 77 |         Object::TE(te) => todo!(),
[INFO] [stdout]    |                    ^^ help: if this is intentional, prefix it with an underscore: `_te`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `coff`
[INFO] [stdout]   --> src/loaders/load_with_goblin.rs:78:22
[INFO] [stdout]    |
[INFO] [stdout] 78 |         Object::COFF(coff) => todo!(),
[INFO] [stdout]    |                      ^^^^ help: if this is intentional, prefix it with an underscore: `_coff`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mach`
[INFO] [stdout]   --> src/loaders/load_with_goblin.rs:79:22
[INFO] [stdout]    |
[INFO] [stdout] 79 |         Object::Mach(mach) => todo!(),
[INFO] [stdout]    |                      ^^^^ help: if this is intentional, prefix it with an underscore: `_mach`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `archive`
[INFO] [stdout]   --> src/loaders/load_with_goblin.rs:80:25
[INFO] [stdout]    |
[INFO] [stdout] 80 |         Object::Archive(archive) => todo!(),
[INFO] [stdout]    |                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_archive`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lbl`
[INFO] [stdout]    --> src/tab_viewer/memory_view/asm_view.rs:270:33
[INFO] [stdout]     |
[INFO] [stdout] 270 | ...                   let lbl = draw_line(self.theme, grid, i, lang, Some(block));
[INFO] [stdout]     |                           ^^^ help: if this is intentional, prefix it with an underscore: `_lbl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/tab_viewer/memory_view/hexdump_view.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut alignment = current_addr.0 % 16;
[INFO] [stdout]    |             ----^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]    --> src/tab_viewer/memory_view/mod.rs:148:46
[INFO] [stdout]     |
[INFO] [stdout] 148 |             crate::memory::LiteralKind::Data(d) => {
[INFO] [stdout]     |                                              ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sections`
[INFO] [stdout]   --> src/tab_viewer/section_list.rs:12:16
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new(sections: Vec<String>) -> Self {
[INFO] [stdout]    |                ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sections`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/tab_viewer/decompiler.rs:428:13
[INFO] [stdout]     |
[INFO] [stdout] 428 |             a => {
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/tab_viewer/decompiler.rs:428:13
[INFO] [stdout]     |
[INFO] [stdout] 126 |               AstStatement::Block(v) => {
[INFO] [stdout]     |               ---------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 131 |               AstStatement::Nop => (),
[INFO] [stdout]     |               ----------------- matches some of the same values
[INFO] [stdout] 132 | /             AstStatement::If {
[INFO] [stdout] 133 | |                 sese: pts,
[INFO] [stdout] 134 | |                 condition,
[INFO] [stdout] 135 | |                 true_statement,
[INFO] [stdout] ...   |
[INFO] [stdout] 138 | |                 else_branch,
[INFO] [stdout] 139 | |             } => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 242 |               AstStatement::Comment(c) => {
[INFO] [stdout]     |               ------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 428 |               a => {
[INFO] [stdout]     |               ^ ...and 6 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: `new_node`
[INFO] [stdout]   --> src/main.rs:75:21
[INFO] [stdout]    |
[INFO] [stdout] 75 |             let [_, new_node] = tree.split(
[INFO] [stdout]    |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/tab_viewer/decompiler.rs:269:42
[INFO] [stdout]     |
[INFO] [stdout] 269 |                     if let Cow::Borrowed(s) = resolve_symbol(mem, &result, hf, *pts) {
[INFO] [stdout]     |                                          ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body_address`
[INFO] [stdout]    --> src/tab_viewer/decompiler.rs:343:17
[INFO] [stdout]     |
[INFO] [stdout] 343 |                 body_address,
[INFO] [stdout]     |                 ^^^^^^^^^^^^ help: try ignoring the field: `body_address: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sym`
[INFO] [stdout]    --> src/tab_viewer/decompiler.rs:477:38
[INFO] [stdout]     |
[INFO] [stdout] 477 |                 if let Cow::Borrowed(sym) = resolve_symbol(mem, &var, hf, ip_block) {
[INFO] [stdout]     |                                      ^^^ help: if this is intentional, prefix it with an underscore: `_sym`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `from_machine_code` is never used
[INFO] [stdout]   --> src/ir/mod.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn from_machine_code(bytes: &[u8], base_addr: u64, lang: &SleighLanguage) -> Vec<Instruction> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `OpIdx` is never used
[INFO] [stdout]   --> src/ir/abstract_syntax_tree.rs:20:6
[INFO] [stdout]    |
[INFO] [stdout] 20 | type OpIdx = usize;
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Comment` and `MultilineComment` are never constructed
[INFO] [stdout]   --> src/ir/abstract_syntax_tree.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub enum AstStatement {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 64 |     Comment(String),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 65 |     MultilineComment(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `define_all_variables` is never used
[INFO] [stdout]    --> src/ir/abstract_syntax_tree.rs:225:4
[INFO] [stdout]     |
[INFO] [stdout] 225 | fn define_all_variables(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `var_reg` is never used
[INFO] [stdout]     --> src/ir/expression.rs:2403:8
[INFO] [stdout]      |
[INFO] [stdout] 2403 |     fn var_reg(r: VarNode) -> ExpressionOp {
[INFO] [stdout]      |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mk_eax` is never used
[INFO] [stdout]     --> src/ir/expression.rs:2408:8
[INFO] [stdout]      |
[INFO] [stdout] 2408 |     fn mk_eax() -> VarNode {
[INFO] [stdout]      |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mk_esp` is never used
[INFO] [stdout]     --> src/ir/expression.rs:2417:8
[INFO] [stdout]      |
[INFO] [stdout] 2417 |     fn mk_esp() -> VarNode {
[INFO] [stdout]      |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mk_ebp` is never used
[INFO] [stdout]     --> src/ir/expression.rs:2426:8
[INFO] [stdout]      |
[INFO] [stdout] 2426 |     fn mk_ebp() -> VarNode {
[INFO] [stdout]      |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mk_edi` is never used
[INFO] [stdout]     --> src/ir/expression.rs:2435:8
[INFO] [stdout]      |
[INFO] [stdout] 2435 |     fn mk_edi() -> VarNode {
[INFO] [stdout]      |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `pretty_print` is never used
[INFO] [stdout]    --> src/ir/program_tree_structure.rs:104:12
[INFO] [stdout]     |
[INFO] [stdout]  38 | impl ProgramTreeStructure {
[INFO] [stdout]     | ------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn pretty_print<F, W>(&self, buffer: &mut W, f: &F) -> std::io::Result<()>
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `variable` is never read
[INFO] [stdout]   --> src/ir/scope.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct VariableDefinition {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub variable: VariableSymbol,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VariableDefinition` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/ir/scope.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl VariableDefinition {
[INFO] [stdout]    | ----------------------- associated function in this implementation
[INFO] [stdout] 16 |     pub fn new(kind: VariableType, name: String, value: VariableSymbol) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `insert`, `get`, and `pretty_print` are never used
[INFO] [stdout]    --> src/ir/scope.rs:54:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl Scope {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  54 |     pub fn insert(
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub fn get(&self, section: SingleEntrySingleExit<BlockSlot>) -> Option<&SymbolMap> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub fn pretty_print(&self, pts: &ProgramTreeStructure) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/ir/type_system.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub enum VariableType{
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout]  6 |     Byte,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]  7 |     Char,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]  8 |     S16,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]  9 |     U16,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 10 |     S32,
[INFO] [stdout] 11 |     U32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 12 |     F32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 13 |     F64,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 14 |     Pointer(Box<VariableType>),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 15 |     /// Offset into [`KnownStructs::storage`]
[INFO] [stdout] 16 |     Struct(usize)
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VariableType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Struct` is never constructed
[INFO] [stdout]   --> src/ir/type_system.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct Struct {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ip_block`
[INFO] [stdout]    --> src/tab_viewer/decompiler.rs:732:5
[INFO] [stdout]     |
[INFO] [stdout] 732 |     ip_block: SingleEntrySingleExit<BlockSlot>,
[INFO] [stdout]     |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ip_block`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KnownStructs` is never constructed
[INFO] [stdout]   --> src/ir/type_system.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct KnownStructs{
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `arrow` is never used
[INFO] [stdout]   --> src/tab_viewer/bb_graph.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn arrow(painter: &Painter, origin: Pos2, vec: Vec2, stroke: impl Into<Stroke>) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vertical` is never used
[INFO] [stdout]   --> src/tab_viewer/decompiler.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn vertical<R>(ui: &mut Ui, add_contents: impl FnOnce(&mut Ui) -> R) -> InnerResponse<R> {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `resolve_symbol_mut` is never used
[INFO] [stdout]    --> src/tab_viewer/decompiler.rs:728:4
[INFO] [stdout]     |
[INFO] [stdout] 728 | fn resolve_symbol_mut<'a>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `STROKE` is never used
[INFO] [stdout]   --> src/tab_viewer/memory_view/mod.rs:29:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl MemoryView {
[INFO] [stdout]    | --------------- associated constant in this implementation
[INFO] [stdout] 29 |     const STROKE: Stroke = Stroke {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InstructionBlockView` is never constructed
[INFO] [stdout]   --> src/tab_viewer/memory_view/asm_view.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct InstructionBlockView<'t, T> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `draw_bb` is never used
[INFO] [stdout]    --> src/tab_viewer/memory_view/asm_view.rs:202:8
[INFO] [stdout]     |
[INFO] [stdout] 202 | pub fn draw_bb(
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `STROKE`, `new`, and `draw` are never used
[INFO] [stdout]    --> src/tab_viewer/memory_view/asm_view.rs:242:11
[INFO] [stdout]     |
[INFO] [stdout] 238 | / impl<'t, T> InstructionBlockView<'t, T>
[INFO] [stdout] 239 | | where
[INFO] [stdout] 240 | |     T: std::hash::Hash,
[INFO] [stdout]     | |_______________________- associated items in this implementation
[INFO] [stdout] 241 |   {
[INFO] [stdout] 242 |       const STROKE: Stroke = Stroke {
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 246 |       pub fn new(salt: T, theme: &'t CodeTheme, block: Option<&'t BasicBlock>) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 250 |       pub fn draw(self, ui: &mut Ui, mem: &Memory, lang: &SleighLanguage, addr: Address) -> Response {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `dark_mode` is never read
[INFO] [stdout]   --> src/tab_viewer/theme.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct CodeTheme {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 24 |     dark_mode: bool,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CodeTheme` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]     --> src/ir/expression.rs:1770:60
[INFO] [stdout]      |
[INFO] [stdout] 1770 |     pub fn iter_vars<'a>(&'a self) -> impl Iterator<Item = &VariableSymbol> + 'a {
[INFO] [stdout]      |                           --                               ^^^^^^^^^^^^^^^    -- the same lifetime is named here
[INFO] [stdout]      |                           |                                |
[INFO] [stdout]      |                           the lifetime is named here       the same lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]      = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]      |
[INFO] [stdout] 1770 |     pub fn iter_vars<'a>(&'a self) -> impl Iterator<Item = &'a VariableSymbol> + 'a {
[INFO] [stdout]      |                                                             ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lbl`
[INFO] [stdout]    --> src/tab_viewer/memory_view/asm_view.rs:270:33
[INFO] [stdout]     |
[INFO] [stdout] 270 | ...                   let lbl = draw_line(self.theme, grid, i, lang, Some(block));
[INFO] [stdout]     |                           ^^^ help: if this is intentional, prefix it with an underscore: `_lbl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/tab_viewer/memory_view/hexdump_view.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut alignment = current_addr.0 % 16;
[INFO] [stdout]    |             ----^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]    --> src/tab_viewer/memory_view/mod.rs:148:46
[INFO] [stdout]     |
[INFO] [stdout] 148 |             crate::memory::LiteralKind::Data(d) => {
[INFO] [stdout]     |                                              ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sections`
[INFO] [stdout]   --> src/tab_viewer/section_list.rs:12:16
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new(sections: Vec<String>) -> Self {
[INFO] [stdout]    |                ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sections`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_node`
[INFO] [stdout]   --> src/main.rs:75:21
[INFO] [stdout]    |
[INFO] [stdout] 75 |             let [_, new_node] = tree.split(
[INFO] [stdout]    |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `from_machine_code` is never used
[INFO] [stdout]   --> src/ir/mod.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn from_machine_code(bytes: &[u8], base_addr: u64, lang: &SleighLanguage) -> Vec<Instruction> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `OpIdx` is never used
[INFO] [stdout]   --> src/ir/abstract_syntax_tree.rs:20:6
[INFO] [stdout]    |
[INFO] [stdout] 20 | type OpIdx = usize;
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Comment` and `MultilineComment` are never constructed
[INFO] [stdout]   --> src/ir/abstract_syntax_tree.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub enum AstStatement {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 64 |     Comment(String),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 65 |     MultilineComment(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `define_all_variables` is never used
[INFO] [stdout]    --> src/ir/abstract_syntax_tree.rs:225:4
[INFO] [stdout]     |
[INFO] [stdout] 225 | fn define_all_variables(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `pretty_print` is never used
[INFO] [stdout]    --> src/ir/program_tree_structure.rs:104:12
[INFO] [stdout]     |
[INFO] [stdout]  38 | impl ProgramTreeStructure {
[INFO] [stdout]     | ------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn pretty_print<F, W>(&self, buffer: &mut W, f: &F) -> std::io::Result<()>
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `variable` is never read
[INFO] [stdout]   --> src/ir/scope.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct VariableDefinition {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub variable: VariableSymbol,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VariableDefinition` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/ir/scope.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl VariableDefinition {
[INFO] [stdout]    | ----------------------- associated function in this implementation
[INFO] [stdout] 16 |     pub fn new(kind: VariableType, name: String, value: VariableSymbol) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `insert`, `get`, and `pretty_print` are never used
[INFO] [stdout]    --> src/ir/scope.rs:54:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl Scope {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  54 |     pub fn insert(
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub fn get(&self, section: SingleEntrySingleExit<BlockSlot>) -> Option<&SymbolMap> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub fn pretty_print(&self, pts: &ProgramTreeStructure) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/ir/type_system.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub enum VariableType{
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout]  6 |     Byte,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]  7 |     Char,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]  8 |     S16,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]  9 |     U16,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 10 |     S32,
[INFO] [stdout] 11 |     U32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 12 |     F32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 13 |     F64,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 14 |     Pointer(Box<VariableType>),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 15 |     /// Offset into [`KnownStructs::storage`]
[INFO] [stdout] 16 |     Struct(usize)
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VariableType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Struct` is never constructed
[INFO] [stdout]   --> src/ir/type_system.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct Struct {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KnownStructs` is never constructed
[INFO] [stdout]   --> src/ir/type_system.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct KnownStructs{
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `arrow` is never used
[INFO] [stdout]   --> src/tab_viewer/bb_graph.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn arrow(painter: &Painter, origin: Pos2, vec: Vec2, stroke: impl Into<Stroke>) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vertical` is never used
[INFO] [stdout]   --> src/tab_viewer/decompiler.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn vertical<R>(ui: &mut Ui, add_contents: impl FnOnce(&mut Ui) -> R) -> InnerResponse<R> {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `resolve_symbol_mut` is never used
[INFO] [stdout]    --> src/tab_viewer/decompiler.rs:728:4
[INFO] [stdout]     |
[INFO] [stdout] 728 | fn resolve_symbol_mut<'a>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `STROKE` is never used
[INFO] [stdout]   --> src/tab_viewer/memory_view/mod.rs:29:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl MemoryView {
[INFO] [stdout]    | --------------- associated constant in this implementation
[INFO] [stdout] 29 |     const STROKE: Stroke = Stroke {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InstructionBlockView` is never constructed
[INFO] [stdout]   --> src/tab_viewer/memory_view/asm_view.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct InstructionBlockView<'t, T> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `draw_bb` is never used
[INFO] [stdout]    --> src/tab_viewer/memory_view/asm_view.rs:202:8
[INFO] [stdout]     |
[INFO] [stdout] 202 | pub fn draw_bb(
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `STROKE`, `new`, and `draw` are never used
[INFO] [stdout]    --> src/tab_viewer/memory_view/asm_view.rs:242:11
[INFO] [stdout]     |
[INFO] [stdout] 238 | / impl<'t, T> InstructionBlockView<'t, T>
[INFO] [stdout] 239 | | where
[INFO] [stdout] 240 | |     T: std::hash::Hash,
[INFO] [stdout]     | |_______________________- associated items in this implementation
[INFO] [stdout] 241 |   {
[INFO] [stdout] 242 |       const STROKE: Stroke = Stroke {
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 246 |       pub fn new(salt: T, theme: &'t CodeTheme, block: Option<&'t BasicBlock>) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 250 |       pub fn draw(self, ui: &mut Ui, mem: &Memory, lang: &SleighLanguage, addr: Address) -> Response {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `dark_mode` is never read
[INFO] [stdout]   --> src/tab_viewer/theme.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct CodeTheme {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 24 |     dark_mode: bool,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CodeTheme` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]     --> src/ir/expression.rs:1770:60
[INFO] [stdout]      |
[INFO] [stdout] 1770 |     pub fn iter_vars<'a>(&'a self) -> impl Iterator<Item = &VariableSymbol> + 'a {
[INFO] [stdout]      |                           --                               ^^^^^^^^^^^^^^^    -- the same lifetime is named here
[INFO] [stdout]      |                           |                                |
[INFO] [stdout]      |                           the lifetime is named here       the same lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]      = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]      |
[INFO] [stdout] 1770 |     pub fn iter_vars<'a>(&'a self) -> impl Iterator<Item = &'a VariableSymbol> + 'a {
[INFO] [stdout]      |                                                             ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 45.34s
[INFO] running `Command { std: "docker" "inspect" "2961b9e9821de75762ec05f7745e949ec4a39347fb8482e106ee0a26b3c207a6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2961b9e9821de75762ec05f7745e949ec4a39347fb8482e106ee0a26b3c207a6", kill_on_drop: false }`
[INFO] [stdout] 2961b9e9821de75762ec05f7745e949ec4a39347fb8482e106ee0a26b3c207a6
