[INFO] cloning repository https://github.com/kipcode66/geckodb
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kipcode66/geckodb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkipcode66%2Fgeckodb", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkipcode66%2Fgeckodb'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 38daa36e58ec115c12286beba0f3c6d5509bb96d
[INFO] checking kipcode66/geckodb against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkipcode66%2Fgeckodb" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/kipcode66/geckodb
[INFO] finished tweaking git repo https://github.com/kipcode66/geckodb
[INFO] tweaked toml for git repo https://github.com/kipcode66/geckodb written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/kipcode66/geckodb on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/kipcode66/geckodb already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded simple_logger v5.0.0
[INFO] [stderr]   Downloaded ftdi-mpsse v0.1.1
[INFO] [stderr]   Downloaded managed v0.8.0
[INFO] [stderr]   Downloaded libftd2xx v0.32.4
[INFO] [stderr]   Downloaded gdbstub_arch v0.3.0
[INFO] [stderr]   Downloaded gdbstub v0.7.1
[INFO] [stderr]   Downloaded libftd2xx-ffi v0.8.6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8fc721ceee09d4056d7abd03884bc499bf74fb941d55b8451243afeb7a095159
[INFO] running `Command { std: "docker" "start" "-a" "8fc721ceee09d4056d7abd03884bc499bf74fb941d55b8451243afeb7a095159", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8fc721ceee09d4056d7abd03884bc499bf74fb941d55b8451243afeb7a095159", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8fc721ceee09d4056d7abd03884bc499bf74fb941d55b8451243afeb7a095159", kill_on_drop: false }`
[INFO] [stdout] 8fc721ceee09d4056d7abd03884bc499bf74fb941d55b8451243afeb7a095159
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7b5ee21c33b338aaec50acb11f0db8a33f88c263dfbce3622c328f6baffcfb9c
[INFO] running `Command { std: "docker" "start" "-a" "7b5ee21c33b338aaec50acb11f0db8a33f88c263dfbce3622c328f6baffcfb9c", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.139
[INFO] [stderr]    Compiling paste v1.0.11
[INFO] [stderr]    Compiling time-core v0.1.0
[INFO] [stderr]    Compiling libftd2xx-ffi v0.8.6
[INFO] [stderr]     Checking itoa v1.0.5
[INFO] [stderr]     Checking managed v0.8.0
[INFO] [stderr]     Checking ftdi-mpsse v0.1.1
[INFO] [stderr]     Checking argparse v0.2.2
[INFO] [stderr]    Compiling time-macros v0.2.6
[INFO] [stderr]     Checking gdbstub v0.7.1
[INFO] [stderr]     Checking libftd2xx v0.32.4
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking colored v2.0.0
[INFO] [stderr]     Checking time v0.3.17
[INFO] [stderr]     Checking gdbstub_arch v0.3.0
[INFO] [stderr]     Checking simple_logger v5.0.0
[INFO] [stderr]     Checking geckodb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `str::FromStr`
[INFO] [stdout]  --> src/symbol_parser.rs:1:31
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{num::ParseIntError, str::FromStr};
[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: `str::FromStr`
[INFO] [stdout]  --> src/symbol_parser.rs:1:31
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{num::ParseIntError, str::FromStr};
[INFO] [stdout]   |                               ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/main.rs:190:14
[INFO] [stdout]     |
[INFO] [stdout] 190 |     ParseInt(ParseIntError),
[INFO] [stdout]     |     -------- ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 190 -     ParseInt(ParseIntError),
[INFO] [stdout] 190 +     ParseInt(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/main.rs:191:11
[INFO] [stdout]     |
[INFO] [stdout] 191 |     Range(u32),
[INFO] [stdout]     |     ----- ^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 191 -     Range(u32),
[INFO] [stdout] 191 +     Range(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `symbols` is never read
[INFO] [stdout]   --> src/command_parser.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Parser {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 25 |     gecko: USBGeckoDevice,
[INFO] [stdout] 26 |     symbols: Option<Symbol>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ppc_id.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     Gpr(u8),
[INFO] [stdout]    |     --- ^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PowerPCBroadwayRegId` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 10 -     Gpr(u8),
[INFO] [stdout] 10 +     Gpr(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ppc_id.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |     Fpr(u8),
[INFO] [stdout]    |     --- ^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PowerPCBroadwayRegId` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 24 -     Fpr(u8),
[INFO] [stdout] 24 +     Fpr(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/ppc_id.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum PowerPCBroadwayRegId {
[INFO] [stdout]    |          -------------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 14 |     Msr,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 15 |     /// Condition Register (R66)
[INFO] [stdout] 16 |     Cr,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 17 |     /// Link Register (R67)
[INFO] [stdout] 18 |     Lr,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 19 |     /// Status Save/Restore Register 0
[INFO] [stdout] 20 |     SRR0,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 21 |     /// Status Save/Restore Register 1
[INFO] [stdout] 22 |     SRR1,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     Fps,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 27 |     /// Current Program Status Register (cpsr)
[INFO] [stdout] 28 |     Cpsr,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PowerPCBroadwayRegId` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParseError` is never used
[INFO] [stdout]  --> src/symbol_parser.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum ParseError {
[INFO] [stdout]   |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `id` are never read
[INFO] [stdout]   --> src/symbol_parser.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Section {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 31 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 32 |     pub id: usize,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Section` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `section`, `section_offset`, `symbol_size`, `symbol_addr`, `symbol_name`, and `symbol_file` are never read
[INFO] [stdout]   --> src/symbol_parser.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct Symbol {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 37 |     pub section: Section,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 38 |     pub section_offset: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 39 |     pub symbol_size: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 40 |     pub symbol_addr: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 41 |     pub symbol_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 42 |     pub symbol_file: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Symbol` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_symbols` is never used
[INFO] [stdout]   --> src/symbol_parser.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn parse_symbols(text: &str) -> Result<Vec<Symbol>, ParseError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]     --> src/usbgecko.rs:405:12
[INFO] [stdout]      |
[INFO] [stdout]  334 | impl USBGeckoDevice {
[INFO] [stdout]      | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  405 |     pub fn get_driver_version(&mut self) -> Result<Version, USBGeckoError> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  412 |     pub fn is_driver_up_to_date(&mut self) -> Result<bool, USBGeckoError> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  460 |     pub fn reset_gecko(&mut self) -> Result<(), USBGeckoError> {
[INFO] [stdout]      |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  534 |     pub fn connected(&self) -> bool {
[INFO] [stdout]      |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  991 |     pub fn breakpoint(&mut self, addr: u32, bp_type: u8, exact: bool) -> Result<(), USBGeckoError> {
[INFO] [stdout]      |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1027 |     pub fn breakpoint_r(&mut self, addr: u32, exact: Option<bool>) -> Result<(), USBGeckoError> {
[INFO] [stdout]      |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1031 |     pub fn breakpoint_w(&mut self, addr: u32, exact: Option<bool>) -> Result<(), USBGeckoError> {
[INFO] [stdout]      |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1035 |     pub fn breakpoint_rw(&mut self, addr: u32, exact: Option<bool>) -> Result<(), USBGeckoError> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/main.rs:190:14
[INFO] [stdout]     |
[INFO] [stdout] 190 |     ParseInt(ParseIntError),
[INFO] [stdout]     |     -------- ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 190 -     ParseInt(ParseIntError),
[INFO] [stdout] 190 +     ParseInt(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/main.rs:191:11
[INFO] [stdout]     |
[INFO] [stdout] 191 |     Range(u32),
[INFO] [stdout]     |     ----- ^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 191 -     Range(u32),
[INFO] [stdout] 191 +     Range(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `symbols` is never read
[INFO] [stdout]   --> src/command_parser.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Parser {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 25 |     gecko: USBGeckoDevice,
[INFO] [stdout] 26 |     symbols: Option<Symbol>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ppc_id.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     Gpr(u8),
[INFO] [stdout]    |     --- ^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PowerPCBroadwayRegId` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 10 -     Gpr(u8),
[INFO] [stdout] 10 +     Gpr(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/ppc_id.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |     Fpr(u8),
[INFO] [stdout]    |     --- ^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PowerPCBroadwayRegId` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 24 -     Fpr(u8),
[INFO] [stdout] 24 +     Fpr(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/ppc_id.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum PowerPCBroadwayRegId {
[INFO] [stdout]    |          -------------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 14 |     Msr,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 15 |     /// Condition Register (R66)
[INFO] [stdout] 16 |     Cr,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 17 |     /// Link Register (R67)
[INFO] [stdout] 18 |     Lr,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 19 |     /// Status Save/Restore Register 0
[INFO] [stdout] 20 |     SRR0,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 21 |     /// Status Save/Restore Register 1
[INFO] [stdout] 22 |     SRR1,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     Fps,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 27 |     /// Current Program Status Register (cpsr)
[INFO] [stdout] 28 |     Cpsr,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PowerPCBroadwayRegId` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ParseError` is never used
[INFO] [stdout]  --> src/symbol_parser.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum ParseError {
[INFO] [stdout]   |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `id` are never read
[INFO] [stdout]   --> src/symbol_parser.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Section {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 31 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 32 |     pub id: usize,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Section` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `section`, `section_offset`, `symbol_size`, `symbol_addr`, `symbol_name`, and `symbol_file` are never read
[INFO] [stdout]   --> src/symbol_parser.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct Symbol {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 37 |     pub section: Section,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 38 |     pub section_offset: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 39 |     pub symbol_size: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 40 |     pub symbol_addr: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 41 |     pub symbol_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 42 |     pub symbol_file: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Symbol` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_symbols` is never used
[INFO] [stdout]   --> src/symbol_parser.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn parse_symbols(text: &str) -> Result<Vec<Symbol>, ParseError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]     --> src/usbgecko.rs:405:12
[INFO] [stdout]      |
[INFO] [stdout]  334 | impl USBGeckoDevice {
[INFO] [stdout]      | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  405 |     pub fn get_driver_version(&mut self) -> Result<Version, USBGeckoError> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  412 |     pub fn is_driver_up_to_date(&mut self) -> Result<bool, USBGeckoError> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  460 |     pub fn reset_gecko(&mut self) -> Result<(), USBGeckoError> {
[INFO] [stdout]      |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  534 |     pub fn connected(&self) -> bool {
[INFO] [stdout]      |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  991 |     pub fn breakpoint(&mut self, addr: u32, bp_type: u8, exact: bool) -> Result<(), USBGeckoError> {
[INFO] [stdout]      |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1027 |     pub fn breakpoint_r(&mut self, addr: u32, exact: Option<bool>) -> Result<(), USBGeckoError> {
[INFO] [stdout]      |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1031 |     pub fn breakpoint_w(&mut self, addr: u32, exact: Option<bool>) -> Result<(), USBGeckoError> {
[INFO] [stdout]      |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1035 |     pub fn breakpoint_rw(&mut self, addr: u32, exact: Option<bool>) -> Result<(), USBGeckoError> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/command_parser.rs:192:35
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 .map(|x| unsafe { std::mem::transmute::<u32, f32>(*x) } as f64)
[INFO] [stdout]     |                                   -------------------------------^^^^
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   help: replace this with: `f32::from_bits`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/command_parser.rs:216:35
[INFO] [stdout]     |
[INFO] [stdout] 216 |                 .map(|x| unsafe { std::mem::transmute::<f32, u32>(*x as f32) })
[INFO] [stdout]     |                                   -------------------------------^^^^^^^^^^^
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   help: replace this with: `f32::to_bits`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/command_parser.rs:192:35
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 .map(|x| unsafe { std::mem::transmute::<u32, f32>(*x) } as f64)
[INFO] [stdout]     |                                   -------------------------------^^^^
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   help: replace this with: `f32::from_bits`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]    --> src/command_parser.rs:216:35
[INFO] [stdout]     |
[INFO] [stdout] 216 |                 .map(|x| unsafe { std::mem::transmute::<f32, u32>(*x as f32) })
[INFO] [stdout]     |                                   -------------------------------^^^^^^^^^^^
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   help: replace this with: `f32::to_bits`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.18s
[INFO] running `Command { std: "docker" "inspect" "7b5ee21c33b338aaec50acb11f0db8a33f88c263dfbce3622c328f6baffcfb9c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7b5ee21c33b338aaec50acb11f0db8a33f88c263dfbce3622c328f6baffcfb9c", kill_on_drop: false }`
[INFO] [stdout] 7b5ee21c33b338aaec50acb11f0db8a33f88c263dfbce3622c328f6baffcfb9c
