[INFO] cloning repository https://github.com/mj-hd/gb
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mj-hd/gb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmj-hd%2Fgb", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmj-hd%2Fgb'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6238bcb693d38924b90f4058df399314e5a56dd8
[INFO] checking mj-hd/gb against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmj-hd%2Fgb" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/mj-hd/gb
[INFO] finished tweaking git repo https://github.com/mj-hd/gb
[INFO] tweaked toml for git repo https://github.com/mj-hd/gb written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/mj-hd/gb on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/mj-hd/gb already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded dlib v0.5.0
[INFO] [stderr]   Downloaded wayland-sys v0.28.5
[INFO] [stderr]   Downloaded winit_input_helper v0.9.0
[INFO] [stderr]   Downloaded gfx-descriptor v0.2.0
[INFO] [stderr]   Downloaded wayland-scanner v0.28.5
[INFO] [stderr]   Downloaded libloading v0.7.0
[INFO] [stderr]   Downloaded d3d12 v0.3.2
[INFO] [stderr]   Downloaded bitmatch v0.1.1
[INFO] [stderr]   Downloaded wgpu-types v0.6.1
[INFO] [stderr]   Downloaded gfx-backend-empty v0.6.0
[INFO] [stderr]   Downloaded thunderdome v0.3.0
[INFO] [stderr]   Downloaded gfx-auxil v0.7.0
[INFO] [stderr]   Downloaded num_enum_derive v0.4.3
[INFO] [stderr]   Downloaded num_enum v0.4.3
[INFO] [stderr]   Downloaded andrew v0.3.1
[INFO] [stderr]   Downloaded storage-map v0.3.0
[INFO] [stderr]   Downloaded ndk-glue v0.2.1
[INFO] [stderr]   Downloaded dlib v0.4.2
[INFO] [stderr]   Downloaded wayland-cursor v0.28.5
[INFO] [stderr]   Downloaded xcursor v0.3.3
[INFO] [stderr]   Downloaded ab_glyph_rasterizer v0.1.4
[INFO] [stderr]   Downloaded raw-window-handle v0.3.3
[INFO] [stderr]   Downloaded owned_ttf_parser v0.6.0
[INFO] [stderr]   Downloaded wayland-commons v0.28.5
[INFO] [stderr]   Downloaded bytemuck v1.5.1
[INFO] [stderr]   Downloaded boolean_expression v0.3.11
[INFO] [stderr]   Downloaded calloop v0.6.5
[INFO] [stderr]   Downloaded gfx-memory v0.2.2
[INFO] [stderr]   Downloaded pixels v0.2.0
[INFO] [stderr]   Downloaded spirv_headers v1.5.0
[INFO] [stderr]   Downloaded x11-dl v2.18.5
[INFO] [stderr]   Downloaded wide v0.4.6
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.3
[INFO] [stderr]   Downloaded ndk v0.2.1
[INFO] [stderr]   Downloaded xml-rs v0.8.3
[INFO] [stderr]   Downloaded gfx-backend-dx11 v0.6.17
[INFO] [stderr]   Downloaded gfx-backend-dx12 v0.6.13
[INFO] [stderr]   Downloaded naga v0.2.0
[INFO] [stderr]   Downloaded crossbeam-channel v0.5.0
[INFO] [stderr]   Downloaded gfx-backend-metal v0.6.5
[INFO] [stderr]   Downloaded wgpu v0.6.2
[INFO] [stderr]   Downloaded wayland-protocols v0.28.5
[INFO] [stderr]   Downloaded rustyline v8.0.0
[INFO] [stderr]   Downloaded rayon v1.5.0
[INFO] [stderr]   Downloaded ttf-parser v0.6.2
[INFO] [stderr]   Downloaded nix v0.18.0
[INFO] [stderr]   Downloaded smithay-client-toolkit v0.12.3
[INFO] [stderr]   Downloaded ndk-sys v0.2.1
[INFO] [stderr]   Downloaded winit v0.24.0
[INFO] [stderr]   Downloaded ash v0.31.0
[INFO] [stderr]   Downloaded wgpu-core v0.6.5
[INFO] [stderr]   Downloaded serde v1.0.124
[INFO] [stderr]   Downloaded gfx-hal v0.6.0
[INFO] [stderr]   Downloaded wayland-client v0.28.5
[INFO] [stderr]   Downloaded pollster v0.2.2
[INFO] [stderr]   Downloaded rayon-core v1.9.0
[INFO] [stderr]   Downloaded ultraviolet v0.4.6
[INFO] [stderr]   Downloaded x11 v2.18.2
[INFO] [stderr]   Downloaded libc v0.2.90
[INFO] [stderr]   Downloaded gfx-backend-vulkan v0.6.5
[INFO] [stderr]   Downloaded rusttype v0.9.2
[INFO] [stderr]   Downloaded spirv_cross v0.22.2
[INFO] [stderr]   Downloaded crossbeam-deque v0.8.0
[INFO] [stderr]   Downloaded core-graphics v0.22.2
[INFO] [stderr]   Downloaded libloading v0.6.7
[INFO] [stderr]   Downloaded metal v0.20.0
[INFO] [stderr]   Downloaded web-sys v0.3.48
[INFO] [stderr]   Downloaded memmap2 v0.1.0
[INFO] [stderr]   Downloaded xdg v2.2.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 41af54417f13a6bd34059861fbebcff179d8d5824708d473ac077210fe0f2da5
[INFO] running `Command { std: "docker" "start" "-a" "41af54417f13a6bd34059861fbebcff179d8d5824708d473ac077210fe0f2da5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "41af54417f13a6bd34059861fbebcff179d8d5824708d473ac077210fe0f2da5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "41af54417f13a6bd34059861fbebcff179d8d5824708d473ac077210fe0f2da5", kill_on_drop: false }`
[INFO] [stdout] 41af54417f13a6bd34059861fbebcff179d8d5824708d473ac077210fe0f2da5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f8453605baca07ad15707ae5b9c612383a411aa5d4960eac9384e85d6540f240
[INFO] running `Command { std: "docker" "start" "-a" "f8453605baca07ad15707ae5b9c612383a411aa5d4960eac9384e85d6540f240", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.90
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling proc-macro2 v1.0.24
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]    Compiling unicode-xid v0.2.1
[INFO] [stderr]    Compiling pkg-config v0.3.19
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]     Checking smallvec v1.6.1
[INFO] [stderr]    Compiling syn v1.0.64
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling xml-rs v0.8.3
[INFO] [stderr]     Checking slab v0.4.2
[INFO] [stderr]    Compiling crossbeam-utils v0.8.3
[INFO] [stderr]     Checking libloading v0.6.7
[INFO] [stderr]     Checking libloading v0.7.0
[INFO] [stderr]    Compiling wayland-sys v0.28.5
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]     Checking dlib v0.5.0
[INFO] [stderr]    Compiling memoffset v0.6.1
[INFO] [stderr]    Compiling version_check v0.9.3
[INFO] [stderr]    Compiling proc-macro-hack v0.5.19
[INFO] [stderr]     Checking cfg-if v0.1.10
[INFO] [stderr]     Checking instant v0.1.9
[INFO] [stderr]     Checking once_cell v1.7.2
[INFO] [stderr]     Checking pin-project-lite v0.2.6
[INFO] [stderr]    Compiling proc-macro-nested v0.1.7
[INFO] [stderr]    Compiling nom v6.1.2
[INFO] [stderr]    Compiling wayland-scanner v0.28.5
[INFO] [stderr]    Compiling x11 v2.18.2
[INFO] [stderr]     Checking lock_api v0.4.2
[INFO] [stderr]     Checking fxhash v0.2.1
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]     Checking futures-core v0.3.13
[INFO] [stderr]    Compiling rayon-core v1.9.0
[INFO] [stderr]     Checking raw-window-handle v0.3.3
[INFO] [stderr]     Checking nix v0.20.0
[INFO] [stderr]     Checking parking_lot_core v0.8.3
[INFO] [stderr]     Checking futures-sink v0.3.13
[INFO] [stderr]    Compiling nix v0.18.0
[INFO] [stderr]     Checking gfx-hal v0.6.0
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]     Checking scoped-tls v1.0.0
[INFO] [stderr]     Checking ttf-parser v0.6.2
[INFO] [stderr]     Checking parking_lot v0.11.1
[INFO] [stderr]     Checking futures-channel v0.3.13
[INFO] [stderr]     Checking crossbeam-epoch v0.9.3
[INFO] [stderr]     Checking arrayvec v0.5.2
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.4
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling wayland-client v0.28.5
[INFO] [stderr]    Compiling wayland-protocols v0.28.5
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]     Checking futures-io v0.3.13
[INFO] [stderr]     Checking futures-task v0.3.13
[INFO] [stderr]     Checking bit-vec v0.6.3
[INFO] [stderr]     Checking bit-set v0.5.2
[INFO] [stderr]     Checking owned_ttf_parser v0.6.0
[INFO] [stderr]     Checking rusttype v0.9.2
[INFO] [stderr]     Checking walkdir v2.3.1
[INFO] [stderr]     Checking crossbeam-deque v0.8.0
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking xcursor v0.3.3
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking net2 v0.2.37
[INFO] [stderr]     Checking spirv_headers v1.5.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.0
[INFO] [stderr]     Checking ash v0.31.0
[INFO] [stderr]     Checking wayland-commons v0.28.5
[INFO] [stderr]    Compiling x11-dl v2.18.5
[INFO] [stderr]    Compiling num-iter v0.1.42
[INFO] [stderr]    Compiling rayon v1.5.0
[INFO] [stderr]     Checking tracing-core v0.1.17
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]     Checking adler32 v1.2.0
[INFO] [stderr]     Checking inplace_it v0.3.3
[INFO] [stderr]     Checking xdg v2.2.0
[INFO] [stderr]    Compiling wide v0.4.6
[INFO] [stderr]     Checking tracing v0.1.25
[INFO] [stderr]     Checking gfx-backend-empty v0.6.0
[INFO] [stderr]     Checking andrew v0.3.1
[INFO] [stderr]     Checking gfx-memory v0.2.2
[INFO] [stderr]     Checking gfx-descriptor v0.2.0
[INFO] [stderr]     Checking mio v0.6.23
[INFO] [stderr]     Checking wayland-cursor v0.28.5
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]     Checking memmap2 v0.1.0
[INFO] [stderr]     Checking dlib v0.4.2
[INFO] [stderr]     Checking wgpu-types v0.6.1
[INFO] [stderr]     Checking bytemuck v1.5.1
[INFO] [stderr]     Checking copyless v0.1.5
[INFO] [stderr]    Compiling num-derive v0.2.5
[INFO] [stderr]    Compiling either v1.6.1
[INFO] [stderr]     Checking lazycell v1.3.0
[INFO] [stderr]     Checking mio-extras v2.0.6
[INFO] [stderr]     Checking calloop v0.6.5
[INFO] [stderr]    Compiling itertools v0.9.0
[INFO] [stderr]     Checking inflate v0.4.5
[INFO] [stderr]     Checking deflate v0.7.20
[INFO] [stderr]     Checking dirs-sys-next v0.1.2
[INFO] [stderr]     Checking nibble_vec v0.1.0
[INFO] [stderr]     Checking typed-arena v2.0.1
[INFO] [stderr]     Checking lzw v0.10.0
[INFO] [stderr]     Checking endian-type v0.1.2
[INFO] [stderr]     Checking percent-encoding v2.1.0
[INFO] [stderr]    Compiling anyhow v1.0.38
[INFO] [stderr]    Compiling boolean_expression v0.3.11
[INFO] [stderr]     Checking radix_trie v0.2.1
[INFO] [stderr]     Checking gif v0.10.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.24
[INFO] [stderr]    Compiling futures-macro v0.3.13
[INFO] [stderr]     Checking png v0.12.0
[INFO] [stderr]     Checking dirs-next v2.0.0
[INFO] [stderr]     Checking ultraviolet v0.4.6
[INFO] [stderr]     Checking futures-util v0.3.13
[INFO] [stderr]     Checking jpeg-decoder v0.1.22
[INFO] [stderr]     Checking num-rational v0.1.42
[INFO] [stderr]     Checking fs2 v0.4.3
[INFO] [stderr]     Checking thiserror v1.0.24
[INFO] [stderr]     Checking unicode-segmentation v1.7.1
[INFO] [stderr]     Checking naga v0.2.0
[INFO] [stderr]     Checking unicode-width v0.1.8
[INFO] [stderr]     Checking pollster v0.2.2
[INFO] [stderr]     Checking utf8parse v0.2.0
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]    Compiling bitmatch v0.1.1
[INFO] [stderr]    Compiling num-derive v0.3.3
[INFO] [stderr]     Checking rustyline v8.0.0
[INFO] [stderr]     Checking bitfield v0.13.2
[INFO] [stderr]     Checking image v0.19.0
[INFO] [stderr]     Checking gfx-backend-vulkan v0.6.5
[INFO] [stderr]     Checking futures-executor v0.3.13
[INFO] [stderr]     Checking futures v0.3.13
[INFO] [stderr]     Checking wgpu-core v0.6.5
[INFO] [stderr]     Checking wgpu v0.6.2
[INFO] [stderr]     Checking pixels v0.2.0
[INFO] [stderr]     Checking smithay-client-toolkit v0.12.3
[INFO] [stderr]     Checking winit v0.24.0
[INFO] [stderr]     Checking winit_input_helper v0.9.0
[INFO] [stderr]     Checking gb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `mnemonic`
[INFO] [stdout]   --> src/cpu.rs:83:25
[INFO] [stdout]    |
[INFO] [stdout] 83 |             if let Some(mnemonic) = self.interrupt()? {
[INFO] [stdout]    |                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mnemonic`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/ppu.rs:480:13
[INFO] [stdout]     |
[INFO] [stdout] 480 |             _ => {}
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/ppu.rs:480:13
[INFO] [stdout]     |
[INFO] [stdout] 428 |             Mode::Drawing => {
[INFO] [stdout]     |             ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 444 |             Mode::HBlank => {
[INFO] [stdout]     |             ------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 462 |             Mode::OamScan => {
[INFO] [stdout]     |             ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 473 |             Mode::VBlank => {
[INFO] [stdout]     |             ------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 480 |             _ => {}
[INFO] [stdout]     |             ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `half_carry_positive_16` is never used
[INFO] [stdout]    --> src/cpu.rs:330:8
[INFO] [stdout]     |
[INFO] [stdout]  38 | impl Cpu {
[INFO] [stdout]     | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 330 |     fn half_carry_positive_16(&self, left: u16, right: u16) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `HEIGHT` is never used
[INFO] [stdout]  --> src/ppu.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | const HEIGHT: usize = 256;
[INFO] [stdout]   |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/rom.rs:9:10
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(FromPrimitive, Debug)]
[INFO] [stdout]    |          ^------------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `FromPrimitive` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_MbcType`
[INFO] [stdout] 10 | pub enum MbcType {
[INFO] [stdout]    |          ------- `MbcType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/rom.rs:33:10
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(FromPrimitive, Debug)]
[INFO] [stdout]    |          ^------------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `FromPrimitive` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_DestinationCode`
[INFO] [stdout] 34 | pub enum DestinationCode {
[INFO] [stdout]    |          --------------- `DestinationCode` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/timer.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(FromPrimitive, Debug, Copy, Clone)]
[INFO] [stdout]   |          ^------------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `FromPrimitive` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Clock`
[INFO] [stdout] 6 | enum Clock {
[INFO] [stdout]   |      ----- `Clock` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mnemonic`
[INFO] [stdout]   --> src/cpu.rs:83:25
[INFO] [stdout]    |
[INFO] [stdout] 83 |             if let Some(mnemonic) = self.interrupt()? {
[INFO] [stdout]    |                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mnemonic`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/ppu.rs:480:13
[INFO] [stdout]     |
[INFO] [stdout] 480 |             _ => {}
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/ppu.rs:480:13
[INFO] [stdout]     |
[INFO] [stdout] 428 |             Mode::Drawing => {
[INFO] [stdout]     |             ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 444 |             Mode::HBlank => {
[INFO] [stdout]     |             ------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 462 |             Mode::OamScan => {
[INFO] [stdout]     |             ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 473 |             Mode::VBlank => {
[INFO] [stdout]     |             ------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 480 |             _ => {}
[INFO] [stdout]     |             ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `half_carry_positive_16` is never used
[INFO] [stdout]    --> src/cpu.rs:330:8
[INFO] [stdout]     |
[INFO] [stdout]  38 | impl Cpu {
[INFO] [stdout]     | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 330 |     fn half_carry_positive_16(&self, left: u16, right: u16) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `HEIGHT` is never used
[INFO] [stdout]  --> src/ppu.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | const HEIGHT: usize = 256;
[INFO] [stdout]   |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/rom.rs:9:10
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(FromPrimitive, Debug)]
[INFO] [stdout]    |          ^------------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `FromPrimitive` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_MbcType`
[INFO] [stdout] 10 | pub enum MbcType {
[INFO] [stdout]    |          ------- `MbcType` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/rom.rs:33:10
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(FromPrimitive, Debug)]
[INFO] [stdout]    |          ^------------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `FromPrimitive` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_DestinationCode`
[INFO] [stdout] 34 | pub enum DestinationCode {
[INFO] [stdout]    |          --------------- `DestinationCode` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/timer.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(FromPrimitive, Debug, Copy, Clone)]
[INFO] [stdout]   |          ^------------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `FromPrimitive` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Clock`
[INFO] [stdout] 6 | enum Clock {
[INFO] [stdout]   |      ----- `Clock` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 23s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v6.1.2, wgpu-core v0.6.5
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "f8453605baca07ad15707ae5b9c612383a411aa5d4960eac9384e85d6540f240", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f8453605baca07ad15707ae5b9c612383a411aa5d4960eac9384e85d6540f240", kill_on_drop: false }`
[INFO] [stdout] f8453605baca07ad15707ae5b9c612383a411aa5d4960eac9384e85d6540f240
