[INFO] updating cached repository https://github.com/shanegibbs/risk5-wip
[INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"`
[INFO] running `"git" "rev-parse" "HEAD"`
[INFO] [stdout] fd19e061be70e9c8282f6a10fcf8d1f683f4cabf
[INFO] checking shanegibbs/risk5-wip against master#bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc for pr-70917
[INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshanegibbs%2Frisk5-wip" "/workspace/builds/worker-2/source"`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2/source'...
[INFO] [stderr] done.
[INFO] [stderr] Checking out files:   8% (14/159)   
Checking out files:   9% (15/159)   
Checking out files:  10% (16/159)   
Checking out files:  11% (18/159)   
Checking out files:  12% (20/159)   
Checking out files:  13% (21/159)   
Checking out files:  14% (23/159)   
Checking out files:  15% (24/159)   
Checking out files:  16% (26/159)   
Checking out files:  17% (28/159)   
Checking out files:  18% (29/159)   
Checking out files:  19% (31/159)   
Checking out files:  20% (32/159)   
Checking out files:  21% (34/159)   
Checking out files:  22% (35/159)   
Checking out files:  23% (37/159)   
Checking out files:  24% (39/159)   
Checking out files:  25% (40/159)   
Checking out files:  26% (42/159)   
Checking out files:  27% (43/159)   
Checking out files:  28% (45/159)   
Checking out files:  29% (47/159)   
Checking out files:  30% (48/159)   
Checking out files:  31% (50/159)   
Checking out files:  32% (51/159)   
Checking out files:  33% (53/159)   
Checking out files:  34% (55/159)   
Checking out files:  35% (56/159)   
Checking out files:  36% (58/159)   
Checking out files:  37% (59/159)   
Checking out files:  38% (61/159)   
Checking out files:  39% (63/159)   
Checking out files:  40% (64/159)   
Checking out files:  41% (66/159)   
Checking out files:  42% (67/159)   
Checking out files:  43% (69/159)   
Checking out files:  44% (70/159)   
Checking out files:  45% (72/159)   
Checking out files:  46% (74/159)   
Checking out files:  47% (75/159)   
Checking out files:  48% (77/159)   
Checking out files:  49% (78/159)   
Checking out files:  50% (80/159)   
Checking out files:  51% (82/159)   
Checking out files:  52% (83/159)   
Checking out files:  53% (85/159)   
Checking out files:  54% (86/159)   
Checking out files:  55% (88/159)   
Checking out files:  56% (90/159)   
Checking out files:  57% (91/159)   
Checking out files:  58% (93/159)   
Checking out files:  59% (94/159)   
Checking out files:  60% (96/159)   
Checking out files:  61% (97/159)   
Checking out files:  62% (99/159)   
Checking out files:  63% (101/159)   
Checking out files:  64% (102/159)   
Checking out files:  65% (104/159)   
Checking out files:  66% (105/159)   
Checking out files:  67% (107/159)   
Checking out files:  68% (109/159)   
Checking out files:  69% (110/159)   
Checking out files:  70% (112/159)   
Checking out files:  71% (113/159)   
Checking out files:  72% (115/159)   
Checking out files:  73% (117/159)   
Checking out files:  74% (118/159)   
Checking out files:  75% (120/159)   
Checking out files:  76% (121/159)   
Checking out files:  77% (123/159)   
Checking out files:  78% (125/159)   
Checking out files:  79% (126/159)   
Checking out files:  80% (128/159)   
Checking out files:  81% (129/159)   
Checking out files:  82% (131/159)   
Checking out files:  83% (132/159)   
Checking out files:  84% (134/159)   
Checking out files:  85% (136/159)   
Checking out files:  86% (137/159)   
Checking out files:  87% (139/159)   
Checking out files:  88% (140/159)   
Checking out files:  89% (142/159)   
Checking out files:  90% (144/159)   
Checking out files:  91% (145/159)   
Checking out files:  92% (147/159)   
Checking out files:  93% (148/159)   
Checking out files:  94% (150/159)   
Checking out files:  95% (152/159)   
Checking out files:  96% (153/159)   
Checking out files:  97% (155/159)   
Checking out files:  98% (156/159)   
Checking out files:  99% (158/159)   
Checking out files: 100% (159/159)   
Checking out files: 100% (159/159), done.
[INFO] validating manifest of git repo https://github.com/shanegibbs/risk5-wip on toolchain bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking git repo https://github.com/shanegibbs/risk5-wip
[INFO] finished tweaking git repo https://github.com/shanegibbs/risk5-wip
[INFO] tweaked toml for git repo https://github.com/shanegibbs/risk5-wip written to /workspace/builds/worker-2/source/Cargo.toml
[INFO] crate git repo https://github.com/shanegibbs/risk5-wip already has a lockfile, it will not be regenerated
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stdout] 8ff302c1f8eea2be6839d8e2321dc56a5b0a619f16f006ec341138b88f1cfb6d
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `"docker" "start" "-a" "8ff302c1f8eea2be6839d8e2321dc56a5b0a619f16f006ec341138b88f1cfb6d"`
[INFO] [stderr]     Checking log v0.4.6
[INFO] [stderr]     Checking criterion-plot v0.3.0
[INFO] [stderr]     Checking rand_xoshiro v0.1.0
[INFO] [stderr]     Checking rand_os v0.1.2
[INFO] [stderr]     Checking bincode v1.0.1
[INFO] [stderr]     Checking serde_json v1.0.33
[INFO] [stderr]     Checking miniz-sys v0.1.11
[INFO] [stderr]     Checking csv-core v0.1.5
[INFO] [stderr]    Compiling serde_derive v1.0.83
[INFO] [stderr]     Checking chrono v0.4.6
[INFO] [stderr]     Checking env_logger v0.5.13
[INFO] [stderr]     Checking flate2 v1.0.6
[INFO] [stderr]     Checking csv v1.0.5
[INFO] [stderr]     Checking pretty_env_logger v0.2.5
[INFO] [stderr]     Checking tinytemplate v1.0.1
[INFO] [stderr]     Checking risk5 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking criterion v0.2.9
[INFO] [stderr] warning: unused import: `crate::bitfield::Interrupt`
[INFO] [stderr]    --> src/insns/mod.rs:253:9
[INFO] [stderr]     |
[INFO] [stderr] 253 |     use crate::bitfield::Interrupt;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around block return value
[INFO] [stderr]  --> src/logrunner/logger.rs:9:39
[INFO] [stderr]   |
[INFO] [stderr] 9 |     static ref LOGGER: TracerLogger = { TracerLogger::new() };
[INFO] [stderr]   |                                       ^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_braces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: the item `bincode` is imported redundantly
[INFO] [stderr]    --> src/logrunner/transaction.rs:223:13
[INFO] [stderr]     |
[INFO] [stderr] 223 |         use bincode;
[INFO] [stderr]     |             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the item `csr` is imported redundantly
[INFO] [stderr]    --> src/lib.rs:253:9
[INFO] [stderr]     |
[INFO] [stderr] 26  | pub use crate::insns::*;
[INFO] [stderr]     |         --------------- the item `csr` is already imported here
[INFO] [stderr] ...
[INFO] [stderr] 253 |     use crate::insns::csr;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the item `mem` is imported redundantly
[INFO] [stderr]    --> src/lib.rs:254:9
[INFO] [stderr]     |
[INFO] [stderr] 26  | pub use crate::insns::*;
[INFO] [stderr]     |         --------------- the item `mem` is already imported here
[INFO] [stderr] ...
[INFO] [stderr] 254 |     use crate::insns::mem;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]   --> src/itypes.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     #[inline(always)]
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_attributes)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]   --> src/itypes.rs:49:5
[INFO] [stderr]    |
[INFO] [stderr] 49 |     #[inline(always)]
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable statement
[INFO] [stderr]    --> src/logrunner/run.rs:110:9
[INFO] [stderr]     |
[INFO] [stderr] 108 |         continue;
[INFO] [stderr]     |         -------- any code following this expression is unreachable
[INFO] [stderr] 109 | 
[INFO] [stderr] 110 |         let mut fail = false;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `start`
[INFO] [stderr]    --> src/lib.rs:110:9
[INFO] [stderr]     |
[INFO] [stderr] 110 |     let start = SystemTime::now();
[INFO] [stderr]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `real_trigger` is never read
[INFO] [stderr]    --> src/lib.rs:142:13
[INFO] [stderr]     |
[INFO] [stderr] 142 |     let mut real_trigger = false;
[INFO] [stderr]     |             ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `speed`
[INFO] [stderr]    --> src/lib.rs:175:21
[INFO] [stderr]     |
[INFO] [stderr] 175 |                 let speed = (STEP_SIZE as f32) / in_sec;
[INFO] [stderr]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_speed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `cpu`
[INFO] [stderr]   --> src/logrunner/run.rs:58:13
[INFO] [stderr]    |
[INFO] [stderr] 58 |     let mut cpu = Processor::new(mem);
[INFO] [stderr]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_cpu`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mark`
[INFO] [stderr]   --> src/logrunner/run.rs:68:13
[INFO] [stderr]    |
[INFO] [stderr] 68 |     let mut mark = SystemTime::now();
[INFO] [stderr]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_mark`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `line`
[INFO] [stderr]   --> src/logrunner/run.rs:72:13
[INFO] [stderr]    |
[INFO] [stderr] 72 |             line,
[INFO] [stderr]    |             ^^^^ help: try ignoring the field: `line: _`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `mark` is never read
[INFO] [stderr]    --> src/logrunner/run.rs:170:13
[INFO] [stderr]     |
[INFO] [stderr] 170 |             mark = SystemTime::now();
[INFO] [stderr]     |             ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `stored` is never read
[INFO] [stderr]    --> src/logrunner/transaction.rs:135:13
[INFO] [stderr]     |
[INFO] [stderr] 135 |     let mut stored = false;
[INFO] [stderr]     |             ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `cinsn`
[INFO] [stderr]    --> src/mmu.rs:281:23
[INFO] [stderr]     |
[INFO] [stderr] 281 |             let (cpc, cinsn) = unsafe { self.insn_cache.get_unchecked(cache_idx) };
[INFO] [stderr]     |                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_cinsn`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/logrunner/bincode/mod.rs:54:13
[INFO] [stderr]    |
[INFO] [stderr] 54 |         let mut lr = LogLineReader { buf, sz: 0, reader };
[INFO] [stderr]    |             ----^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/logrunner/run.rs:58:9
[INFO] [stderr]    |
[INFO] [stderr] 58 |     let mut cpu = Processor::new(mem);
[INFO] [stderr]    |         ----^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/logrunner/run.rs:68:9
[INFO] [stderr]    |
[INFO] [stderr] 68 |     let mut mark = SystemTime::now();
[INFO] [stderr]    |         ----^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `set_machine_external_interrupt`
[INFO] [stderr]   --> src/bitfield/interrupt.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 |     pub fn set_machine_external_interrupt(&mut self, n: u64) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `set_supervisor_external_interrupt`
[INFO] [stderr]   --> src/bitfield/interrupt.rs:31:5
[INFO] [stderr]    |
[INFO] [stderr] 31 |     pub fn set_supervisor_external_interrupt(&mut self, n: u64) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `set_user_external_interrupt`
[INFO] [stderr]   --> src/bitfield/interrupt.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 43 |     pub fn set_user_external_interrupt(&mut self, n: u64) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `set_machine_timer_interrupt`
[INFO] [stderr]   --> src/bitfield/interrupt.rs:55:5
[INFO] [stderr]    |
[INFO] [stderr] 55 |     pub fn set_machine_timer_interrupt(&mut self, n: u64) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `set_user_timer_interrupt`
[INFO] [stderr]   --> src/bitfield/interrupt.rs:79:5
[INFO] [stderr]    |
[INFO] [stderr] 79 |     pub fn set_user_timer_interrupt(&mut self, n: u64) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `set_machine_software_interrupt`
[INFO] [stderr]   --> src/bitfield/interrupt.rs:91:5
[INFO] [stderr]    |
[INFO] [stderr] 91 |     pub fn set_machine_software_interrupt(&mut self, n: u64) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `set_supervisor_software_interrupt`
[INFO] [stderr]    --> src/bitfield/interrupt.rs:103:5
[INFO] [stderr]     |
[INFO] [stderr] 103 |     pub fn set_supervisor_software_interrupt(&mut self, n: u64) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `set_user_software_interrupt`
[INFO] [stderr]    --> src/bitfield/interrupt.rs:115:5
[INFO] [stderr]     |
[INFO] [stderr] 115 |     pub fn set_user_software_interrupt(&mut self, n: u64) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `set_bits`
[INFO] [stderr]   --> src/bitfield/mstatus.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 24 |     pub fn set_bits(&mut self, _v: u64) {}
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `offset`
[INFO] [stderr]   --> src/bitfield.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 |     pub fn offset(&self) -> u64 {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `val`
[INFO] [stderr]   --> src/bitfield.rs:26:5
[INFO] [stderr]    |
[INFO] [stderr] 26 |     pub fn val(&self) -> u64 {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `val`
[INFO] [stderr]   --> src/bitfield.rs:52:5
[INFO] [stderr]    |
[INFO] [stderr] 52 |     pub fn val(&self) -> u64 {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `offset`
[INFO] [stderr]   --> src/bitfield.rs:96:5
[INFO] [stderr]    |
[INFO] [stderr] 96 |     pub fn offset(&self) -> u64 {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `val`
[INFO] [stderr]    --> src/bitfield.rs:100:5
[INFO] [stderr]     |
[INFO] [stderr] 100 |     pub fn val(&self) -> u64 {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `skip_lines`
[INFO] [stderr]   --> src/logrunner/bincode/mod.rs:59:5
[INFO] [stderr]    |
[INFO] [stderr] 59 |     fn skip_lines(&mut self, n: usize) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `hit`
[INFO] [stderr]   --> src/mmu.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 |     hit: u64,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `miss`
[INFO] [stderr]   --> src/mmu.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 |     miss: u64,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `mem`
[INFO] [stderr]   --> src/mmu.rs:40:5
[INFO] [stderr]    |
[INFO] [stderr] 40 |     pub fn mem(&self) -> &M {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `bare`
[INFO] [stderr]   --> src/mmu.rs:66:5
[INFO] [stderr]    |
[INFO] [stderr] 66 |     pub fn bare(&self) -> &M {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `bare_mut`
[INFO] [stderr]   --> src/mmu.rs:69:5
[INFO] [stderr]    |
[INFO] [stderr] 69 |     pub fn bare_mut(&mut self) -> &mut M {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `mmu`
[INFO] [stderr]   --> src/processor.rs:95:5
[INFO] [stderr]    |
[INFO] [stderr] 95 |     pub(crate) fn mmu(&self) -> &Mmu<M> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `machine_status`
[INFO] [stderr]    --> src/processor.rs:103:5
[INFO] [stderr]     |
[INFO] [stderr] 103 |     pub(crate) fn machine_status(&self) -> &Mstatus {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `seti`
[INFO] [stderr]   --> src/regs.rs:45:5
[INFO] [stderr]    |
[INFO] [stderr] 45 |     pub fn seti<T: Into<usize>>(&mut self, i: T, v: i64) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::bitfield::Interrupt`
[INFO] [stderr]    --> src/insns/mod.rs:253:9
[INFO] [stderr]     |
[INFO] [stderr] 253 |     use crate::bitfield::Interrupt;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around block return value
[INFO] [stderr]  --> src/logrunner/logger.rs:9:39
[INFO] [stderr]   |
[INFO] [stderr] 9 |     static ref LOGGER: TracerLogger = { TracerLogger::new() };
[INFO] [stderr]   |                                       ^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_braces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: the item `bincode` is imported redundantly
[INFO] [stderr]    --> src/logrunner/transaction.rs:223:13
[INFO] [stderr]     |
[INFO] [stderr] 223 |         use bincode;
[INFO] [stderr]     |             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the item `csr` is imported redundantly
[INFO] [stderr]    --> src/lib.rs:253:9
[INFO] [stderr]     |
[INFO] [stderr] 26  | pub use crate::insns::*;
[INFO] [stderr]     |         --------------- the item `csr` is already imported here
[INFO] [stderr] ...
[INFO] [stderr] 253 |     use crate::insns::csr;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the item `mem` is imported redundantly
[INFO] [stderr]    --> src/lib.rs:254:9
[INFO] [stderr]     |
[INFO] [stderr] 26  | pub use crate::insns::*;
[INFO] [stderr]     |         --------------- the item `mem` is already imported here
[INFO] [stderr] ...
[INFO] [stderr] 254 |     use crate::insns::mem;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]   --> src/itypes.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     #[inline(always)]
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_attributes)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]   --> src/itypes.rs:49:5
[INFO] [stderr]    |
[INFO] [stderr] 49 |     #[inline(always)]
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> bin/logrunner.rs:3:29
[INFO] [stderr]   |
[INFO] [stderr] 3 | fn main() -> Result<(), Box<std::error::Error>> {
[INFO] [stderr]   |                             ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn std::error::Error`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> bin/logrunner.rs:3:29
[INFO] [stderr]   |
[INFO] [stderr] 3 | fn main() -> Result<(), Box<std::error::Error>> {
[INFO] [stderr]   |                             ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn std::error::Error`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable statement
[INFO] [stderr]    --> src/logrunner/run.rs:110:9
[INFO] [stderr]     |
[INFO] [stderr] 108 |         continue;
[INFO] [stderr]     |         -------- any code following this expression is unreachable
[INFO] [stderr] 109 | 
[INFO] [stderr] 110 |         let mut fail = false;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] error[E0061]: this function takes 3 arguments but 2 arguments were supplied
[INFO] [stderr]    --> src/mmu.rs:366:17
[INFO] [stderr]     |
[INFO] [stderr] 137 |     fn translate(&mut self, offset: u64, op: MemoryOp, prv: u64) -> Result<u64, ()> {
[INFO] [stderr]     |     ------------------------------------------------------------------------------- defined here
[INFO] [stderr] ...
[INFO] [stderr] 366 |             mmu.translate(0xffffffe0000000c0, 0).expect("ok"),
[INFO] [stderr]     |                 ^^^^^^^^^ ------------------  - supplied 2 arguments
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 expected 3 arguments
[INFO] [stderr] 
[INFO] [stderr] error[E0061]: this function takes 3 arguments but 2 arguments were supplied
[INFO] [stderr]    --> src/mmu.rs:378:17
[INFO] [stderr]     |
[INFO] [stderr] 137 |     fn translate(&mut self, offset: u64, op: MemoryOp, prv: u64) -> Result<u64, ()> {
[INFO] [stderr]     |     ------------------------------------------------------------------------------- defined here
[INFO] [stderr] ...
[INFO] [stderr] 378 |             mmu.translate(0xffffffe000464440, 0).expect("ok"),
[INFO] [stderr]     |                 ^^^^^^^^^ ------------------  - supplied 2 arguments
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 expected 3 arguments
[INFO] [stderr] 
[INFO] [stderr] error[E0061]: this function takes 3 arguments but 2 arguments were supplied
[INFO] [stderr]    --> src/mmu.rs:391:26
[INFO] [stderr]     |
[INFO] [stderr] 137 |     fn translate(&mut self, offset: u64, op: MemoryOp, prv: u64) -> Result<u64, ()> {
[INFO] [stderr]     |     ------------------------------------------------------------------------------- defined here
[INFO] [stderr] ...
[INFO] [stderr] 391 |         let actual = mmu.translate(0xffffffe000002df8, 0).expect("ok");
[INFO] [stderr]     |                          ^^^^^^^^^ ------------------  - supplied 2 arguments
[INFO] [stderr]     |                          |
[INFO] [stderr]     |                          expected 3 arguments
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 3 previous errors
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0061`.
[INFO] [stderr] error: could not compile `risk5`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: build failed
[INFO] running `"docker" "inspect" "8ff302c1f8eea2be6839d8e2321dc56a5b0a619f16f006ec341138b88f1cfb6d"`
[INFO] running `"docker" "rm" "-f" "8ff302c1f8eea2be6839d8e2321dc56a5b0a619f16f006ec341138b88f1cfb6d"`
[INFO] [stdout] 8ff302c1f8eea2be6839d8e2321dc56a5b0a619f16f006ec341138b88f1cfb6d
