[INFO] fetching crate rz80 0.1.1...
[INFO] testing rz80-0.1.1 against beta-2020-10-09 for beta-1.48-1
[INFO] extracting crate rz80 0.1.1 into /workspace/builds/worker-1/source
[INFO] validating manifest of crates.io crate rz80 0.1.1 on toolchain beta-2020-10-09
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking crates.io crate rz80 0.1.1
[INFO] finished tweaking crates.io crate rz80 0.1.1
[INFO] tweaked toml for crates.io crate rz80 0.1.1 written to /workspace/builds/worker-1/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded kernel32-sys v0.1.4
[INFO] [stderr]   Downloaded minifb v0.8.4
[INFO] [stderr]   Downloaded x11-dl v2.2.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] acf85e95fb69298535d721c0a32e06c10e654796fdfa7978c6379ea0044b7a36
[INFO] running `Command { std: "docker" "start" "-a" "acf85e95fb69298535d721c0a32e06c10e654796fdfa7978c6379ea0044b7a36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "acf85e95fb69298535d721c0a32e06c10e654796fdfa7978c6379ea0044b7a36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "acf85e95fb69298535d721c0a32e06c10e654796fdfa7978c6379ea0044b7a36", kill_on_drop: false }`
[INFO] [stdout] acf85e95fb69298535d721c0a32e06c10e654796fdfa7978c6379ea0044b7a36
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 141fc50e892a8c23efeb3f782a64487d444c11636f079d8df393d483405e1bc5
[INFO] running `Command { std: "docker" "start" "-a" "141fc50e892a8c23efeb3f782a64487d444c11636f079d8df393d483405e1bc5", kill_on_drop: false }`
[INFO] [stderr]    Compiling rz80 v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]  --> src/memory.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | const PAGE_SIZE: usize = (1 << PAGE_SHIFT);
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/memory.rs:140:32
[INFO] [stdout]     |
[INFO] [stdout] 140 |         mem.map(0, 0, 0, true, (1 << 16));
[INFO] [stdout]     |                                ^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:158:34
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn step(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:252:35
[INFO] [stdout]     |
[INFO] [stdout] 252 |     pub fn do_op(&mut self, bus: &Bus, ext: bool) -> i64 {
[INFO] [stdout]     |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:663:34
[INFO] [stdout]     |
[INFO] [stdout] 663 |     fn do_ed_op(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:952:34
[INFO] [stdout]     |
[INFO] [stdout] 952 |     pub fn reti(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:959:40
[INFO] [stdout]     |
[INFO] [stdout] 959 |     pub fn handle_irq(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]     |                                        ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1638:33
[INFO] [stdout]      |
[INFO] [stdout] 1638 |     pub fn inp(&mut self, bus: &Bus, port: RegT) -> RegT {
[INFO] [stdout]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1643:34
[INFO] [stdout]      |
[INFO] [stdout] 1643 |     pub fn outp(&mut self, bus: &Bus, port: RegT, val: RegT) {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1692:33
[INFO] [stdout]      |
[INFO] [stdout] 1692 |     pub fn ini(&mut self, bus: &Bus) {
[INFO] [stdout]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1706:33
[INFO] [stdout]      |
[INFO] [stdout] 1706 |     pub fn ind(&mut self, bus: &Bus) {
[INFO] [stdout]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1720:34
[INFO] [stdout]      |
[INFO] [stdout] 1720 |     pub fn inir(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1731:34
[INFO] [stdout]      |
[INFO] [stdout] 1731 |     pub fn indr(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1742:34
[INFO] [stdout]      |
[INFO] [stdout] 1742 |     pub fn outi(&mut self, bus: &Bus) {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1756:34
[INFO] [stdout]      |
[INFO] [stdout] 1756 |     pub fn outd(&mut self, bus: &Bus) {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1770:34
[INFO] [stdout]      |
[INFO] [stdout] 1770 |     pub fn otir(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1781:34
[INFO] [stdout]      |
[INFO] [stdout] 1781 |     pub fn otdr(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/pio.rs:25:36
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const INTCTRL_ENABLE_INT: u8 = (1 << 7);
[INFO] [stdout]    |                                    ^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/pio.rs:26:38
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const INTCTRL_MASK_FOLLOWS: u8 = (1 << 4);
[INFO] [stdout]    |                                      ^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/pio.rs:150:33
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn set_rdy(&mut self, bus: &Bus, chn: usize, rdy: bool) {
[INFO] [stdout]     |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/pio.rs:159:40
[INFO] [stdout]     |
[INFO] [stdout] 159 |     pub fn write_data(&mut self, bus: &Bus, chn: usize, data: RegT) {
[INFO] [stdout]     |                                        ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/pio.rs:186:39
[INFO] [stdout]     |
[INFO] [stdout] 186 |     pub fn read_data(&mut self, bus: &Bus, chn: usize) -> RegT {
[INFO] [stdout]     |                                       ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/pio.rs:211:35
[INFO] [stdout]     |
[INFO] [stdout] 211 |     pub fn write(&mut self, bus: &Bus, chn: usize, data: RegT) {
[INFO] [stdout]     |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ctc.rs:83:35
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn write(&mut self, bus: &Bus, chn: usize, val: RegT) {
[INFO] [stdout]    |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ctc.rs:129:37
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn trigger(&mut self, bus: &Bus, chn: usize) {
[INFO] [stdout]     |                                     ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ctc.rs:143:43
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub fn update_timers(&mut self, bus: &Bus, cycles: i64) {
[INFO] [stdout]     |                                           ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ctc.rs:182:42
[INFO] [stdout]     |
[INFO] [stdout] 182 |     fn down_counter_trigger(&self, bus: &Bus, chn: usize) {
[INFO] [stdout]     |                                          ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/daisychain.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn irq(&mut self, bus: &Bus, ctrl_id: usize, vec: u8) {
[INFO] [stdout]    |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 28 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1.04s
[INFO] running `Command { std: "docker" "inspect" "141fc50e892a8c23efeb3f782a64487d444c11636f079d8df393d483405e1bc5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "141fc50e892a8c23efeb3f782a64487d444c11636f079d8df393d483405e1bc5", kill_on_drop: false }`
[INFO] [stdout] 141fc50e892a8c23efeb3f782a64487d444c11636f079d8df393d483405e1bc5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a6a81ff0ca6ae40dd84d160d87a4eddd8d34dd9d820a22631b4d7e0a68fa6a72
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "a6a81ff0ca6ae40dd84d160d87a4eddd8d34dd9d820a22631b4d7e0a68fa6a72", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.1.12
[INFO] [stderr]    Compiling minifb v0.8.4
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]  --> src/memory.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | const PAGE_SIZE: usize = (1 << PAGE_SHIFT);
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/memory.rs:140:32
[INFO] [stdout]     |
[INFO] [stdout] 140 |         mem.map(0, 0, 0, true, (1 << 16));
[INFO] [stdout]     |                                ^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:158:34
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn step(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:252:35
[INFO] [stdout]     |
[INFO] [stdout] 252 |     pub fn do_op(&mut self, bus: &Bus, ext: bool) -> i64 {
[INFO] [stdout]     |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:663:34
[INFO] [stdout]     |
[INFO] [stdout] 663 |     fn do_ed_op(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:952:34
[INFO] [stdout]     |
[INFO] [stdout] 952 |     pub fn reti(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:959:40
[INFO] [stdout]     |
[INFO] [stdout] 959 |     pub fn handle_irq(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]     |                                        ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1638:33
[INFO] [stdout]      |
[INFO] [stdout] 1638 |     pub fn inp(&mut self, bus: &Bus, port: RegT) -> RegT {
[INFO] [stdout]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1643:34
[INFO] [stdout]      |
[INFO] [stdout] 1643 |     pub fn outp(&mut self, bus: &Bus, port: RegT, val: RegT) {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1692:33
[INFO] [stdout]      |
[INFO] [stdout] 1692 |     pub fn ini(&mut self, bus: &Bus) {
[INFO] [stdout]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1706:33
[INFO] [stdout]      |
[INFO] [stdout] 1706 |     pub fn ind(&mut self, bus: &Bus) {
[INFO] [stdout]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1720:34
[INFO] [stdout]      |
[INFO] [stdout] 1720 |     pub fn inir(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1731:34
[INFO] [stdout]      |
[INFO] [stdout] 1731 |     pub fn indr(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1742:34
[INFO] [stdout]      |
[INFO] [stdout] 1742 |     pub fn outi(&mut self, bus: &Bus) {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1756:34
[INFO] [stdout]      |
[INFO] [stdout] 1756 |     pub fn outd(&mut self, bus: &Bus) {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1770:34
[INFO] [stdout]      |
[INFO] [stdout] 1770 |     pub fn otir(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1781:34
[INFO] [stdout]      |
[INFO] [stdout] 1781 |     pub fn otdr(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/pio.rs:25:36
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const INTCTRL_ENABLE_INT: u8 = (1 << 7);
[INFO] [stdout]    |                                    ^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/pio.rs:26:38
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const INTCTRL_MASK_FOLLOWS: u8 = (1 << 4);
[INFO] [stdout]    |                                      ^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/pio.rs:150:33
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn set_rdy(&mut self, bus: &Bus, chn: usize, rdy: bool) {
[INFO] [stdout]     |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/pio.rs:159:40
[INFO] [stdout]     |
[INFO] [stdout] 159 |     pub fn write_data(&mut self, bus: &Bus, chn: usize, data: RegT) {
[INFO] [stdout]     |                                        ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/pio.rs:186:39
[INFO] [stdout]     |
[INFO] [stdout] 186 |     pub fn read_data(&mut self, bus: &Bus, chn: usize) -> RegT {
[INFO] [stdout]     |                                       ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/pio.rs:211:35
[INFO] [stdout]     |
[INFO] [stdout] 211 |     pub fn write(&mut self, bus: &Bus, chn: usize, data: RegT) {
[INFO] [stdout]     |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ctc.rs:83:35
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn write(&mut self, bus: &Bus, chn: usize, val: RegT) {
[INFO] [stdout]    |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ctc.rs:129:37
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn trigger(&mut self, bus: &Bus, chn: usize) {
[INFO] [stdout]     |                                     ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ctc.rs:143:43
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub fn update_timers(&mut self, bus: &Bus, cycles: i64) {
[INFO] [stdout]     |                                           ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ctc.rs:182:42
[INFO] [stdout]     |
[INFO] [stdout] 182 |     fn down_counter_trigger(&self, bus: &Bus, chn: usize) {
[INFO] [stdout]     |                                          ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/daisychain.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn irq(&mut self, bus: &Bus, ctrl_id: usize, vec: u8) {
[INFO] [stdout]    |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 28 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling dylib v0.0.1
[INFO] [stderr]    Compiling x11-dl v2.2.1
[INFO] [stderr]    Compiling rz80 v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]  --> src/memory.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | const PAGE_SIZE: usize = (1 << PAGE_SHIFT);
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/memory.rs:140:32
[INFO] [stdout]     |
[INFO] [stdout] 140 |         mem.map(0, 0, 0, true, (1 << 16));
[INFO] [stdout]     |                                ^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:158:34
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub fn step(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:252:35
[INFO] [stdout]     |
[INFO] [stdout] 252 |     pub fn do_op(&mut self, bus: &Bus, ext: bool) -> i64 {
[INFO] [stdout]     |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:663:34
[INFO] [stdout]     |
[INFO] [stdout] 663 |     fn do_ed_op(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:952:34
[INFO] [stdout]     |
[INFO] [stdout] 952 |     pub fn reti(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/cpu.rs:959:40
[INFO] [stdout]     |
[INFO] [stdout] 959 |     pub fn handle_irq(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]     |                                        ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1638:33
[INFO] [stdout]      |
[INFO] [stdout] 1638 |     pub fn inp(&mut self, bus: &Bus, port: RegT) -> RegT {
[INFO] [stdout]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1643:34
[INFO] [stdout]      |
[INFO] [stdout] 1643 |     pub fn outp(&mut self, bus: &Bus, port: RegT, val: RegT) {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1692:33
[INFO] [stdout]      |
[INFO] [stdout] 1692 |     pub fn ini(&mut self, bus: &Bus) {
[INFO] [stdout]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1706:33
[INFO] [stdout]      |
[INFO] [stdout] 1706 |     pub fn ind(&mut self, bus: &Bus) {
[INFO] [stdout]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1720:34
[INFO] [stdout]      |
[INFO] [stdout] 1720 |     pub fn inir(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1731:34
[INFO] [stdout]      |
[INFO] [stdout] 1731 |     pub fn indr(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1742:34
[INFO] [stdout]      |
[INFO] [stdout] 1742 |     pub fn outi(&mut self, bus: &Bus) {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1756:34
[INFO] [stdout]      |
[INFO] [stdout] 1756 |     pub fn outd(&mut self, bus: &Bus) {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1770:34
[INFO] [stdout]      |
[INFO] [stdout] 1770 |     pub fn otir(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/cpu.rs:1781:34
[INFO] [stdout]      |
[INFO] [stdout] 1781 |     pub fn otdr(&mut self, bus: &Bus) -> i64 {
[INFO] [stdout]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/pio.rs:25:36
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const INTCTRL_ENABLE_INT: u8 = (1 << 7);
[INFO] [stdout]    |                                    ^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/pio.rs:26:38
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const INTCTRL_MASK_FOLLOWS: u8 = (1 << 4);
[INFO] [stdout]    |                                      ^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/pio.rs:150:33
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn set_rdy(&mut self, bus: &Bus, chn: usize, rdy: bool) {
[INFO] [stdout]     |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/pio.rs:159:40
[INFO] [stdout]     |
[INFO] [stdout] 159 |     pub fn write_data(&mut self, bus: &Bus, chn: usize, data: RegT) {
[INFO] [stdout]     |                                        ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/pio.rs:186:39
[INFO] [stdout]     |
[INFO] [stdout] 186 |     pub fn read_data(&mut self, bus: &Bus, chn: usize) -> RegT {
[INFO] [stdout]     |                                       ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/pio.rs:211:35
[INFO] [stdout]     |
[INFO] [stdout] 211 |     pub fn write(&mut self, bus: &Bus, chn: usize, data: RegT) {
[INFO] [stdout]     |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ctc.rs:83:35
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn write(&mut self, bus: &Bus, chn: usize, val: RegT) {
[INFO] [stdout]    |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ctc.rs:129:37
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn trigger(&mut self, bus: &Bus, chn: usize) {
[INFO] [stdout]     |                                     ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ctc.rs:143:43
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub fn update_timers(&mut self, bus: &Bus, cycles: i64) {
[INFO] [stdout]     |                                           ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/ctc.rs:182:42
[INFO] [stdout]     |
[INFO] [stdout] 182 |     fn down_counter_trigger(&self, bus: &Bus, chn: usize) {
[INFO] [stdout]     |                                          ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/daisychain.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn irq(&mut self, bus: &Bus, ctrl_id: usize, vec: u8) {
[INFO] [stdout]    |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 28 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 8.72s
[INFO] running `Command { std: "docker" "inspect" "a6a81ff0ca6ae40dd84d160d87a4eddd8d34dd9d820a22631b4d7e0a68fa6a72", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a6a81ff0ca6ae40dd84d160d87a4eddd8d34dd9d820a22631b4d7e0a68fa6a72", kill_on_drop: false }`
[INFO] [stdout] a6a81ff0ca6ae40dd84d160d87a4eddd8d34dd9d820a22631b4d7e0a68fa6a72
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] fa56c47a20138377463225f95655a3949fd5e28525240a905cb59f4814de8125
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "fa56c47a20138377463225f95655a3949fd5e28525240a905cb59f4814de8125", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]  --> src/memory.rs:5:26
[INFO] [stderr]   |
[INFO] [stderr] 5 | const PAGE_SIZE: usize = (1 << PAGE_SHIFT);
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around method argument
[INFO] [stderr]    --> src/memory.rs:140:32
[INFO] [stderr]     |
[INFO] [stderr] 140 |         mem.map(0, 0, 0, true, (1 << 16));
[INFO] [stderr]     |                                ^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/cpu.rs:158:34
[INFO] [stderr]     |
[INFO] [stderr] 158 |     pub fn step(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[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]    --> src/cpu.rs:252:35
[INFO] [stderr]     |
[INFO] [stderr] 252 |     pub fn do_op(&mut self, bus: &Bus, ext: bool) -> i64 {
[INFO] [stderr]     |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/cpu.rs:663:34
[INFO] [stderr]     |
[INFO] [stderr] 663 |     fn do_ed_op(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/cpu.rs:952:34
[INFO] [stderr]     |
[INFO] [stderr] 952 |     pub fn reti(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/cpu.rs:959:40
[INFO] [stderr]     |
[INFO] [stderr] 959 |     pub fn handle_irq(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]     |                                        ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1638:33
[INFO] [stderr]      |
[INFO] [stderr] 1638 |     pub fn inp(&mut self, bus: &Bus, port: RegT) -> RegT {
[INFO] [stderr]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1643:34
[INFO] [stderr]      |
[INFO] [stderr] 1643 |     pub fn outp(&mut self, bus: &Bus, port: RegT, val: RegT) {
[INFO] [stderr]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1692:33
[INFO] [stderr]      |
[INFO] [stderr] 1692 |     pub fn ini(&mut self, bus: &Bus) {
[INFO] [stderr]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1706:33
[INFO] [stderr]      |
[INFO] [stderr] 1706 |     pub fn ind(&mut self, bus: &Bus) {
[INFO] [stderr]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1720:34
[INFO] [stderr]      |
[INFO] [stderr] 1720 |     pub fn inir(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1731:34
[INFO] [stderr]      |
[INFO] [stderr] 1731 |     pub fn indr(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1742:34
[INFO] [stderr]      |
[INFO] [stderr] 1742 |     pub fn outi(&mut self, bus: &Bus) {
[INFO] [stderr]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1756:34
[INFO] [stderr]      |
[INFO] [stderr] 1756 |     pub fn outd(&mut self, bus: &Bus) {
[INFO] [stderr]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1770:34
[INFO] [stderr]      |
[INFO] [stderr] 1770 |     pub fn otir(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1781:34
[INFO] [stderr]      |
[INFO] [stderr] 1781 |     pub fn otdr(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> src/pio.rs:25:36
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub const INTCTRL_ENABLE_INT: u8 = (1 << 7);
[INFO] [stderr]    |                                    ^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> src/pio.rs:26:38
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub const INTCTRL_MASK_FOLLOWS: u8 = (1 << 4);
[INFO] [stderr]    |                                      ^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/pio.rs:150:33
[INFO] [stderr]     |
[INFO] [stderr] 150 |     fn set_rdy(&mut self, bus: &Bus, chn: usize, rdy: bool) {
[INFO] [stderr]     |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/pio.rs:159:40
[INFO] [stderr]     |
[INFO] [stderr] 159 |     pub fn write_data(&mut self, bus: &Bus, chn: usize, data: RegT) {
[INFO] [stderr]     |                                        ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/pio.rs:186:39
[INFO] [stderr]     |
[INFO] [stderr] 186 |     pub fn read_data(&mut self, bus: &Bus, chn: usize) -> RegT {
[INFO] [stderr]     |                                       ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/pio.rs:211:35
[INFO] [stderr]     |
[INFO] [stderr] 211 |     pub fn write(&mut self, bus: &Bus, chn: usize, data: RegT) {
[INFO] [stderr]     |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ctc.rs:83:35
[INFO] [stderr]    |
[INFO] [stderr] 83 |     pub fn write(&mut self, bus: &Bus, chn: usize, val: RegT) {
[INFO] [stderr]    |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ctc.rs:129:37
[INFO] [stderr]     |
[INFO] [stderr] 129 |     pub fn trigger(&mut self, bus: &Bus, chn: usize) {
[INFO] [stderr]     |                                     ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ctc.rs:143:43
[INFO] [stderr]     |
[INFO] [stderr] 143 |     pub fn update_timers(&mut self, bus: &Bus, cycles: i64) {
[INFO] [stderr]     |                                           ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ctc.rs:182:42
[INFO] [stderr]     |
[INFO] [stderr] 182 |     fn down_counter_trigger(&self, bus: &Bus, chn: usize) {
[INFO] [stderr]     |                                          ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/daisychain.rs:57:33
[INFO] [stderr]    |
[INFO] [stderr] 57 |     pub fn irq(&mut self, bus: &Bus, ctrl_id: usize, vec: u8) {
[INFO] [stderr]    |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: 28 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]  --> src/memory.rs:5:26
[INFO] [stderr]   |
[INFO] [stderr] 5 | const PAGE_SIZE: usize = (1 << PAGE_SHIFT);
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around method argument
[INFO] [stderr]    --> src/memory.rs:140:32
[INFO] [stderr]     |
[INFO] [stderr] 140 |         mem.map(0, 0, 0, true, (1 << 16));
[INFO] [stderr]     |                                ^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/cpu.rs:158:34
[INFO] [stderr]     |
[INFO] [stderr] 158 |     pub fn step(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[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]    --> src/cpu.rs:252:35
[INFO] [stderr]     |
[INFO] [stderr] 252 |     pub fn do_op(&mut self, bus: &Bus, ext: bool) -> i64 {
[INFO] [stderr]     |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/cpu.rs:663:34
[INFO] [stderr]     |
[INFO] [stderr] 663 |     fn do_ed_op(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/cpu.rs:952:34
[INFO] [stderr]     |
[INFO] [stderr] 952 |     pub fn reti(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]     |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/cpu.rs:959:40
[INFO] [stderr]     |
[INFO] [stderr] 959 |     pub fn handle_irq(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]     |                                        ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1638:33
[INFO] [stderr]      |
[INFO] [stderr] 1638 |     pub fn inp(&mut self, bus: &Bus, port: RegT) -> RegT {
[INFO] [stderr]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1643:34
[INFO] [stderr]      |
[INFO] [stderr] 1643 |     pub fn outp(&mut self, bus: &Bus, port: RegT, val: RegT) {
[INFO] [stderr]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1692:33
[INFO] [stderr]      |
[INFO] [stderr] 1692 |     pub fn ini(&mut self, bus: &Bus) {
[INFO] [stderr]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1706:33
[INFO] [stderr]      |
[INFO] [stderr] 1706 |     pub fn ind(&mut self, bus: &Bus) {
[INFO] [stderr]      |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1720:34
[INFO] [stderr]      |
[INFO] [stderr] 1720 |     pub fn inir(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1731:34
[INFO] [stderr]      |
[INFO] [stderr] 1731 |     pub fn indr(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1742:34
[INFO] [stderr]      |
[INFO] [stderr] 1742 |     pub fn outi(&mut self, bus: &Bus) {
[INFO] [stderr]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1756:34
[INFO] [stderr]      |
[INFO] [stderr] 1756 |     pub fn outd(&mut self, bus: &Bus) {
[INFO] [stderr]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1770:34
[INFO] [stderr]      |
[INFO] [stderr] 1770 |     pub fn otir(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/cpu.rs:1781:34
[INFO] [stderr]      |
[INFO] [stderr] 1781 |     pub fn otdr(&mut self, bus: &Bus) -> i64 {
[INFO] [stderr]      |                                  ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> src/pio.rs:25:36
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub const INTCTRL_ENABLE_INT: u8 = (1 << 7);
[INFO] [stderr]    |                                    ^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> src/pio.rs:26:38
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub const INTCTRL_MASK_FOLLOWS: u8 = (1 << 4);
[INFO] [stderr]    |                                      ^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/pio.rs:150:33
[INFO] [stderr]     |
[INFO] [stderr] 150 |     fn set_rdy(&mut self, bus: &Bus, chn: usize, rdy: bool) {
[INFO] [stderr]     |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/pio.rs:159:40
[INFO] [stderr]     |
[INFO] [stderr] 159 |     pub fn write_data(&mut self, bus: &Bus, chn: usize, data: RegT) {
[INFO] [stderr]     |                                        ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/pio.rs:186:39
[INFO] [stderr]     |
[INFO] [stderr] 186 |     pub fn read_data(&mut self, bus: &Bus, chn: usize) -> RegT {
[INFO] [stderr]     |                                       ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/pio.rs:211:35
[INFO] [stderr]     |
[INFO] [stderr] 211 |     pub fn write(&mut self, bus: &Bus, chn: usize, data: RegT) {
[INFO] [stderr]     |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ctc.rs:83:35
[INFO] [stderr]    |
[INFO] [stderr] 83 |     pub fn write(&mut self, bus: &Bus, chn: usize, val: RegT) {
[INFO] [stderr]    |                                   ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ctc.rs:129:37
[INFO] [stderr]     |
[INFO] [stderr] 129 |     pub fn trigger(&mut self, bus: &Bus, chn: usize) {
[INFO] [stderr]     |                                     ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ctc.rs:143:43
[INFO] [stderr]     |
[INFO] [stderr] 143 |     pub fn update_timers(&mut self, bus: &Bus, cycles: i64) {
[INFO] [stderr]     |                                           ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ctc.rs:182:42
[INFO] [stderr]     |
[INFO] [stderr] 182 |     fn down_counter_trigger(&self, bus: &Bus, chn: usize) {
[INFO] [stderr]     |                                          ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/daisychain.rs:57:33
[INFO] [stderr]    |
[INFO] [stderr] 57 |     pub fn irq(&mut self, bus: &Bus, ctrl_id: usize, vec: u8) {
[INFO] [stderr]    |                                 ^^^ help: use `dyn`: `dyn Bus`
[INFO] [stderr] 
[INFO] [stderr] warning: 28 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.08s
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/rz80-d3b940bfa484be66
[INFO] [stdout] 
[INFO] [stdout] running 40 tests
[INFO] [stdout] test cpu::tests::halt ... ok
[INFO] [stdout] test cpu::tests::reset ... ok
[INFO] [stdout] test cpu::tests::reg16_rw ... ok
[INFO] [stdout] test cpu::tests::neg8 ... ok
[INFO] [stdout] test cpu::tests::add8 ... ok
[INFO] [stdout] test cpu::tests::or8 ... ok
[INFO] [stdout] test cpu::tests::push ... ok
[INFO] [stdout] test cpu::tests::sla8 ... ok
[INFO] [stdout] test cpu::tests::srl8 ... ok
[INFO] [stdout] test cpu::tests::rlc8_rrc8 ... ok
[INFO] [stdout] test cpu::tests::rla8_rra8 ... ok
[INFO] [stdout] test ctc::test::ctc_timer_no_irq ... ok
[INFO] [stdout] test ctc::test::ctc_counter_no_irq ... ok
[INFO] [stdout] test ctc::test::ctc_counter_with_irq ... ok
[INFO] [stdout] test cpu::tests::sbc8 ... ok
[INFO] [stdout] test ctc::test::write_int_vector ... ok
[INFO] [stdout] test cpu::tests::rlca8_rrca8 ... ok
[INFO] [stdout] test ctc::test::write_control_word ... ok
[INFO] [stdout] test ctc::test::reset ... ok
[INFO] [stdout] test cpu::tests::sra8 ... ok
[INFO] [stdout] test cpu::tests::rst ... ok
[INFO] [stdout] test pio::tests::reset ... ok
[INFO] [stdout] test cpu::tests::xor8 ... ok
[INFO] [stdout] test ctc::test::ctc_timer_with_irq ... ok
[INFO] [stdout] test daisychain::test::irq_ack ... ok
[INFO] [stdout] test daisychain::test::reset ... ok
[INFO] [stdout] test memory::tests::mem_readwrite ... ok
[INFO] [stdout] test pio::tests::write_control ... ok
[INFO] [stdout] test registers::tests::new ... ok
[INFO] [stdout] test cpu::tests::outp ... ok
[INFO] [stdout] test registers::tests::set_get ... ok
[INFO] [stdout] test cpu::tests::adc8 ... ok
[INFO] [stdout] test cpu::tests::sub8 ... ok
[INFO] [stdout] test cpu::tests::and8 ... ok
[INFO] [stdout] test cpu::tests::cp8 ... ok
[INFO] [stdout] test cpu::tests::rl8_rr8 ... ok
[INFO] [stdout] test memory::tests::mem_layers ... ok
[INFO] [stdout] test memory::tests::mem_map ... ok
[INFO] [stdout] test cpu::tests::inc8_dec8 ... ok
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/test_opcodes-cf0ca0d9f2aab973
[INFO] [stdout] test cpu::tests::inp ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 40 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 71 tests
[INFO] [stdout] test test_opcodes::test_cp_ihlixiy ... ok
[INFO] [stdout] test test_opcodes::test_cpdr ... ok
[INFO] [stdout] test test_opcodes::test_call_ret ... ok
[INFO] [stdout] test test_opcodes::test_cpir ... ok
[INFO] [stdout] test test_opcodes::test_cpi ... ok
[INFO] [stdout] test test_opcodes::test_ccf_scf ... ok
[INFO] [stdout] test test_opcodes::test_add_r ... ok
[INFO] [stdout] test test_opcodes::test_add_ihlixiy ... ok
[INFO] [stdout] test test_opcodes::test_cpl ... ok
[INFO] [stdout] test test_opcodes::test_ex ... ok
[INFO] [stdout] test test_opcodes::ld_hlddixiy_inn ... ok
[INFO] [stdout] test test_opcodes::test_halt ... ok
[INFO] [stdout] test test_opcodes::ld_inn_hlddixiy ... ok
[INFO] [stdout] test test_opcodes::test_adc_r ... ok
[INFO] [stdout] test test_opcodes::test_cpd ... ok
[INFO] [stdout] test test_opcodes::test_adc_ihlixiy ... ok
[INFO] [stdout] test test_opcodes::test_inc_dec_ss ... ok
[INFO] [stdout] test test_opcodes::test_and_ihlixiy ... ok
[INFO] [stdout] test test_opcodes::test_add_adc_sbc_16 ... ok
[INFO] [stdout] test test_opcodes::test_djnz ... ok
[INFO] [stdout] test test_opcodes::test_daa ... ok
[INFO] [stdout] test test_opcodes::test_ihl_r ... ok
[INFO] [stdout] test test_opcodes::test_inc_dec_r ... ok
[INFO] [stdout] test test_opcodes::test_ld_a_ibcdenn ... ok
[INFO] [stdout] test test_opcodes::test_jp_jr ... ok
[INFO] [stdout] test test_opcodes::test_ld_ir_a ... ok
[INFO] [stdout] test test_opcodes::test_ld_ihl ... ok
[INFO] [stdout] test test_opcodes::test_in ... ok
[INFO] [stdout] test test_opcodes::test_call_cc_ret_cc ... ok
[INFO] [stdout] test test_opcodes::test_ld_ddixiy_nn ... ok
[INFO] [stdout] test test_opcodes::test_ld_hlddixiy_inn ... ok
[INFO] [stdout] test test_opcodes::test_jp_cc_nn ... ok
[INFO] [stdout] test test_opcodes::test_ldd ... ok
[INFO] [stdout] test test_opcodes::test_inc_dec_ihlixiy ... ok
[INFO] [stdout] test test_opcodes::test_ld_r_s ... ok
[INFO] [stdout] test test_opcodes::test_ld_sp_hlixiy ... ok
[INFO] [stdout] test test_opcodes::test_inc_dec_ssixiy ... ok
[INFO] [stdout] test test_opcodes::test_ldir ... ok
[INFO] [stdout] test test_opcodes::test_lddr ... ok
[INFO] [stdout] test test_opcodes::test_ld_ixiy_r ... ok
[INFO] [stdout] test test_opcodes::test_ld_ixiy_n ... ok
[INFO] [stdout] test test_opcodes::test_out ... ok
[INFO] [stdout] test test_opcodes::test_rlc_rl_rrc_rr_r ... ok
[INFO] [stdout] test test_opcodes::test_otir_otdr ... ok
[INFO] [stdout] test test_opcodes::test_neg ... ok
[INFO] [stdout] test test_opcodes::test_or_xor_ihlixiy ... ok
[INFO] [stdout] test test_opcodes::test_sbc_ihlixiy ... ok
[INFO] [stdout] test test_opcodes::test_or_r ... ok
[INFO] [stdout] test test_opcodes::test_rld_rrd ... ok
[INFO] [stdout] test test_opcodes::test_sla_r ... ok
[INFO] [stdout] test test_opcodes::test_sra_r ... ok
[INFO] [stdout] test test_opcodes::test_sla_ihlixiy ... ok
[INFO] [stdout] test test_opcodes::test_cp_r ... ok
[INFO] [stdout] test test_opcodes::test_and_r ... ok
[INFO] [stdout] test test_opcodes::test_ld_ihl_n ... ok
[INFO] [stdout] test test_opcodes::test_jr_cc ... ok
[INFO] [stdout] test test_opcodes::test_sub_r ... ok
[INFO] [stdout] test test_opcodes::test_sbc_r ... ok
[INFO] [stdout] test test_opcodes::test_ldi ... ok
[INFO] [stdout] test test_opcodes::test_rlca_rla_rrca_rra ... ok
[INFO] [stdout] test test_opcodes::test_sra_ihlixiy ... ok
[INFO] [stdout] test test_opcodes::test_srl_r ... ok
[INFO] [stdout] test test_opcodes::test_push_pop ... ok
[INFO] [stdout] test test_opcodes::test_ld_a_ir ... ok
[INFO] [stdout] test test_opcodes::test_ld_r_ixiy ... ok
[INFO] [stdout] test test_opcodes::test_inir_indr ... ok
[INFO] [stdout] test test_opcodes::test_srl_ihlixiy ... ok
[INFO] [stdout] test test_opcodes::test_ld_ibcdenn_a ... ok
[INFO] [stdout] test test_opcodes::test_sub_ihlixiy ... ok
[INFO] [stdout] test test_opcodes::test_rrc_rlc_rr_rl_ihlixiy ... ok
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/test_zex-e7b2409d7a6407fd
[INFO] [stdout] test test_opcodes::test_xor_r ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 71 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests rz80
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test test_zex::test_zex ... ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]  --> /opt/rustwide/workdir/src/memory.rs:5:26
[INFO] [stderr]   |
[INFO] [stderr] 5 | const PAGE_SIZE: usize = (1 << PAGE_SHIFT);
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around method argument
[INFO] [stderr]    --> /opt/rustwide/workdir/src/memory.rs:140:32
[INFO] [stderr]     |
[INFO] [stderr] 140 |         mem.map(0, 0, 0, true, (1 << 16));
[INFO] [stderr]     |                                ^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> /opt/rustwide/workdir/src/pio.rs:25:36
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub const INTCTRL_ENABLE_INT: u8 = (1 << 7);
[INFO] [stderr]    |                                    ^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> /opt/rustwide/workdir/src/pio.rs:26:38
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub const INTCTRL_MASK_FOLLOWS: u8 = (1 << 4);
[INFO] [stderr]    |                                      ^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: 4 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test src/registers.rs - registers::Registers (line 91) ... ok
[INFO] [stdout] test src/memory.rs - memory::Memory (line 107) ... ok
[INFO] [stdout] test src/registers.rs - registers::Registers (line 80) ... ok
[INFO] [stdout] test src/memory.rs - memory::Memory (line 90) ... ok
[INFO] [stdout] test src/registers.rs - registers::Registers (line 70) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "fa56c47a20138377463225f95655a3949fd5e28525240a905cb59f4814de8125", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fa56c47a20138377463225f95655a3949fd5e28525240a905cb59f4814de8125", kill_on_drop: false }`
[INFO] [stdout] fa56c47a20138377463225f95655a3949fd5e28525240a905cb59f4814de8125
