[INFO] cloning repository https://github.com/Yottum/nes-emulator
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Yottum/nes-emulator" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYottum%2Fnes-emulator", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYottum%2Fnes-emulator'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6c5acfabf06b2e19dc9854323ddacdc7fd39bb25
[INFO] testing Yottum/nes-emulator against 1.47.0 for beta-1.48-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FYottum%2Fnes-emulator" "/workspace/builds/worker-9/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/Yottum/nes-emulator on toolchain 1.47.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/Yottum/nes-emulator
[INFO] finished tweaking git repo https://github.com/Yottum/nes-emulator
[INFO] tweaked toml for git repo https://github.com/Yottum/nes-emulator written to /workspace/builds/worker-9/source/Cargo.toml
[INFO] crate git repo https://github.com/Yottum/nes-emulator already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "+1.47.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 34762e37e7761132eb189c6ec7239487a9c77fd15f626822d14cbb04bd91cbf6
[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" "34762e37e7761132eb189c6ec7239487a9c77fd15f626822d14cbb04bd91cbf6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "34762e37e7761132eb189c6ec7239487a9c77fd15f626822d14cbb04bd91cbf6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "34762e37e7761132eb189c6ec7239487a9c77fd15f626822d14cbb04bd91cbf6", kill_on_drop: false }`
[INFO] [stdout] 34762e37e7761132eb189c6ec7239487a9c77fd15f626822d14cbb04bd91cbf6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "+1.47.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 14b0acd39ab00404bbd4428886b609091e86563271b7accc574335324ab2b255
[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" "14b0acd39ab00404bbd4428886b609091e86563271b7accc574335324ab2b255", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]    Compiling syn v1.0.37
[INFO] [stderr]    Compiling x11-dl v2.18.5
[INFO] [stderr]    Compiling libloading v0.5.2
[INFO] [stderr]    Compiling memmap v0.7.0
[INFO] [stderr]    Compiling shared_library v0.1.9
[INFO] [stderr]    Compiling raw-window-handle v0.3.3
[INFO] [stderr]    Compiling ordered-float v1.1.0
[INFO] [stderr]    Compiling gl_generator v0.13.1
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]    Compiling gl_generator v0.10.0
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]    Compiling gfx_core v0.9.2
[INFO] [stderr]    Compiling rayon-core v1.7.1
[INFO] [stderr]    Compiling pretty_env_logger v0.4.0
[INFO] [stderr]    Compiling osmesa-sys v0.1.2
[INFO] [stderr]    Compiling rusttype v0.8.3
[INFO] [stderr]    Compiling rayon v1.3.1
[INFO] [stderr]    Compiling rusttype v0.7.9
[INFO] [stderr]    Compiling piston2d-graphics v0.36.0
[INFO] [stderr]    Compiling andrew v0.2.1
[INFO] [stderr]    Compiling gfx_gl v0.6.1
[INFO] [stderr]    Compiling gl v0.11.0
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.6
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling jpeg-decoder v0.1.20
[INFO] [stderr]    Compiling gfx v0.18.2
[INFO] [stderr]    Compiling wayland-commons v0.21.13
[INFO] [stderr]    Compiling serde_derive v1.0.114
[INFO] [stderr]    Compiling thiserror-impl v1.0.20
[INFO] [stderr]    Compiling getset v0.1.1
[INFO] [stderr]    Compiling image v0.23.8
[INFO] [stderr]    Compiling wayland-client v0.21.13
[INFO] [stderr]    Compiling wayland-protocols v0.21.13
[INFO] [stderr]    Compiling thiserror v1.0.20
[INFO] [stderr]    Compiling gfx_device_gl v0.16.2
[INFO] [stderr]    Compiling smithay-client-toolkit v0.4.6
[INFO] [stderr]    Compiling piston-gfx_texture v0.41.0
[INFO] [stderr]    Compiling piston2d-gfx_graphics v0.68.0
[INFO] [stderr]    Compiling pistoncore-input v1.0.0
[INFO] [stderr]    Compiling winit v0.19.5
[INFO] [stderr]    Compiling glutin v0.21.2
[INFO] [stderr]    Compiling pistoncore-window v0.46.0
[INFO] [stderr]    Compiling pistoncore-event_loop v0.51.0
[INFO] [stderr]    Compiling pistoncore-glutin_window v0.65.0
[INFO] [stderr]    Compiling piston v0.51.0
[INFO] [stderr]    Compiling piston_window v0.110.0
[INFO] [stderr]    Compiling nes v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]   --> src/lib.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let mut bus = Bus::new(
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]   --> src/apu.rs:12:27
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]   --> src/apu.rs:18:32
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn device_write(&mut self, address: u16, value: u8) {
[INFO] [stdout]    |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]   --> src/apu.rs:18:46
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn device_write(&mut self, address: u16, value: u8) {
[INFO] [stdout]    |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]   --> src/ppu.rs:22:27
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]   --> src/rom.rs:57:27
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let mut bus = Bus::new(
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUCTRL`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUMASK`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUSTATUS`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `OAMADDR`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `OAMDATA`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUSCROLL`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUDATA`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `OAMDMA`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `ppu`
[INFO] [stdout]  --> src/bus.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     ppu: Ppu,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `apu`
[INFO] [stdout]  --> src/bus.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     apu: Apu,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `rom`
[INFO] [stdout]  --> src/bus.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     rom: Rom,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `read`
[INFO] [stdout]   --> src/bus.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn read(&self, address: u16) -> u8 {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `select_device`
[INFO] [stdout]   --> src/bus.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn select_device(&self, address: u16) -> &dyn DeviceRead {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `write`
[INFO] [stdout]   --> src/bus.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn write(&mut self, address: u16, value: u8) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `select_device_mut`
[INFO] [stdout]   --> src/bus.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn select_device_mut(&mut self, address: u16) -> &mut dyn DeviceWrite {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `prg_size`
[INFO] [stdout]   --> src/rom.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     prg_size: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `chr_size`
[INFO] [stdout]   --> src/rom.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     chr_size: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `bytes`
[INFO] [stdout]   --> src/rom.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     bytes: Vec<u8>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_bytes`
[INFO] [stdout]   --> src/rom.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn as_bytes(self) -> Vec<u8> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 30 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1m 37s
[INFO] running `Command { std: "docker" "inspect" "14b0acd39ab00404bbd4428886b609091e86563271b7accc574335324ab2b255", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "14b0acd39ab00404bbd4428886b609091e86563271b7accc574335324ab2b255", kill_on_drop: false }`
[INFO] [stdout] 14b0acd39ab00404bbd4428886b609091e86563271b7accc574335324ab2b255
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "+1.47.0" "test" "--frozen" "--no-run" "--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] 4daeff18101a992a0b114a2b5c8d0686a8abe4f5f78aeeda392ea748534d4bc6
[INFO] running `Command { std: "docker" "start" "-a" "4daeff18101a992a0b114a2b5c8d0686a8abe4f5f78aeeda392ea748534d4bc6", kill_on_drop: false }`
[INFO] [stderr]    Compiling nes v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]   --> src/lib.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let mut bus = Bus::new(
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]   --> src/apu.rs:12:27
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]   --> src/apu.rs:18:32
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn device_write(&mut self, address: u16, value: u8) {
[INFO] [stdout]    |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]   --> src/apu.rs:18:46
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn device_write(&mut self, address: u16, value: u8) {
[INFO] [stdout]    |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]   --> src/ppu.rs:22:27
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]   --> src/rom.rs:57:27
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let mut bus = Bus::new(
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUCTRL`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUMASK`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUSTATUS`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `OAMADDR`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `OAMDATA`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUSCROLL`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUDATA`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `OAMDMA`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `ppu`
[INFO] [stdout]  --> src/bus.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     ppu: Ppu,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `apu`
[INFO] [stdout]  --> src/bus.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     apu: Apu,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `rom`
[INFO] [stdout]  --> src/bus.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     rom: Rom,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `read`
[INFO] [stdout]   --> src/bus.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn read(&self, address: u16) -> u8 {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `select_device`
[INFO] [stdout]   --> src/bus.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn select_device(&self, address: u16) -> &dyn DeviceRead {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `write`
[INFO] [stdout]   --> src/bus.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn write(&mut self, address: u16, value: u8) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `select_device_mut`
[INFO] [stdout]   --> src/bus.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn select_device_mut(&mut self, address: u16) -> &mut dyn DeviceWrite {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `prg_size`
[INFO] [stdout]   --> src/rom.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     prg_size: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `chr_size`
[INFO] [stdout]   --> src/rom.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     chr_size: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `bytes`
[INFO] [stdout]   --> src/rom.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     bytes: Vec<u8>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_bytes`
[INFO] [stdout]   --> src/rom.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn as_bytes(self) -> Vec<u8> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 30 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bus`
[INFO] [stdout]   --> src/lib.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let mut bus = Bus::new(
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]   --> src/apu.rs:12:27
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]   --> src/apu.rs:18:32
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn device_write(&mut self, address: u16, value: u8) {
[INFO] [stdout]    |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]   --> src/apu.rs:18:46
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn device_write(&mut self, address: u16, value: u8) {
[INFO] [stdout]    |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]   --> src/ppu.rs:22:27
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address`
[INFO] [stdout]   --> src/rom.rs:57:27
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let mut bus = Bus::new(
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUCTRL`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUMASK`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUSTATUS`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `OAMADDR`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `OAMDATA`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUSCROLL`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `PPUDATA`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant is never used: `OAMDMA`
[INFO] [stdout]   --> src/constants.rs:3:9
[INFO] [stdout]    |
[INFO] [stdout] 3  |           pub const $name: u16 = $value;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7  | / addresses! {
[INFO] [stdout] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stdout] 9  | |     PPUMASK   = 0x2001;
[INFO] [stdout] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stdout] ...  |
[INFO] [stdout] 16 | |     OAMDMA    = 0x4014;
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `ppu`
[INFO] [stdout]  --> src/bus.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     ppu: Ppu,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `apu`
[INFO] [stdout]  --> src/bus.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     apu: Apu,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `rom`
[INFO] [stdout]  --> src/bus.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     rom: Rom,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `read`
[INFO] [stdout]   --> src/bus.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn read(&self, address: u16) -> u8 {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `select_device`
[INFO] [stdout]   --> src/bus.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn select_device(&self, address: u16) -> &dyn DeviceRead {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `write`
[INFO] [stdout]   --> src/bus.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn write(&mut self, address: u16, value: u8) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `select_device_mut`
[INFO] [stdout]   --> src/bus.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn select_device_mut(&mut self, address: u16) -> &mut dyn DeviceWrite {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `as_bytes`
[INFO] [stdout]   --> src/rom.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn as_bytes(self) -> Vec<u8> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 27 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 2.76s
[INFO] running `Command { std: "docker" "inspect" "4daeff18101a992a0b114a2b5c8d0686a8abe4f5f78aeeda392ea748534d4bc6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4daeff18101a992a0b114a2b5c8d0686a8abe4f5f78aeeda392ea748534d4bc6", kill_on_drop: false }`
[INFO] [stdout] 4daeff18101a992a0b114a2b5c8d0686a8abe4f5f78aeeda392ea748534d4bc6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "+1.47.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 14bc07fe2002dc19625a4abab57cd4e019547d2faa152203163522d7db3f5717
[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" "14bc07fe2002dc19625a4abab57cd4e019547d2faa152203163522d7db3f5717", kill_on_drop: false }`
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/lib.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/lib.rs:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/lib.rs:5:1
[INFO] [stderr]   |
[INFO] [stderr] 5 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/lib.rs:9:1
[INFO] [stderr]   |
[INFO] [stderr] 9 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bus`
[INFO] [stderr]   --> src/lib.rs:32:9
[INFO] [stderr]    |
[INFO] [stderr] 32 |     let mut bus = Bus::new(
[INFO] [stderr]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `address`
[INFO] [stderr]   --> src/apu.rs:12:27
[INFO] [stderr]    |
[INFO] [stderr] 12 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stderr]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `address`
[INFO] [stderr]   --> src/apu.rs:18:32
[INFO] [stderr]    |
[INFO] [stderr] 18 |     fn device_write(&mut self, address: u16, value: u8) {
[INFO] [stderr]    |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]   --> src/apu.rs:18:46
[INFO] [stderr]    |
[INFO] [stderr] 18 |     fn device_write(&mut self, address: u16, value: u8) {
[INFO] [stderr]    |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `address`
[INFO] [stderr]   --> src/ppu.rs:22:27
[INFO] [stderr]    |
[INFO] [stderr] 22 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stderr]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `address`
[INFO] [stderr]   --> src/rom.rs:57:27
[INFO] [stderr]    |
[INFO] [stderr] 57 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stderr]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/lib.rs:32:9
[INFO] [stderr]    |
[INFO] [stderr] 32 |     let mut bus = Bus::new(
[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: constant is never used: `PPUCTRL`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `PPUMASK`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `PPUSTATUS`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `OAMADDR`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `OAMDATA`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `PPUSCROLL`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `PPUDATA`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `OAMDMA`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `ppu`
[INFO] [stderr]  --> src/bus.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 |     ppu: Ppu,
[INFO] [stderr]   |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `apu`
[INFO] [stderr]  --> src/bus.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 |     apu: Apu,
[INFO] [stderr]   |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `rom`
[INFO] [stderr]  --> src/bus.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     rom: Rom,
[INFO] [stderr]   |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `read`
[INFO] [stderr]   --> src/bus.rs:16:12
[INFO] [stderr]    |
[INFO] [stderr] 16 |     pub fn read(&self, address: u16) -> u8 {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `select_device`
[INFO] [stderr]   --> src/bus.rs:20:8
[INFO] [stderr]    |
[INFO] [stderr] 20 |     fn select_device(&self, address: u16) -> &dyn DeviceRead {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `write`
[INFO] [stderr]   --> src/bus.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 29 |     pub fn write(&mut self, address: u16, value: u8) {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `select_device_mut`
[INFO] [stderr]   --> src/bus.rs:33:8
[INFO] [stderr]    |
[INFO] [stderr] 33 |     fn select_device_mut(&mut self, address: u16) -> &mut dyn DeviceWrite {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `prg_size`
[INFO] [stderr]   --> src/rom.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 |     prg_size: u32,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `chr_size`
[INFO] [stderr]   --> src/rom.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 |     chr_size: u32,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `bytes`
[INFO] [stderr]   --> src/rom.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 |     bytes: Vec<u8>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `as_bytes`
[INFO] [stderr]   --> src/rom.rs:51:12
[INFO] [stderr]    |
[INFO] [stderr] 51 |     pub fn as_bytes(self) -> Vec<u8> {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: 30 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/lib.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/lib.rs:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/lib.rs:5:1
[INFO] [stderr]   |
[INFO] [stderr] 5 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/lib.rs:9:1
[INFO] [stderr]   |
[INFO] [stderr] 9 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bus`
[INFO] [stderr]   --> src/lib.rs:32:9
[INFO] [stderr]    |
[INFO] [stderr] 32 |     let mut bus = Bus::new(
[INFO] [stderr]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bus`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `address`
[INFO] [stderr]   --> src/apu.rs:12:27
[INFO] [stderr]    |
[INFO] [stderr] 12 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stderr]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `address`
[INFO] [stderr]   --> src/apu.rs:18:32
[INFO] [stderr]    |
[INFO] [stderr] 18 |     fn device_write(&mut self, address: u16, value: u8) {
[INFO] [stderr]    |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]   --> src/apu.rs:18:46
[INFO] [stderr]    |
[INFO] [stderr] 18 |     fn device_write(&mut self, address: u16, value: u8) {
[INFO] [stderr]    |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `address`
[INFO] [stderr]   --> src/ppu.rs:22:27
[INFO] [stderr]    |
[INFO] [stderr] 22 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stderr]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `address`
[INFO] [stderr]   --> src/rom.rs:57:27
[INFO] [stderr]    |
[INFO] [stderr] 57 |     fn device_read(&self, address: u16) -> u8 {
[INFO] [stderr]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/lib.rs:32:9
[INFO] [stderr]    |
[INFO] [stderr] 32 |     let mut bus = Bus::new(
[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: constant is never used: `PPUCTRL`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `PPUMASK`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `PPUSTATUS`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `OAMADDR`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `OAMDATA`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `PPUSCROLL`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `PPUDATA`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: constant is never used: `OAMDMA`
[INFO] [stderr]   --> src/constants.rs:3:9
[INFO] [stderr]    |
[INFO] [stderr] 3  |           pub const $name: u16 = $value;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7  | / addresses! {
[INFO] [stderr] 8  | |     PPUCTRL   = 0x2000;
[INFO] [stderr] 9  | |     PPUMASK   = 0x2001;
[INFO] [stderr] 10 | |     PPUSTATUS = 0x2002;
[INFO] [stderr] ...  |
[INFO] [stderr] 16 | |     OAMDMA    = 0x4014;
[INFO] [stderr] 17 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `ppu`
[INFO] [stderr]  --> src/bus.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 |     ppu: Ppu,
[INFO] [stderr]   |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `apu`
[INFO] [stderr]  --> src/bus.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 |     apu: Apu,
[INFO] [stderr]   |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `rom`
[INFO] [stderr]  --> src/bus.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     rom: Rom,
[INFO] [stderr]   |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `read`
[INFO] [stderr]   --> src/bus.rs:16:12
[INFO] [stderr]    |
[INFO] [stderr] 16 |     pub fn read(&self, address: u16) -> u8 {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `select_device`
[INFO] [stderr]   --> src/bus.rs:20:8
[INFO] [stderr]    |
[INFO] [stderr] 20 |     fn select_device(&self, address: u16) -> &dyn DeviceRead {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `write`
[INFO] [stderr]   --> src/bus.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 29 |     pub fn write(&mut self, address: u16, value: u8) {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `select_device_mut`
[INFO] [stderr]   --> src/bus.rs:33:8
[INFO] [stderr]    |
[INFO] [stderr] 33 |     fn select_device_mut(&mut self, address: u16) -> &mut dyn DeviceWrite {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `as_bytes`
[INFO] [stderr]   --> src/rom.rs:51:12
[INFO] [stderr]    |
[INFO] [stderr] 51 |     pub fn as_bytes(self) -> Vec<u8> {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: 27 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.26s
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/nes-a875fbba6b1dacca
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test ppu::tests::set_address_active ... ok
[INFO] [stdout] test rom::tests::from_file ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- rom::tests::from_file stdout ----
[INFO] [stdout] thread 'rom::tests::from_file' panicked at 'called `Result::unwrap()` on an `Err` value: failed to read ROM file
[INFO] [stdout] 
[INFO] [stdout] Caused by:
[INFO] [stdout]     No such file or directory (os error 2)', src/rom.rs:73:42
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x56100c5888b0 - std::backtrace_rs::backtrace::libunwind::trace::h577ea05e9ca4629a
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/../../backtrace/src/backtrace/libunwind.rs:96
[INFO] [stdout]    1:     0x56100c5888b0 - std::backtrace_rs::backtrace::trace_unsynchronized::h50b9b72b84c7dd56
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/../../backtrace/src/backtrace/mod.rs:66
[INFO] [stdout]    2:     0x56100c5888b0 - std::sys_common::backtrace::_print_fmt::h6541cf9823837fac
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:79
[INFO] [stdout]    3:     0x56100c5888b0 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hf64fbff071026df5
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:58
[INFO] [stdout]    4:     0x56100c5ab66c - core::fmt::write::h9ddafa4860d8adff
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/fmt/mod.rs:1082
[INFO] [stdout]    5:     0x56100c52cc35 - std::io::Write::write_fmt::h50a71e2460ce07da
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/io/mod.rs:1514
[INFO] [stdout]    6:     0x56100c583621 - std::io::impls::<impl std::io::Write for alloc::boxed::Box<W>>::write_fmt::h9bbd3fed8160d0d2
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/io/impls.rs:176
[INFO] [stdout]    7:     0x56100c58ad30 - std::sys_common::backtrace::_print::ha25f9ff5080d886d
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:61
[INFO] [stdout]    8:     0x56100c58ad30 - std::sys_common::backtrace::print::h213e8aa8dc5405c0
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:48
[INFO] [stdout]    9:     0x56100c58ad30 - std::panicking::default_hook::{{closure}}::h6482fae49ef9d963
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:200
[INFO] [stdout]   10:     0x56100c58aa26 - std::panicking::default_hook::he30ad7589e0970f9
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:216
[INFO] [stdout]   11:     0x56100c58b393 - std::panicking::rust_panic_with_hook::haa1ed36ada4ffb03
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:569
[INFO] [stdout]   12:     0x56100c58af69 - std::panicking::begin_panic_handler::{{closure}}::h7001af1bb21aeaeb
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:476
[INFO] [stdout]   13:     0x56100c588d3c - std::sys_common::backtrace::__rust_end_short_backtrace::h39910f557f5f2367
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:153
[INFO] [stdout]   14:     0x56100c58af29 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:475
[INFO] [stdout]   15:     0x56100c5a9f21 - core::panicking::panic_fmt::h4e2659771ebc78eb
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/panicking.rs:85
[INFO] [stdout]   16:     0x56100c5a9d43 - core::option::expect_none_failed::h448b58a024c2c33a
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/option.rs:1221
[INFO] [stdout]   17:     0x56100c51f7b7 - core::result::Result<T,E>::unwrap::hf536cb3f418cebf3
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/result.rs:973
[INFO] [stdout]   18:     0x56100c520a6f - nes::rom::tests::load_test_rom::h2b4618e7a38c3d34
[INFO] [stdout]                                at /opt/rustwide/workdir/src/rom.rs:73
[INFO] [stdout]   19:     0x56100c520ae3 - nes::rom::tests::from_file::h4e027fb600959ae5
[INFO] [stdout]                                at /opt/rustwide/workdir/src/rom.rs:78
[INFO] [stdout]   20:     0x56100c520aaa - nes::rom::tests::from_file::{{closure}}::h3fbf220a09b319d0
[INFO] [stdout]                                at /opt/rustwide/workdir/src/rom.rs:77
[INFO] [stdout]   21:     0x56100c51f2fe - core::ops::function::FnOnce::call_once::h631055e6434ef880
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/ops/function.rs:227
[INFO] [stdout]   22:     0x56100c555513 - core::ops::function::FnOnce::call_once::hd04d57b5cf16f85a
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/ops/function.rs:227
[INFO] [stdout]   23:     0x56100c555513 - test::__rust_begin_short_backtrace::hd8e9a8c5a2e43388
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/test/src/lib.rs:517
[INFO] [stdout]   24:     0x56100c5539e3 - <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once::h3c3db8a500c1a19a
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/alloc/src/boxed.rs:1042
[INFO] [stdout]   25:     0x56100c5539e3 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h043e9ebcbe360c80
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panic.rs:308
[INFO] [stdout]   26:     0x56100c5539e3 - std::panicking::try::do_call::h47c2fb275506c2e8
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:373
[INFO] [stdout]   27:     0x56100c5539e3 - std::panicking::try::h569c20f0e99453b4
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:337
[INFO] [stdout]   28:     0x56100c5539e3 - std::panic::catch_unwind::hb33c6d0f01540d23
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panic.rs:379
[INFO] [stdout]   29:     0x56100c5539e3 - test::run_test_in_process::hc0ce562d167e51cf
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/test/src/lib.rs:544
[INFO] [stdout]   30:     0x56100c5539e3 - test::run_test::run_test_inner::{{closure}}::hd3120982fcd71544
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/test/src/lib.rs:450
[INFO] [stdout]   31:     0x56100c52c066 - std::sys_common::backtrace::__rust_begin_short_backtrace::h84f8bc12cc4cdac6
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys_common/backtrace.rs:137
[INFO] [stdout]   32:     0x56100c531295 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hb8b5fa0ba425d4db
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/thread/mod.rs:458
[INFO] [stdout]   33:     0x56100c531295 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hc4b84b244cf55f75
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panic.rs:308
[INFO] [stdout]   34:     0x56100c531295 - std::panicking::try::do_call::ha31922ad8fa17753
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:373
[INFO] [stdout]   35:     0x56100c531295 - std::panicking::try::h38a6da203722ae6e
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panicking.rs:337
[INFO] [stdout]   36:     0x56100c531295 - std::panic::catch_unwind::h83afce167c9062b9
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/panic.rs:379
[INFO] [stdout]   37:     0x56100c531295 - std::thread::Builder::spawn_unchecked::{{closure}}::h160689155590a70c
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/thread/mod.rs:457
[INFO] [stdout]   38:     0x56100c531295 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h7dbf17a455132a46
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/core/src/ops/function.rs:227
[INFO] [stdout]   39:     0x56100c591b4a - <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once::h670c50864ac2cb92
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/alloc/src/boxed.rs:1042
[INFO] [stdout]   40:     0x56100c591b4a - <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once::h2511952749086d81
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/alloc/src/boxed.rs:1042
[INFO] [stdout]   41:     0x56100c591b4a - std::sys::unix::thread::Thread::new::thread_start::h5ad4ddffe24373a8
[INFO] [stdout]                                at /rustc/18bf6b4f01a6feaf7259ba7cdae58031af1b7b39/library/std/src/sys/unix/thread.rs:87
[INFO] [stdout]   42:     0x7fca4039c609 - start_thread
[INFO] [stdout]   43:     0x7fca402a8103 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     rom::tests::from_file
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 1 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass '--lib'
[INFO] running `Command { std: "docker" "inspect" "14bc07fe2002dc19625a4abab57cd4e019547d2faa152203163522d7db3f5717", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "14bc07fe2002dc19625a4abab57cd4e019547d2faa152203163522d7db3f5717", kill_on_drop: false }`
[INFO] [stdout] 14bc07fe2002dc19625a4abab57cd4e019547d2faa152203163522d7db3f5717
