[INFO] cloning repository https://github.com/moonheart08/erodedvax
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/moonheart08/erodedvax" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmoonheart08%2Ferodedvax", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmoonheart08%2Ferodedvax'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7decb30812c743dac33616c3a816162363dd9840
[INFO] checking moonheart08/erodedvax against master#5518eaa946291f00471af8b254b2a1715f234882 for pr-120393
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmoonheart08%2Ferodedvax" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/moonheart08/erodedvax on toolchain 5518eaa946291f00471af8b254b2a1715f234882
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/moonheart08/erodedvax
[INFO] finished tweaking git repo https://github.com/moonheart08/erodedvax
[INFO] tweaked toml for git repo https://github.com/moonheart08/erodedvax written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/moonheart08/erodedvax 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" "+5518eaa946291f00471af8b254b2a1715f234882" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /workspace/builds/worker-4-tc1/source/erodedvax/Cargo.toml
[INFO] [stderr] workspace: /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e50c7b17caf467c720cd935c3d0f983774d548e7ad4ca8655edf58fcfacc05b7
[INFO] running `Command { std: "docker" "start" "-a" "e50c7b17caf467c720cd935c3d0f983774d548e7ad4ca8655edf58fcfacc05b7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e50c7b17caf467c720cd935c3d0f983774d548e7ad4ca8655edf58fcfacc05b7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e50c7b17caf467c720cd935c3d0f983774d548e7ad4ca8655edf58fcfacc05b7", kill_on_drop: false }`
[INFO] [stdout] e50c7b17caf467c720cd935c3d0f983774d548e7ad4ca8655edf58fcfacc05b7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e2418c2124e47b8dfcc526c815b18edf3c91f5d0aa86697a4bff67f507a99661
[INFO] running `Command { std: "docker" "start" "-a" "e2418c2124e47b8dfcc526c815b18edf3c91f5d0aa86697a4bff67f507a99661", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/erodedvax/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.9
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling syn v1.0.16
[INFO] [stderr]     Checking bitfield v0.13.2
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]    Compiling num-bigint v0.2.6
[INFO] [stderr]    Compiling num-rational v0.2.3
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]    Compiling num-iter v0.1.40
[INFO] [stderr]    Compiling quote v1.0.3
[INFO] [stderr]     Checking num v0.2.1
[INFO] [stderr]    Compiling num-derive v0.3.0
[INFO] [stderr]     Checking erodedvax v0.1.0 (/opt/rustwide/workdir/erodedvax)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> erodedvax/src/lib.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_derive::*`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use num_derive::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FromPrimitive`, `ToPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/mod.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `InstructionType`, `OperandIter`, `OperandMode`, `OperandParseError`, `OperandWidth`, `RegID`, `decode_instr`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:933:13
[INFO] [stdout]     |
[INFO] [stdout] 933 |             OperandMode,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 934 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 935 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 936 |             OperandIter,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 937 |             InstructionType,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout] 938 |             decode_instr,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 939 |         },
[INFO] [stdout] 940 |         RegID,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `InstructionType`, `OperandIter`, `OperandMode`, `OperandParseError`, `OperandWidth`, `RegID`, `decode_instr`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrparse.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |             OperandMode,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 141 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 142 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 143 |             OperandIter,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 144 |             InstructionType,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout] 145 |             decode_instr,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 146 |         },
[INFO] [stdout] 147 |         RegID,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperandMode`, `OperandParseError`, `OperandWidth`, `RegID`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/mod.rs:310:13
[INFO] [stdout]     |
[INFO] [stdout] 310 |             OperandMode,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 311 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 312 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 313 |         },
[INFO] [stdout] 314 |         RegID,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ervax::cpu::mmu::*`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/mmu.rs:205:9
[INFO] [stdout]     |
[INFO] [stdout] 205 |     use crate::ervax::cpu::mmu::*;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/execution.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> erodedvax/src/lib.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_derive::*`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use num_derive::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FromPrimitive`, `ToPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/mod.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperandIter`, `OperandMode`, `OperandParseError`, `OperandWidth`, `RegID`, `decode_instr`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:933:13
[INFO] [stdout]     |
[INFO] [stdout] 933 |             OperandMode,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 934 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 935 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 936 |             OperandIter,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 937 |             InstructionType,
[INFO] [stdout] 938 |             decode_instr,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 939 |         },
[INFO] [stdout] 940 |         RegID,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperandIter`, `OperandParseError`, `OperandWidth`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrparse.rs:141:13
[INFO] [stdout]     |
[INFO] [stdout] 141 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 142 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 143 |             OperandIter,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_mm_getcsr`: see `_mm_getcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:30:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     unsafe { x86_64::_mm_getcsr() }
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_ROUNDING_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |         x86_64::_MM_SET_ROUNDING_MODE(x86_64::_MM_ROUND_TOWARD_ZERO);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |         x86_64::_MM_SET_FLUSH_ZERO_MODE(x86_64::_MM_FLUSH_ZERO_ON); 
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_mm_setcsr`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |     unsafe { x86_64::_mm_setcsr(s) }
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_GET_EXCEPTION_STATE`: see `_mm_getcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:48:21
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let s = x86_64::_MM_GET_EXCEPTION_STATE();
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_mm_getcsr`: see `_mm_getcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:30:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     unsafe { x86_64::_mm_getcsr() }
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_ROUNDING_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |         x86_64::_MM_SET_ROUNDING_MODE(x86_64::_MM_ROUND_TOWARD_ZERO);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |         x86_64::_MM_SET_FLUSH_ZERO_MODE(x86_64::_MM_FLUSH_ZERO_ON); 
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_mm_setcsr`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |     unsafe { x86_64::_mm_setcsr(s) }
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_GET_EXCEPTION_STATE`: see `_mm_getcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:48:21
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let s = x86_64::_MM_GET_EXCEPTION_STATE();
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:2:33
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FromPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/mmu.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:2:33
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FromPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/mmu.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:959:21
[INFO] [stdout]     |
[INFO] [stdout] 959 |                 let v = vec![i as u8, j as u8];
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FW_BW` is never used
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:609:15
[INFO] [stdout]     |
[INFO] [stdout] 609 |         const FW_BW: &'static [OperandWidth] = 
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FW_WB` is never used
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:618:15
[INFO] [stdout]     |
[INFO] [stdout] 618 |         const FW_WB: &'static [OperandWidth] = 
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_raw` is never used
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/instrs/instrparse.rs:33:19
[INFO] [stdout]    |
[INFO] [stdout] 20 | / impl<'a, I: Iterator> OperandIter<'a, I> 
[INFO] [stdout] 21 | |     where I: Iterator<Item = u8>
[INFO] [stdout]    | |________________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |       pub(crate) fn from_raw<'b>(fm: &'static [FieldMode], fw: &'static [OperandWidth], bytes: &'b mut I) -> OperandIter<'b, I> {
[INFO] [stdout]    |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `upper` and `device` are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/bus.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct VAXBusPage {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 15 |     upper: u32, // Upper half of the address fed to the target device.
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 16 |     device: u16, // The device, referenced by ID.
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `devices`, `ram`, and `bus_map` are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/bus.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct VAXBus {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 21 |     devices: Vec<Box<dyn VAXBusDevice>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 22 |     ram: Vec<u8>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 23 |     bus_map: Vec<VAXBusPage>, // VERY inefficient.
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/execution.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ExecutionContext {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 13 |     halted: bool,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     scbb: u32, 
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pcbb: u32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     ksp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 23 |     /// Executive Stack Pointer.
[INFO] [stdout] 24 |     esp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 25 |     /// Supervisor Stack Pointer.
[INFO] [stdout] 26 |     ssp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 27 |     /// User Stack Pointer.
[INFO] [stdout] 28 |     usp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 29 |     /// Interrupt Stack Pointer.
[INFO] [stdout] 30 |     isp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pc: u32,
[INFO] [stdout]    |     ^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     gpr: [u32;14],
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     bus: VAXBus,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     mmu: VAXMMU,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 21 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking erodedvax-jni v0.1.0 (/opt/rustwide/workdir/erodedvax-jni)
[INFO] [stdout] warning: constant `FW_BW` is never used
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:609:15
[INFO] [stdout]     |
[INFO] [stdout] 609 |         const FW_BW: &'static [OperandWidth] = 
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FW_WB` is never used
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:618:15
[INFO] [stdout]     |
[INFO] [stdout] 618 |         const FW_WB: &'static [OperandWidth] = 
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_raw` is never used
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/instrs/instrparse.rs:33:19
[INFO] [stdout]    |
[INFO] [stdout] 20 | / impl<'a, I: Iterator> OperandIter<'a, I> 
[INFO] [stdout] 21 | |     where I: Iterator<Item = u8>
[INFO] [stdout]    | |________________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |       pub(crate) fn from_raw<'b>(fm: &'static [FieldMode], fw: &'static [OperandWidth], bytes: &'b mut I) -> OperandIter<'b, I> {
[INFO] [stdout]    |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `upper` and `device` are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/bus.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct VAXBusPage {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 15 |     upper: u32, // Upper half of the address fed to the target device.
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 16 |     device: u16, // The device, referenced by ID.
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `devices`, `ram`, and `bus_map` are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/bus.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct VAXBus {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 21 |     devices: Vec<Box<dyn VAXBusDevice>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 22 |     ram: Vec<u8>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 23 |     bus_map: Vec<VAXBusPage>, // VERY inefficient.
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/execution.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ExecutionContext {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 13 |     halted: bool,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     scbb: u32, 
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pcbb: u32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     ksp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 23 |     /// Executive Stack Pointer.
[INFO] [stdout] 24 |     esp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 25 |     /// Supervisor Stack Pointer.
[INFO] [stdout] 26 |     ssp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 27 |     /// User Stack Pointer.
[INFO] [stdout] 28 |     usp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 29 |     /// Interrupt Stack Pointer.
[INFO] [stdout] 30 |     isp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pc: u32,
[INFO] [stdout]    |     ^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     gpr: [u32;14],
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     bus: VAXBus,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     mmu: VAXMMU,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> erodedvax/src/main.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_derive::*`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use num_derive::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FromPrimitive`, `ToPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/mod.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `InstructionType`, `OperandIter`, `OperandMode`, `OperandParseError`, `OperandWidth`, `RegID`, `decode_instr`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:933:13
[INFO] [stdout]     |
[INFO] [stdout] 933 |             OperandMode,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 934 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 935 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 936 |             OperandIter,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 937 |             InstructionType,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout] 938 |             decode_instr,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 939 |         },
[INFO] [stdout] 940 |         RegID,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `InstructionType`, `OperandIter`, `OperandMode`, `OperandParseError`, `OperandWidth`, `RegID`, `decode_instr`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrparse.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |             OperandMode,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 141 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 142 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 143 |             OperandIter,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 144 |             InstructionType,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout] 145 |             decode_instr,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 146 |         },
[INFO] [stdout] 147 |         RegID,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperandMode`, `OperandParseError`, `OperandWidth`, `RegID`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/mod.rs:310:13
[INFO] [stdout]     |
[INFO] [stdout] 310 |             OperandMode,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 311 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 312 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 313 |         },
[INFO] [stdout] 314 |         RegID,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ervax::cpu::mmu::*`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/mmu.rs:205:9
[INFO] [stdout]     |
[INFO] [stdout] 205 |     use crate::ervax::cpu::mmu::*;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/execution.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> erodedvax/src/main.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_derive::*`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use num_derive::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FromPrimitive`, `ToPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/mod.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperandIter`, `OperandMode`, `OperandParseError`, `OperandWidth`, `RegID`, `decode_instr`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:933:13
[INFO] [stdout]     |
[INFO] [stdout] 933 |             OperandMode,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 934 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 935 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 936 |             OperandIter,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 937 |             InstructionType,
[INFO] [stdout] 938 |             decode_instr,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 939 |         },
[INFO] [stdout] 940 |         RegID,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperandIter`, `OperandParseError`, `OperandWidth`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrparse.rs:141:13
[INFO] [stdout]     |
[INFO] [stdout] 141 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 142 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 143 |             OperandIter,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_mm_getcsr`: see `_mm_getcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:30:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     unsafe { x86_64::_mm_getcsr() }
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_ROUNDING_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |         x86_64::_MM_SET_ROUNDING_MODE(x86_64::_MM_ROUND_TOWARD_ZERO);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |         x86_64::_MM_SET_FLUSH_ZERO_MODE(x86_64::_MM_FLUSH_ZERO_ON); 
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_mm_setcsr`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |     unsafe { x86_64::_mm_setcsr(s) }
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_GET_EXCEPTION_STATE`: see `_mm_getcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:48:21
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let s = x86_64::_MM_GET_EXCEPTION_STATE();
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_mm_getcsr`: see `_mm_getcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:30:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     unsafe { x86_64::_mm_getcsr() }
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_ROUNDING_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |         x86_64::_MM_SET_ROUNDING_MODE(x86_64::_MM_ROUND_TOWARD_ZERO);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |         x86_64::_MM_SET_FLUSH_ZERO_MODE(x86_64::_MM_FLUSH_ZERO_ON); 
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_mm_setcsr`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |     unsafe { x86_64::_mm_setcsr(s) }
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_GET_EXCEPTION_STATE`: see `_mm_getcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:48:21
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let s = x86_64::_MM_GET_EXCEPTION_STATE();
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:2:33
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FromPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/mmu.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:2:33
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FromPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/mmu.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:959:21
[INFO] [stdout]     |
[INFO] [stdout] 959 |                 let v = vec![i as u8, j as u8];
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FW_BW` is never used
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:609:15
[INFO] [stdout]     |
[INFO] [stdout] 609 |         const FW_BW: &'static [OperandWidth] = 
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FW_WB` is never used
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:618:15
[INFO] [stdout]     |
[INFO] [stdout] 618 |         const FW_WB: &'static [OperandWidth] = 
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_raw` is never used
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/instrs/instrparse.rs:33:19
[INFO] [stdout]    |
[INFO] [stdout] 20 | / impl<'a, I: Iterator> OperandIter<'a, I> 
[INFO] [stdout] 21 | |     where I: Iterator<Item = u8>
[INFO] [stdout]    | |________________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |       pub(crate) fn from_raw<'b>(fm: &'static [FieldMode], fw: &'static [OperandWidth], bytes: &'b mut I) -> OperandIter<'b, I> {
[INFO] [stdout]    |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `upper` and `device` are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/bus.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct VAXBusPage {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 15 |     upper: u32, // Upper half of the address fed to the target device.
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 16 |     device: u16, // The device, referenced by ID.
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `devices`, `ram`, and `bus_map` are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/bus.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct VAXBus {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 21 |     devices: Vec<Box<dyn VAXBusDevice>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 22 |     ram: Vec<u8>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 23 |     bus_map: Vec<VAXBusPage>, // VERY inefficient.
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/execution.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ExecutionContext {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 13 |     halted: bool,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     scbb: u32, 
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pcbb: u32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     ksp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 23 |     /// Executive Stack Pointer.
[INFO] [stdout] 24 |     esp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 25 |     /// Supervisor Stack Pointer.
[INFO] [stdout] 26 |     ssp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 27 |     /// User Stack Pointer.
[INFO] [stdout] 28 |     usp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 29 |     /// Interrupt Stack Pointer.
[INFO] [stdout] 30 |     isp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pc: u32,
[INFO] [stdout]    |     ^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     gpr: [u32;14],
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     bus: VAXBus,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     mmu: VAXMMU,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 21 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FW_BW` is never used
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:609:15
[INFO] [stdout]     |
[INFO] [stdout] 609 |         const FW_BW: &'static [OperandWidth] = 
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FW_WB` is never used
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:618:15
[INFO] [stdout]     |
[INFO] [stdout] 618 |         const FW_WB: &'static [OperandWidth] = 
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_raw` is never used
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/instrs/instrparse.rs:33:19
[INFO] [stdout]    |
[INFO] [stdout] 20 | / impl<'a, I: Iterator> OperandIter<'a, I> 
[INFO] [stdout] 21 | |     where I: Iterator<Item = u8>
[INFO] [stdout]    | |________________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |       pub(crate) fn from_raw<'b>(fm: &'static [FieldMode], fw: &'static [OperandWidth], bytes: &'b mut I) -> OperandIter<'b, I> {
[INFO] [stdout]    |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `upper` and `device` are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/bus.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct VAXBusPage {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 15 |     upper: u32, // Upper half of the address fed to the target device.
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 16 |     device: u16, // The device, referenced by ID.
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `devices`, `ram`, and `bus_map` are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/bus.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct VAXBus {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 21 |     devices: Vec<Box<dyn VAXBusDevice>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 22 |     ram: Vec<u8>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 23 |     bus_map: Vec<VAXBusPage>, // VERY inefficient.
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/execution.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ExecutionContext {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 13 |     halted: bool,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     scbb: u32, 
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pcbb: u32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     ksp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 23 |     /// Executive Stack Pointer.
[INFO] [stdout] 24 |     esp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 25 |     /// Supervisor Stack Pointer.
[INFO] [stdout] 26 |     ssp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 27 |     /// User Stack Pointer.
[INFO] [stdout] 28 |     usp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 29 |     /// Interrupt Stack Pointer.
[INFO] [stdout] 30 |     isp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pc: u32,
[INFO] [stdout]    |     ^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     gpr: [u32;14],
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     bus: VAXBus,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     mmu: VAXMMU,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 2.97s
[INFO] running `Command { std: "docker" "inspect" "e2418c2124e47b8dfcc526c815b18edf3c91f5d0aa86697a4bff67f507a99661", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e2418c2124e47b8dfcc526c815b18edf3c91f5d0aa86697a4bff67f507a99661", kill_on_drop: false }`
[INFO] [stdout] e2418c2124e47b8dfcc526c815b18edf3c91f5d0aa86697a4bff67f507a99661
[INFO] checking moonheart08/erodedvax against try#7622c0f807a4e13c4db886a1681bf343795692df+rustflags=-Dnon_local_definitions for pr-120393
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmoonheart08%2Ferodedvax" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/moonheart08/erodedvax on toolchain 7622c0f807a4e13c4db886a1681bf343795692df
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/moonheart08/erodedvax
[INFO] finished tweaking git repo https://github.com/moonheart08/erodedvax
[INFO] tweaked toml for git repo https://github.com/moonheart08/erodedvax written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/moonheart08/erodedvax 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" "+7622c0f807a4e13c4db886a1681bf343795692df" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /workspace/builds/worker-4-tc2/source/erodedvax/Cargo.toml
[INFO] [stderr] workspace: /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 87d338da125d1e1e9c14b7e4538c44cbd7af9a964f4c33ce6f484632d8523c09
[INFO] running `Command { std: "docker" "start" "-a" "87d338da125d1e1e9c14b7e4538c44cbd7af9a964f4c33ce6f484632d8523c09", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "87d338da125d1e1e9c14b7e4538c44cbd7af9a964f4c33ce6f484632d8523c09", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "87d338da125d1e1e9c14b7e4538c44cbd7af9a964f4c33ce6f484632d8523c09", kill_on_drop: false }`
[INFO] [stdout] 87d338da125d1e1e9c14b7e4538c44cbd7af9a964f4c33ce6f484632d8523c09
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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 -Dnon_local_definitions" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 06a6fa41c4340d38b7e0e2c4420d049311b9dc1123270bed14c5f2d3d7a5733d
[INFO] running `Command { std: "docker" "start" "-a" "06a6fa41c4340d38b7e0e2c4420d049311b9dc1123270bed14c5f2d3d7a5733d", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/erodedvax/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.9
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling syn v1.0.16
[INFO] [stderr]     Checking bitfield v0.13.2
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]    Compiling num-bigint v0.2.6
[INFO] [stderr]    Compiling num-rational v0.2.3
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]    Compiling num-iter v0.1.40
[INFO] [stderr]    Compiling quote v1.0.3
[INFO] [stderr]     Checking num v0.2.1
[INFO] [stderr]    Compiling num-derive v0.3.0
[INFO] [stderr]     Checking erodedvax v0.1.0 (/opt/rustwide/workdir/erodedvax)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> erodedvax/src/lib.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_derive::*`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use num_derive::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FromPrimitive`, `ToPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/mod.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `InstructionType`, `OperandIter`, `OperandMode`, `OperandParseError`, `OperandWidth`, `RegID`, `decode_instr`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:933:13
[INFO] [stdout]     |
[INFO] [stdout] 933 |             OperandMode,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 934 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 935 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 936 |             OperandIter,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 937 |             InstructionType,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout] 938 |             decode_instr,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 939 |         },
[INFO] [stdout] 940 |         RegID,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `InstructionType`, `OperandIter`, `OperandMode`, `OperandParseError`, `OperandWidth`, `RegID`, `decode_instr`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrparse.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |             OperandMode,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 141 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 142 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 143 |             OperandIter,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 144 |             InstructionType,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout] 145 |             decode_instr,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 146 |         },
[INFO] [stdout] 147 |         RegID,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperandMode`, `OperandParseError`, `OperandWidth`, `RegID`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/mod.rs:310:13
[INFO] [stdout]     |
[INFO] [stdout] 310 |             OperandMode,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 311 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 312 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 313 |         },
[INFO] [stdout] 314 |         RegID,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ervax::cpu::mmu::*`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/mmu.rs:205:9
[INFO] [stdout]     |
[INFO] [stdout] 205 |     use crate::ervax::cpu::mmu::*;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/execution.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> erodedvax/src/lib.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_derive::*`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use num_derive::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FromPrimitive`, `ToPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/mod.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperandIter`, `OperandMode`, `OperandParseError`, `OperandWidth`, `RegID`, `decode_instr`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:933:13
[INFO] [stdout]     |
[INFO] [stdout] 933 |             OperandMode,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 934 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 935 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 936 |             OperandIter,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 937 |             InstructionType,
[INFO] [stdout] 938 |             decode_instr,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 939 |         },
[INFO] [stdout] 940 |         RegID,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperandIter`, `OperandParseError`, `OperandWidth`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrparse.rs:141:13
[INFO] [stdout]     |
[INFO] [stdout] 141 |             OperandParseError,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 142 |             OperandWidth,
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 143 |             OperandIter,
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_mm_getcsr`: see `_mm_getcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:30:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     unsafe { x86_64::_mm_getcsr() }
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_ROUNDING_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |         x86_64::_MM_SET_ROUNDING_MODE(x86_64::_MM_ROUND_TOWARD_ZERO);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |         x86_64::_MM_SET_FLUSH_ZERO_MODE(x86_64::_MM_FLUSH_ZERO_ON); 
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_mm_setcsr`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |     unsafe { x86_64::_mm_setcsr(s) }
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_GET_EXCEPTION_STATE`: see `_mm_getcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:48:21
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let s = x86_64::_MM_GET_EXCEPTION_STATE();
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_mm_getcsr`: see `_mm_getcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:30:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     unsafe { x86_64::_mm_getcsr() }
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_ROUNDING_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |         x86_64::_MM_SET_ROUNDING_MODE(x86_64::_MM_ROUND_TOWARD_ZERO);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |         x86_64::_MM_SET_FLUSH_ZERO_MODE(x86_64::_MM_FLUSH_ZERO_ON); 
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_mm_setcsr`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |     unsafe { x86_64::_mm_setcsr(s) }
[INFO] [stdout]    |                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_GET_EXCEPTION_STATE`: see `_mm_getcsr` documentation - use inline assembly instead
[INFO] [stdout]   --> erodedvax/src/ervax/utils/fpuflags.rs:48:21
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let s = x86_64::_MM_GET_EXCEPTION_STATE();
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:2:33
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FromPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/mmu.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:2:33
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FromPrimitive`
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/mmu.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use num_traits::{FromPrimitive, ToPrimitive};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:959:21
[INFO] [stdout]     |
[INFO] [stdout] 959 |                 let v = vec![i as u8, j as u8];
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FW_BW` is never used
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:609:15
[INFO] [stdout]     |
[INFO] [stdout] 609 |         const FW_BW: &'static [OperandWidth] = 
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FW_WB` is never used
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:618:15
[INFO] [stdout]     |
[INFO] [stdout] 618 |         const FW_WB: &'static [OperandWidth] = 
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_raw` is never used
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/instrs/instrparse.rs:33:19
[INFO] [stdout]    |
[INFO] [stdout] 20 | / impl<'a, I: Iterator> OperandIter<'a, I> 
[INFO] [stdout] 21 | |     where I: Iterator<Item = u8>
[INFO] [stdout]    | |________________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |       pub(crate) fn from_raw<'b>(fm: &'static [FieldMode], fw: &'static [OperandWidth], bytes: &'b mut I) -> OperandIter<'b, I> {
[INFO] [stdout]    |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `upper` and `device` are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/bus.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct VAXBusPage {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 15 |     upper: u32, // Upper half of the address fed to the target device.
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 16 |     device: u16, // The device, referenced by ID.
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `devices`, `ram`, and `bus_map` are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/bus.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct VAXBus {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 21 |     devices: Vec<Box<dyn VAXBusDevice>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 22 |     ram: Vec<u8>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 23 |     bus_map: Vec<VAXBusPage>, // VERY inefficient.
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/execution.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ExecutionContext {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 13 |     halted: bool,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     scbb: u32, 
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pcbb: u32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     ksp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 23 |     /// Executive Stack Pointer.
[INFO] [stdout] 24 |     esp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 25 |     /// Supervisor Stack Pointer.
[INFO] [stdout] 26 |     ssp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 27 |     /// User Stack Pointer.
[INFO] [stdout] 28 |     usp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 29 |     /// Interrupt Stack Pointer.
[INFO] [stdout] 30 |     isp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pc: u32,
[INFO] [stdout]    |     ^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     gpr: [u32;14],
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     bus: VAXBus,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     mmu: VAXMMU,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/mod.rs:13:68
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_PrivilegeMode`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: requested on the command line with `-D non-local-definitions`
[INFO] [stdout]    = note: this error originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/mod.rs:13:83
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_PrivilegeMode`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/registers.rs:1:68
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                                                                    ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_PrivRegisters`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/registers.rs:1:83
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                                                                                   ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_PrivRegisters`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:11:45
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Copy, Clone, Debug, PartialEq, Eq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_InstructionType`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:11:60
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Copy, Clone, Debug, PartialEq, Eq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_InstructionType`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/mmu.rs:12:68
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_PTEProtectionCode`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/mmu.rs:12:83
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_PTEProtectionCode`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors; 21 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `erodedvax` (lib) due to 9 previous errors; 21 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: constant `FW_BW` is never used
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:609:15
[INFO] [stdout]     |
[INFO] [stdout] 609 |         const FW_BW: &'static [OperandWidth] = 
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FW_WB` is never used
[INFO] [stdout]    --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:618:15
[INFO] [stdout]     |
[INFO] [stdout] 618 |         const FW_WB: &'static [OperandWidth] = 
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_raw` is never used
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/instrs/instrparse.rs:33:19
[INFO] [stdout]    |
[INFO] [stdout] 20 | / impl<'a, I: Iterator> OperandIter<'a, I> 
[INFO] [stdout] 21 | |     where I: Iterator<Item = u8>
[INFO] [stdout]    | |________________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |       pub(crate) fn from_raw<'b>(fm: &'static [FieldMode], fw: &'static [OperandWidth], bytes: &'b mut I) -> OperandIter<'b, I> {
[INFO] [stdout]    |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `upper` and `device` are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/bus.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct VAXBusPage {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 15 |     upper: u32, // Upper half of the address fed to the target device.
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 16 |     device: u16, // The device, referenced by ID.
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `devices`, `ram`, and `bus_map` are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/bus.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct VAXBus {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 21 |     devices: Vec<Box<dyn VAXBusDevice>>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 22 |     ram: Vec<u8>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 23 |     bus_map: Vec<VAXBusPage>, // VERY inefficient.
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/execution.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ExecutionContext {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 13 |     halted: bool,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     scbb: u32, 
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pcbb: u32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     ksp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 23 |     /// Executive Stack Pointer.
[INFO] [stdout] 24 |     esp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 25 |     /// Supervisor Stack Pointer.
[INFO] [stdout] 26 |     ssp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 27 |     /// User Stack Pointer.
[INFO] [stdout] 28 |     usp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 29 |     /// Interrupt Stack Pointer.
[INFO] [stdout] 30 |     isp: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pc: u32,
[INFO] [stdout]    |     ^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     gpr: [u32;14],
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     bus: VAXBus,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     mmu: VAXMMU,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/mod.rs:13:68
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_PrivilegeMode`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: requested on the command line with `-D non-local-definitions`
[INFO] [stdout]    = note: this error originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/mod.rs:13:83
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_PrivilegeMode`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/registers.rs:1:68
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                                                                    ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_PrivRegisters`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> erodedvax/src/ervax/cpu/registers.rs:1:83
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                                                                                   ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_PrivRegisters`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:11:45
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Copy, Clone, Debug, PartialEq, Eq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_InstructionType`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/instrs/instrtypes.rs:11:60
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Copy, Clone, Debug, PartialEq, Eq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_InstructionType`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/mmu.rs:12:68
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_PTEProtectionCode`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> erodedvax/src/ervax/cpu/mmu.rs:12:83
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_PTEProtectionCode`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors; 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `erodedvax` (lib test) due to 9 previous errors; 19 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "06a6fa41c4340d38b7e0e2c4420d049311b9dc1123270bed14c5f2d3d7a5733d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "06a6fa41c4340d38b7e0e2c4420d049311b9dc1123270bed14c5f2d3d7a5733d", kill_on_drop: false }`
[INFO] [stdout] 06a6fa41c4340d38b7e0e2c4420d049311b9dc1123270bed14c5f2d3d7a5733d
