[INFO] cloning repository https://github.com/mj-hd/ps-memory-reader
[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/ps-memory-reader" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmj-hd%2Fps-memory-reader", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmj-hd%2Fps-memory-reader'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 86afadcfcaf50a4029c7d453603578fcd9f0bebf
[INFO] checking mj-hd/ps-memory-reader against eca445e5ae4a6679cc27d3a09106ce245e13a5a6 for pr-162478
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmj-hd%2Fps-memory-reader" "/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/ps-memory-reader
[INFO] finished tweaking git repo https://github.com/mj-hd/ps-memory-reader
[INFO] tweaked toml for git repo https://github.com/mj-hd/ps-memory-reader written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/mj-hd/ps-memory-reader on toolchain eca445e5ae4a6679cc27d3a09106ce245e13a5a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/mj-hd/ps-memory-reader 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" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rppal v0.13.1
[INFO] [stderr]   Downloaded console v0.15.0
[INFO] [stderr]   Downloaded indicatif v0.16.2
[INFO] [stderr]   Downloaded clap_lex v0.2.0
[INFO] [stderr]   Downloaded textwrap v0.15.0
[INFO] [stderr]   Downloaded os_str_bytes v6.0.0
[INFO] [stderr]   Downloaded syn v1.0.92
[INFO] [stderr]   Downloaded clap v3.1.14
[INFO] [stderr]   Downloaded libc v0.2.125
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] cc19f4213c9f93881a56f72dda0bfeaaa73b9c5e045da767d78baf76babefbc2
[INFO] running `Command { std: "docker" "start" "cc19f4213c9f93881a56f72dda0bfeaaa73b9c5e045da767d78baf76babefbc2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cc19f4213c9f93881a56f72dda0bfeaaa73b9c5e045da767d78baf76babefbc2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "cc19f4213c9f93881a56f72dda0bfeaaa73b9c5e045da767d78baf76babefbc2" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cc19f4213c9f93881a56f72dda0bfeaaa73b9c5e045da767d78baf76babefbc2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "cc19f4213c9f93881a56f72dda0bfeaaa73b9c5e045da767d78baf76babefbc2" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.125
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.37
[INFO] [stderr]     Checking regex-syntax v0.6.25
[INFO] [stderr]    Compiling log v0.4.16
[INFO] [stderr]    Compiling syn v1.0.92
[INFO] [stderr]     Checking hashbrown v0.11.2
[INFO] [stderr]     Checking once_cell v1.10.0
[INFO] [stderr]    Compiling anyhow v1.0.57
[INFO] [stderr]     Checking termcolor v1.1.3
[INFO] [stderr]     Checking os_str_bytes v6.0.0
[INFO] [stderr]     Checking humantime v2.1.0
[INFO] [stderr]    Compiling indexmap v1.8.1
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]     Checking strsim v0.10.0
[INFO] [stderr]     Checking textwrap v0.15.0
[INFO] [stderr]     Checking number_prefix v0.4.0
[INFO] [stderr]     Checking clap_lex v0.2.0
[INFO] [stderr]     Checking aho-corasick v0.7.18
[INFO] [stderr]    Compiling quote v1.0.18
[INFO] [stderr]     Checking terminal_size v0.1.17
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking rppal v0.13.1
[INFO] [stderr]     Checking console v0.15.0
[INFO] [stderr]     Checking clap v3.1.14
[INFO] [stderr]     Checking regex v1.5.5
[INFO] [stderr]     Checking env_logger v0.9.0
[INFO] [stderr]     Checking indicatif v0.16.2
[INFO] [stderr]    Compiling num-derive v0.3.3
[INFO] [stderr]     Checking ps-memory-reader v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `process::Output` and `thread::sleep`
[INFO] [stdout]  --> src/io.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{process::Output, thread::sleep, time::Duration};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bail`
[INFO] [stdout]  --> src/io.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use anyhow::{bail, Result};
[INFO] [stdout]   |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OutputPin`
[INFO] [stdout]  --> src/io.rs:8:28
[INFO] [stdout]   |
[INFO] [stdout] 8 |     gpio::{Gpio, InputPin, OutputPin},
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MemCard2_Ack2` should have an upper camel case name
[INFO] [stdout]    --> src/io.rs:232:5
[INFO] [stdout]     |
[INFO] [stdout] 232 |     MemCard2_Ack2 = 0x5D,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `MemCard2Ack2`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::debug`
[INFO] [stdout]  --> src/memory_card.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::debug;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `process::Output` and `thread::sleep`
[INFO] [stdout]  --> src/io.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{process::Output, thread::sleep, time::Duration};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `gpio` is never read
[INFO] [stdout]   --> src/io.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Io {
[INFO] [stdout]    |            -- field in this struct
[INFO] [stdout] 17 |     gpio: Gpio,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Write` is never constructed
[INFO] [stdout]    --> src/io.rs:224:5
[INFO] [stdout]     |
[INFO] [stdout] 221 | enum Req {
[INFO] [stdout]     |      --- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 224 |     Write = 0x57,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Req` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bail`
[INFO] [stdout]  --> src/io.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use anyhow::{bail, Result};
[INFO] [stdout]   |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Header` is never constructed
[INFO] [stdout]   --> src/memory_card.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 70 | struct Header {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Directory` is never constructed
[INFO] [stdout]   --> src/memory_card.rs:75:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | struct Directory {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OutputPin`
[INFO] [stdout]  --> src/io.rs:8:28
[INFO] [stdout]   |
[INFO] [stdout] 8 |     gpio::{Gpio, InputPin, OutputPin},
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Allocation` is never used
[INFO] [stdout]   --> src/memory_card.rs:83:6
[INFO] [stdout]    |
[INFO] [stdout] 83 | enum Allocation {
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MemCard2_Ack2` should have an upper camel case name
[INFO] [stdout]    --> src/io.rs:232:5
[INFO] [stdout]     |
[INFO] [stdout] 232 |     MemCard2_Ack2 = 0x5D,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `MemCard2Ack2`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::debug`
[INFO] [stdout]  --> src/memory_card.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::debug;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Title` is never constructed
[INFO] [stdout]   --> src/memory_card.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 94 | struct Title {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `IconFlag` is never used
[INFO] [stdout]    --> src/memory_card.rs:103:6
[INFO] [stdout]     |
[INFO] [stdout] 103 | enum IconFlag {
[INFO] [stdout]     |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ShiftJisCharSet` is never constructed
[INFO] [stdout]    --> src/memory_card.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | struct ShiftJisCharSet([u8; 32]);
[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/io.rs:227:30
[INFO] [stdout]     |
[INFO] [stdout] 227 | #[derive(Debug, Clone, Copy, FromPrimitive, PartialEq)]
[INFO] [stdout]     |                              ^------------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              `FromPrimitive` is not local
[INFO] [stdout]     |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Res`
[INFO] [stdout] 228 | enum Res {
[INFO] [stdout]     |      --- `Res` 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/memory_card.rs:82:30
[INFO] [stdout]    |
[INFO] [stdout] 82 | #[derive(Debug, Clone, Copy, FromPrimitive)]
[INFO] [stdout]    |                              ^------------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `FromPrimitive` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Allocation`
[INFO] [stdout] 83 | enum Allocation {
[INFO] [stdout]    |      ---------- `Allocation` 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/memory_card.rs:102:30
[INFO] [stdout]     |
[INFO] [stdout] 102 | #[derive(Debug, Clone, Copy, FromPrimitive)]
[INFO] [stdout]     |                              ^------------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              `FromPrimitive` is not local
[INFO] [stdout]     |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_IconFlag`
[INFO] [stdout] 103 | enum IconFlag {
[INFO] [stdout]     |      -------- `IconFlag` 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: field `gpio` is never read
[INFO] [stdout]   --> src/io.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Io {
[INFO] [stdout]    |            -- field in this struct
[INFO] [stdout] 17 |     gpio: Gpio,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Write` is never constructed
[INFO] [stdout]    --> src/io.rs:224:5
[INFO] [stdout]     |
[INFO] [stdout] 221 | enum Req {
[INFO] [stdout]     |      --- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 224 |     Write = 0x57,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Req` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Header` is never constructed
[INFO] [stdout]   --> src/memory_card.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 70 | struct Header {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Directory` is never constructed
[INFO] [stdout]   --> src/memory_card.rs:75:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | struct Directory {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Allocation` is never used
[INFO] [stdout]   --> src/memory_card.rs:83:6
[INFO] [stdout]    |
[INFO] [stdout] 83 | enum Allocation {
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Title` is never constructed
[INFO] [stdout]   --> src/memory_card.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 94 | struct Title {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `IconFlag` is never used
[INFO] [stdout]    --> src/memory_card.rs:103:6
[INFO] [stdout]     |
[INFO] [stdout] 103 | enum IconFlag {
[INFO] [stdout]     |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ShiftJisCharSet` is never constructed
[INFO] [stdout]    --> src/memory_card.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | struct ShiftJisCharSet([u8; 32]);
[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/io.rs:227:30
[INFO] [stdout]     |
[INFO] [stdout] 227 | #[derive(Debug, Clone, Copy, FromPrimitive, PartialEq)]
[INFO] [stdout]     |                              ^------------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              `FromPrimitive` is not local
[INFO] [stdout]     |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Res`
[INFO] [stdout] 228 | enum Res {
[INFO] [stdout]     |      --- `Res` 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/memory_card.rs:82:30
[INFO] [stdout]    |
[INFO] [stdout] 82 | #[derive(Debug, Clone, Copy, FromPrimitive)]
[INFO] [stdout]    |                              ^------------
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              `FromPrimitive` is not local
[INFO] [stdout]    |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Allocation`
[INFO] [stdout] 83 | enum Allocation {
[INFO] [stdout]    |      ---------- `Allocation` 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/memory_card.rs:102:30
[INFO] [stdout]     |
[INFO] [stdout] 102 | #[derive(Debug, Clone, Copy, FromPrimitive)]
[INFO] [stdout]     |                              ^------------
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              `FromPrimitive` is not local
[INFO] [stdout]     |                              move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_IconFlag`
[INFO] [stdout] 103 | enum IconFlag {
[INFO] [stdout]     |      -------- `IconFlag` 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 8.64s
[INFO] running `Command { std: "docker" "inspect" "cc19f4213c9f93881a56f72dda0bfeaaa73b9c5e045da767d78baf76babefbc2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cc19f4213c9f93881a56f72dda0bfeaaa73b9c5e045da767d78baf76babefbc2", kill_on_drop: false }`
[INFO] [stdout] cc19f4213c9f93881a56f72dda0bfeaaa73b9c5e045da767d78baf76babefbc2
