[INFO] cloning repository https://github.com/sunjay/wolf-asm
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sunjay/wolf-asm" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsunjay%2Fwolf-asm", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsunjay%2Fwolf-asm'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4493c526be181f3c6e89dd14e879632a10c4d29e
[INFO] testing sunjay/wolf-asm against 1.98.0-beta.1 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsunjay%2Fwolf-asm" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-1-tc2/source/rust-toolchain
[INFO] started tweaking git repo https://github.com/sunjay/wolf-asm
[INFO] finished tweaking git repo https://github.com/sunjay/wolf-asm
[INFO] tweaked toml for git repo https://github.com/sunjay/wolf-asm written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/sunjay/wolf-asm on toolchain 1.98.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/sunjay/wolf-asm 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.98.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 510047bbef09594892bd948377b38e4ad543a6ddf9891b9baa3cd105e798ee73
[INFO] running `Command { std: "docker" "start" "510047bbef09594892bd948377b38e4ad543a6ddf9891b9baa3cd105e798ee73", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "510047bbef09594892bd948377b38e4ad543a6ddf9891b9baa3cd105e798ee73", 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" "510047bbef09594892bd948377b38e4ad543a6ddf9891b9baa3cd105e798ee73" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "510047bbef09594892bd948377b38e4ad543a6ddf9891b9baa3cd105e798ee73", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "510047bbef09594892bd948377b38e4ad543a6ddf9891b9baa3cd105e798ee73" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.18
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling syn v1.0.30
[INFO] [stderr]    Compiling version_check v0.9.2
[INFO] [stderr]    Compiling libc v0.2.71
[INFO] [stderr]    Compiling unicode-width v0.1.7
[INFO] [stderr]    Compiling byteorder v1.3.4
[INFO] [stderr]    Compiling unicode-segmentation v1.6.0
[INFO] [stderr]    Compiling serde v1.0.111
[INFO] [stderr]    Compiling instant v0.1.4
[INFO] [stderr]    Compiling smallvec v1.4.0
[INFO] [stderr]    Compiling lock_api v0.4.0
[INFO] [stderr]    Compiling termcolor v1.1.0
[INFO] [stderr]    Compiling anyhow v1.0.31
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.2
[INFO] [stderr]    Compiling proc-macro-error v1.0.2
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]    Compiling quote v1.0.6
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling parking_lot_core v0.8.0
[INFO] [stderr]    Compiling clap v2.33.1
[INFO] [stderr]    Compiling parking_lot v0.11.0
[INFO] [stderr]    Compiling syn-mid v0.5.0
[INFO] [stderr]    Compiling serde_derive v1.0.111
[INFO] [stderr]    Compiling thiserror-impl v1.0.19
[INFO] [stderr]    Compiling structopt-derive v0.4.7
[INFO] [stderr]    Compiling thiserror v1.0.19
[INFO] [stderr]    Compiling structopt v0.3.14
[INFO] [stderr]    Compiling bincode v1.3.1
[INFO] [stderr]    Compiling wolf-asm v0.1.0 (/opt/rustwide/workdir/asm)
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> asm/src/parser.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `Token` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> asm/src/parser.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub use token::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> asm/src/parser.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout]    = note: `#[warn(hidden_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> asm/src/parser.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `TokenKind` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> asm/src/parser.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub use token::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> asm/src/parser.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> asm/src/parser.rs:17:31
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                               ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `Keyword` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> asm/src/parser.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub use token::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> asm/src/parser.rs:17:31
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> asm/src/parser.rs:17:40
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                                        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `LitKind` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> asm/src/parser.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub use token::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> asm/src/parser.rs:17:40
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> asm/src/parser.rs:462:14
[INFO] [stdout]     |
[INFO] [stdout] 462 | fn tk(input: Input, kind: TokenKind) -> ParseResult<&Token> {
[INFO] [stdout]     |              ^^^^^                      ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |              |                          |           |
[INFO] [stdout]     |              |                          |           the same lifetime is elided here
[INFO] [stdout]     |              |                          the same lifetime is hidden here
[INFO] [stdout]     |              the lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 462 | fn tk(input: Input<'_>, kind: TokenKind) -> ParseResult<'_, &Token> {
[INFO] [stdout]     |                   ++++                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> asm/src/parser.rs:475:19
[INFO] [stdout]     |
[INFO] [stdout] 475 | fn advance(input: Input) -> (Input, &Token) {
[INFO] [stdout]     |                   ^^^^^      ^^^^^  ^^^^^^ the same lifetime is elided here
[INFO] [stdout]     |                   |          |
[INFO] [stdout]     |                   |          the same lifetime is hidden here
[INFO] [stdout]     |                   the lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 475 | fn advance(input: Input<'_>) -> (Input<'_>, &Token) {
[INFO] [stdout]     |                        ++++           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> asm/src/parser/source_files.rs:184:16
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn pos(&self, span: Span) -> FilePos {
[INFO] [stdout]     |                ^^^^^                 ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn pos(&self, span: Span) -> FilePos<'_> {
[INFO] [stdout]     |                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> asm/src/parser/source_files.rs:199:19
[INFO] [stdout]     |
[INFO] [stdout] 199 |     pub fn source(&self, handle: FileHandle) -> FileSource {
[INFO] [stdout]     |                   ^^^^^                         ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 199 |     pub fn source(&self, handle: FileHandle) -> FileSource<'_> {
[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]   --> asm/src/asm/layout.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_InstrLayout`
[INFO] [stdout] 12 | pub struct InstrLayout {
[INFO] [stdout]    |            ----------- `InstrLayout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/asm/layout.rs:11:46
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_InstrLayout`
[INFO] [stdout] 12 | pub struct InstrLayout {
[INFO] [stdout]    |            ----------- `InstrLayout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:125:39
[INFO] [stdout]     |
[INFO] [stdout] 125 |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                       ^--------
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       `Serialize` is not local
[INFO] [stdout]     |                                       move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Layout`
[INFO] [stdout] 126 |     pub enum Layout {
[INFO] [stdout]     |              ------ `Layout` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:125:50
[INFO] [stdout]     |
[INFO] [stdout] 125 |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                  ^----------
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  `Deserialize` is not local
[INFO] [stdout]     |                                                  move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Layout`
[INFO] [stdout] 126 |     pub enum Layout {
[INFO] [stdout]     |              ------ `Layout` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L1`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] 127 | |         #[opcode_offset = 0]
[INFO] [stdout] 128 | |         L1(struct L1(r1: Reg, r2: Reg)),
[INFO] [stdout]     | |                   -- `L1` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L1`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] 127 | |         #[opcode_offset = 0]
[INFO] [stdout] 128 | |         L1(struct L1(r1: Reg, r2: Reg)),
[INFO] [stdout]     | |                   -- `L1` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L2`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 130 | |         L2(struct L2(r: Reg, im: Imm<S46>)),
[INFO] [stdout]     | |                   -- `L2` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L2`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 130 | |         L2(struct L2(r: Reg, im: Imm<S46>)),
[INFO] [stdout]     | |                   -- `L2` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L3`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 132 | |         L3(struct L3(im: Imm<S46>, r: Reg)),
[INFO] [stdout]     | |                   -- `L3` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L3`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 132 | |         L3(struct L3(im: Imm<S46>, r: Reg)),
[INFO] [stdout]     | |                   -- `L3` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L4`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 134 | |         L4(struct L4(r1: Reg, r2: Reg, off: Offset)),
[INFO] [stdout]     | |                   -- `L4` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L4`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 134 | |         L4(struct L4(r1: Reg, r2: Reg, off: Offset)),
[INFO] [stdout]     | |                   -- `L4` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L5`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 136 | |         L5(struct L5(r: Reg, off: Offset, im: Imm<S30>)),
[INFO] [stdout]     | |                   -- `L5` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L5`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 136 | |         L5(struct L5(r: Reg, off: Offset, im: Imm<S30>)),
[INFO] [stdout]     | |                   -- `L5` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L6`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 138 | |         L6(struct L6(im1: Imm<S26>, im2: Imm<S26>)),
[INFO] [stdout]     | |                   -- `L6` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L6`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 138 | |         L6(struct L6(im1: Imm<S26>, im2: Imm<S26>)),
[INFO] [stdout]     | |                   -- `L6` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L7`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 140 | |         L7(struct L7(r1: Reg, r2: Reg, r3: Reg)),
[INFO] [stdout]     | |                   -- `L7` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L7`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 140 | |         L7(struct L7(r1: Reg, r2: Reg, r3: Reg)),
[INFO] [stdout]     | |                   -- `L7` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L8`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 142 | |         L8(struct L8(r1: Reg, r2: Reg, im: Imm<S40>)),
[INFO] [stdout]     | |                   -- `L8` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L8`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 142 | |         L8(struct L8(r1: Reg, r2: Reg, im: Imm<S40>)),
[INFO] [stdout]     | |                   -- `L8` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L9`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 144 | |         L9(struct L9(r: Reg)),
[INFO] [stdout]     | |                   -- `L9` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L9`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 144 | |         L9(struct L9(r: Reg)),
[INFO] [stdout]     | |                   -- `L9` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L10`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 146 | |         L10(struct L10(im: Imm<S52>)),
[INFO] [stdout]     | |                    --- `L10` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L10`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 146 | |         L10(struct L10(im: Imm<S52>)),
[INFO] [stdout]     | |                    --- `L10` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L11`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 148 | |         L11(struct L11(r: Reg, off: Offset)),
[INFO] [stdout]     | |                    --- `L11` is not local
[INFO] [stdout] 149 | |     }
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L11`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 148 | |         L11(struct L11(r: Reg, off: Offset)),
[INFO] [stdout]     | |                    --- `L11` is not local
[INFO] [stdout] 149 | |     }
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:445:51
[INFO] [stdout]     |
[INFO] [stdout] 445 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                   ^--------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   `Serialize` is not local
[INFO] [stdout]     |                                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Reg`
[INFO] [stdout] 446 | pub struct Reg(#[serde(deserialize_with = "validate_reg")] u8);
[INFO] [stdout]     |            --- `Reg` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:445:62
[INFO] [stdout]     |
[INFO] [stdout] 445 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                              ^----------
[INFO] [stdout]     |                                                              |
[INFO] [stdout]     |                                                              `Deserialize` is not local
[INFO] [stdout]     |                                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Reg`
[INFO] [stdout] 446 | pub struct Reg(#[serde(deserialize_with = "validate_reg")] u8);
[INFO] [stdout]     |            --- `Reg` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:516:51
[INFO] [stdout]     |
[INFO] [stdout] 516 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                   ^--------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   `Serialize` is not local
[INFO] [stdout]     |                                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Imm`
[INFO] [stdout] 517 | pub struct Imm<S>(i128, PhantomData<S>);
[INFO] [stdout]     |            --- `Imm` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:516:62
[INFO] [stdout]     |
[INFO] [stdout] 516 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                              ^----------
[INFO] [stdout]     |                                                              |
[INFO] [stdout]     |                                                              `Deserialize` is not local
[INFO] [stdout]     |                                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Imm`
[INFO] [stdout] 517 | pub struct Imm<S>(i128, PhantomData<S>);
[INFO] [stdout]     |            --- `Imm` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:602:51
[INFO] [stdout]     |
[INFO] [stdout] 602 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                   ^--------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   `Serialize` is not local
[INFO] [stdout]     |                                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Offset`
[INFO] [stdout] 603 | pub struct Offset(i16);
[INFO] [stdout]     |            ------ `Offset` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:602:62
[INFO] [stdout]     |
[INFO] [stdout] 602 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                              ^----------
[INFO] [stdout]     |                                                              |
[INFO] [stdout]     |                                                              `Deserialize` is not local
[INFO] [stdout]     |                                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Offset`
[INFO] [stdout] 603 | pub struct Offset(i16);
[INFO] [stdout]     |            ------ `Offset` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:679:55
[INFO] [stdout]     |
[INFO] [stdout] 679 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^--------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Serialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_S52`
[INFO] [stdout] 680 |     pub struct S52(52);
[INFO] [stdout]     |                --- `S52` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:679:66
[INFO] [stdout]     |
[INFO] [stdout] 679 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                                  ^----------
[INFO] [stdout]     |                                                                  |
[INFO] [stdout]     |                                                                  `Deserialize` is not local
[INFO] [stdout]     |                                                                  move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_S52`
[INFO] [stdout] 680 |     pub struct S52(52);
[INFO] [stdout]     |                --- `S52` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:682:55
[INFO] [stdout]     |
[INFO] [stdout] 682 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^--------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Serialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_S46`
[INFO] [stdout] 683 |     pub struct S46(46);
[INFO] [stdout]     |                --- `S46` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:682:66
[INFO] [stdout]     |
[INFO] [stdout] 682 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                                  ^----------
[INFO] [stdout]     |                                                                  |
[INFO] [stdout]     |                                                                  `Deserialize` is not local
[INFO] [stdout]     |                                                                  move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_S46`
[INFO] [stdout] 683 |     pub struct S46(46);
[INFO] [stdout]     |                --- `S46` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:685:55
[INFO] [stdout]     |
[INFO] [stdout] 685 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^--------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Serialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_S40`
[INFO] [stdout] 686 |     pub struct S40(40);
[INFO] [stdout]     |                --- `S40` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:685:66
[INFO] [stdout]     |
[INFO] [stdout] 685 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                                  ^----------
[INFO] [stdout]     |                                                                  |
[INFO] [stdout]     |                                                                  `Deserialize` is not local
[INFO] [stdout]     |                                                                  move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_S40`
[INFO] [stdout] 686 |     pub struct S40(40);
[INFO] [stdout]     |                --- `S40` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:688:55
[INFO] [stdout]     |
[INFO] [stdout] 688 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^--------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Serialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_S30`
[INFO] [stdout] 689 |     pub struct S30(30);
[INFO] [stdout]     |                --- `S30` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:688:66
[INFO] [stdout]     |
[INFO] [stdout] 688 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                                  ^----------
[INFO] [stdout]     |                                                                  |
[INFO] [stdout]     |                                                                  `Deserialize` is not local
[INFO] [stdout]     |                                                                  move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_S30`
[INFO] [stdout] 689 |     pub struct S30(30);
[INFO] [stdout]     |                --- `S30` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:691:55
[INFO] [stdout]     |
[INFO] [stdout] 691 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^--------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Serialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_S26`
[INFO] [stdout] 692 |     pub struct S26(26);
[INFO] [stdout]     |                --- `S26` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:691:66
[INFO] [stdout]     |
[INFO] [stdout] 691 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                                  ^----------
[INFO] [stdout]     |                                                                  |
[INFO] [stdout]     |                                                                  `Deserialize` is not local
[INFO] [stdout]     |                                                                  move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_S26`
[INFO] [stdout] 692 |     pub struct S26(26);
[INFO] [stdout]     |                --- `S26` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> asm/src/executable.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Executable`
[INFO] [stdout] 12 | pub struct Executable {
[INFO] [stdout]    |            ---------- `Executable` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/executable.rs:11:46
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Executable`
[INFO] [stdout] 12 | pub struct Executable {
[INFO] [stdout]    |            ---------- `Executable` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> asm/src/executable/binary_format.rs:9:35
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Stmt`
[INFO] [stdout] 10 | pub enum Stmt {
[INFO] [stdout]    |          ---- `Stmt` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/executable/binary_format.rs:9:46
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Stmt`
[INFO] [stdout] 10 | pub enum Stmt {
[INFO] [stdout]    |          ---- `Stmt` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> asm/src/executable/binary_format.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_StaticData`
[INFO] [stdout] 16 | pub enum StaticData {
[INFO] [stdout]    |          ---------- `StaticData` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/executable/binary_format.rs:15:46
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_StaticData`
[INFO] [stdout] 16 | pub enum StaticData {
[INFO] [stdout]    |          ---------- `StaticData` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> asm/src/executable/binary_format.rs:38:35
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_StaticBytes`
[INFO] [stdout] 39 | pub enum StaticBytes {
[INFO] [stdout]    |          ----------- `StaticBytes` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/executable/binary_format.rs:38:46
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_StaticBytes`
[INFO] [stdout] 39 | pub enum StaticBytes {
[INFO] [stdout]    |          ----------- `StaticBytes` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> asm/src/executable/binary_format.rs:59:35
[INFO] [stdout]    |
[INFO] [stdout] 59 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_StaticZero`
[INFO] [stdout] 60 | pub struct StaticZero {
[INFO] [stdout]    |            ---------- `StaticZero` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/executable/binary_format.rs:59:46
[INFO] [stdout]    |
[INFO] [stdout] 59 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_StaticZero`
[INFO] [stdout] 60 | pub struct StaticZero {
[INFO] [stdout]    |            ---------- `StaticZero` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> asm/src/executable/binary_format.rs:74:35
[INFO] [stdout]    |
[INFO] [stdout] 74 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_StaticUninit`
[INFO] [stdout] 75 | pub struct StaticUninit {
[INFO] [stdout]    |            ------------ `StaticUninit` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/executable/binary_format.rs:74:46
[INFO] [stdout]    |
[INFO] [stdout] 74 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_StaticUninit`
[INFO] [stdout] 75 | pub struct StaticUninit {
[INFO] [stdout]    |            ------------ `StaticUninit` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> asm/src/executable/binary_format.rs:89:35
[INFO] [stdout]    |
[INFO] [stdout] 89 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_StaticByteStr`
[INFO] [stdout] 90 | pub struct StaticByteStr {
[INFO] [stdout]    |            ------------- `StaticByteStr` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/executable/binary_format.rs:89:46
[INFO] [stdout]    |
[INFO] [stdout] 89 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_StaticByteStr`
[INFO] [stdout] 90 | pub struct StaticByteStr {
[INFO] [stdout]    |            ------------- `StaticByteStr` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling wolf-vm v0.1.0 (/opt/rustwide/workdir/vm)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.96s
[INFO] running `Command { std: "docker" "inspect" "510047bbef09594892bd948377b38e4ad543a6ddf9891b9baa3cd105e798ee73", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "510047bbef09594892bd948377b38e4ad543a6ddf9891b9baa3cd105e798ee73" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling rayon-core v1.7.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.8
[INFO] [stderr]    Compiling num_cpus v1.13.0
[INFO] [stderr]    Compiling either v1.5.3
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> asm/src/parser.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `Token` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> asm/src/parser.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub use token::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> asm/src/parser.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout]    = note: `#[warn(hidden_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> asm/src/parser.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `TokenKind` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> asm/src/parser.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub use token::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> asm/src/parser.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> asm/src/parser.rs:17:31
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                               ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `Keyword` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> asm/src/parser.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub use token::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> asm/src/parser.rs:17:31
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> asm/src/parser.rs:17:40
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                                        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `LitKind` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> asm/src/parser.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub use token::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> asm/src/parser.rs:17:40
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> asm/src/parser.rs:462:14
[INFO] [stdout]     |
[INFO] [stdout] 462 | fn tk(input: Input, kind: TokenKind) -> ParseResult<&Token> {
[INFO] [stdout]     |              ^^^^^                      ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |              |                          |           |
[INFO] [stdout]     |              |                          |           the same lifetime is elided here
[INFO] [stdout]     |              |                          the same lifetime is hidden here
[INFO] [stdout]     |              the lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 462 | fn tk(input: Input<'_>, kind: TokenKind) -> ParseResult<'_, &Token> {
[INFO] [stdout]     |                   ++++                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> asm/src/parser.rs:475:19
[INFO] [stdout]     |
[INFO] [stdout] 475 | fn advance(input: Input) -> (Input, &Token) {
[INFO] [stdout]     |                   ^^^^^      ^^^^^  ^^^^^^ the same lifetime is elided here
[INFO] [stdout]     |                   |          |
[INFO] [stdout]     |                   |          the same lifetime is hidden here
[INFO] [stdout]     |                   the lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 475 | fn advance(input: Input<'_>) -> (Input<'_>, &Token) {
[INFO] [stdout]     |                        ++++           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> asm/src/parser/source_files.rs:184:16
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn pos(&self, span: Span) -> FilePos {
[INFO] [stdout]     |                ^^^^^                 ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn pos(&self, span: Span) -> FilePos<'_> {
[INFO] [stdout]     |                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> asm/src/parser/source_files.rs:199:19
[INFO] [stdout]     |
[INFO] [stdout] 199 |     pub fn source(&self, handle: FileHandle) -> FileSource {
[INFO] [stdout]     |                   ^^^^^                         ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 199 |     pub fn source(&self, handle: FileHandle) -> FileSource<'_> {
[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]   --> asm/src/asm/layout.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_InstrLayout`
[INFO] [stdout] 12 | pub struct InstrLayout {
[INFO] [stdout]    |            ----------- `InstrLayout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/asm/layout.rs:11:46
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_InstrLayout`
[INFO] [stdout] 12 | pub struct InstrLayout {
[INFO] [stdout]    |            ----------- `InstrLayout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:125:39
[INFO] [stdout]     |
[INFO] [stdout] 125 |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                       ^--------
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       `Serialize` is not local
[INFO] [stdout]     |                                       move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Layout`
[INFO] [stdout] 126 |     pub enum Layout {
[INFO] [stdout]     |              ------ `Layout` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:125:50
[INFO] [stdout]     |
[INFO] [stdout] 125 |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                  ^----------
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  `Deserialize` is not local
[INFO] [stdout]     |                                                  move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Layout`
[INFO] [stdout] 126 |     pub enum Layout {
[INFO] [stdout]     |              ------ `Layout` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L1`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] 127 | |         #[opcode_offset = 0]
[INFO] [stdout] 128 | |         L1(struct L1(r1: Reg, r2: Reg)),
[INFO] [stdout]     | |                   -- `L1` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L1`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] 127 | |         #[opcode_offset = 0]
[INFO] [stdout] 128 | |         L1(struct L1(r1: Reg, r2: Reg)),
[INFO] [stdout]     | |                   -- `L1` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L2`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 130 | |         L2(struct L2(r: Reg, im: Imm<S46>)),
[INFO] [stdout]     | |                   -- `L2` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L2`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 130 | |         L2(struct L2(r: Reg, im: Imm<S46>)),
[INFO] [stdout]     | |                   -- `L2` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L3`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 132 | |         L3(struct L3(im: Imm<S46>, r: Reg)),
[INFO] [stdout]     | |                   -- `L3` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L3`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 132 | |         L3(struct L3(im: Imm<S46>, r: Reg)),
[INFO] [stdout]     | |                   -- `L3` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L4`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 134 | |         L4(struct L4(r1: Reg, r2: Reg, off: Offset)),
[INFO] [stdout]     | |                   -- `L4` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L4`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 134 | |         L4(struct L4(r1: Reg, r2: Reg, off: Offset)),
[INFO] [stdout]     | |                   -- `L4` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L5`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 136 | |         L5(struct L5(r: Reg, off: Offset, im: Imm<S30>)),
[INFO] [stdout]     | |                   -- `L5` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L5`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 136 | |         L5(struct L5(r: Reg, off: Offset, im: Imm<S30>)),
[INFO] [stdout]     | |                   -- `L5` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L6`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 138 | |         L6(struct L6(im1: Imm<S26>, im2: Imm<S26>)),
[INFO] [stdout]     | |                   -- `L6` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L6`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 138 | |         L6(struct L6(im1: Imm<S26>, im2: Imm<S26>)),
[INFO] [stdout]     | |                   -- `L6` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L7`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 140 | |         L7(struct L7(r1: Reg, r2: Reg, r3: Reg)),
[INFO] [stdout]     | |                   -- `L7` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L7`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 140 | |         L7(struct L7(r1: Reg, r2: Reg, r3: Reg)),
[INFO] [stdout]     | |                   -- `L7` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L8`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 142 | |         L8(struct L8(r1: Reg, r2: Reg, im: Imm<S40>)),
[INFO] [stdout]     | |                   -- `L8` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L8`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 142 | |         L8(struct L8(r1: Reg, r2: Reg, im: Imm<S40>)),
[INFO] [stdout]     | |                   -- `L8` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L9`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 144 | |         L9(struct L9(r: Reg)),
[INFO] [stdout]     | |                   -- `L9` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L9`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 144 | |         L9(struct L9(r: Reg)),
[INFO] [stdout]     | |                   -- `L9` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L10`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 146 | |         L10(struct L10(im: Imm<S52>)),
[INFO] [stdout]     | |                    --- `L10` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L10`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 146 | |         L10(struct L10(im: Imm<S52>)),
[INFO] [stdout]     | |                    --- `L10` is not local
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:47
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                 ^--------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `Serialize` is not local
[INFO] [stdout]     |                                                 move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_L11`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 148 | |         L11(struct L11(r: Reg, off: Offset)),
[INFO] [stdout]     | |                    --- `L11` is not local
[INFO] [stdout] 149 | |     }
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:74:58
[INFO] [stdout]     |
[INFO] [stdout]  74 |               #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]     |                                                            ^----------
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_L11`
[INFO] [stdout] ...
[INFO] [stdout] 123 | / layout! {
[INFO] [stdout] 124 | |     /// Each supported layout for the `arguments` section of an instruction
[INFO] [stdout] 125 | |     #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout] 126 | |     pub enum Layout {
[INFO] [stdout] ...   |
[INFO] [stdout] 148 | |         L11(struct L11(r: Reg, off: Offset)),
[INFO] [stdout]     | |                    --- `L11` is not local
[INFO] [stdout] 149 | |     }
[INFO] [stdout] 150 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` which comes from the expansion of the macro `layout` (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]    --> asm/src/asm/layout.rs:445:51
[INFO] [stdout]     |
[INFO] [stdout] 445 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                   ^--------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   `Serialize` is not local
[INFO] [stdout]     |                                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Reg`
[INFO] [stdout] 446 | pub struct Reg(#[serde(deserialize_with = "validate_reg")] u8);
[INFO] [stdout]     |            --- `Reg` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:445:62
[INFO] [stdout]     |
[INFO] [stdout] 445 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                              ^----------
[INFO] [stdout]     |                                                              |
[INFO] [stdout]     |                                                              `Deserialize` is not local
[INFO] [stdout]     |                                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Reg`
[INFO] [stdout] 446 | pub struct Reg(#[serde(deserialize_with = "validate_reg")] u8);
[INFO] [stdout]     |            --- `Reg` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:516:51
[INFO] [stdout]     |
[INFO] [stdout] 516 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                   ^--------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   `Serialize` is not local
[INFO] [stdout]     |                                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Imm`
[INFO] [stdout] 517 | pub struct Imm<S>(i128, PhantomData<S>);
[INFO] [stdout]     |            --- `Imm` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:516:62
[INFO] [stdout]     |
[INFO] [stdout] 516 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                              ^----------
[INFO] [stdout]     |                                                              |
[INFO] [stdout]     |                                                              `Deserialize` is not local
[INFO] [stdout]     |                                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Imm`
[INFO] [stdout] 517 | pub struct Imm<S>(i128, PhantomData<S>);
[INFO] [stdout]     |            --- `Imm` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:602:51
[INFO] [stdout]     |
[INFO] [stdout] 602 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                   ^--------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   `Serialize` is not local
[INFO] [stdout]     |                                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Offset`
[INFO] [stdout] 603 | pub struct Offset(i16);
[INFO] [stdout]     |            ------ `Offset` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:602:62
[INFO] [stdout]     |
[INFO] [stdout] 602 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                              ^----------
[INFO] [stdout]     |                                                              |
[INFO] [stdout]     |                                                              `Deserialize` is not local
[INFO] [stdout]     |                                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Offset`
[INFO] [stdout] 603 | pub struct Offset(i16);
[INFO] [stdout]     |            ------ `Offset` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:679:55
[INFO] [stdout]     |
[INFO] [stdout] 679 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^--------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Serialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_S52`
[INFO] [stdout] 680 |     pub struct S52(52);
[INFO] [stdout]     |                --- `S52` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:679:66
[INFO] [stdout]     |
[INFO] [stdout] 679 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                                  ^----------
[INFO] [stdout]     |                                                                  |
[INFO] [stdout]     |                                                                  `Deserialize` is not local
[INFO] [stdout]     |                                                                  move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_S52`
[INFO] [stdout] 680 |     pub struct S52(52);
[INFO] [stdout]     |                --- `S52` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:682:55
[INFO] [stdout]     |
[INFO] [stdout] 682 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^--------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Serialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_S46`
[INFO] [stdout] 683 |     pub struct S46(46);
[INFO] [stdout]     |                --- `S46` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:682:66
[INFO] [stdout]     |
[INFO] [stdout] 682 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                                  ^----------
[INFO] [stdout]     |                                                                  |
[INFO] [stdout]     |                                                                  `Deserialize` is not local
[INFO] [stdout]     |                                                                  move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_S46`
[INFO] [stdout] 683 |     pub struct S46(46);
[INFO] [stdout]     |                --- `S46` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:685:55
[INFO] [stdout]     |
[INFO] [stdout] 685 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^--------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Serialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_S40`
[INFO] [stdout] 686 |     pub struct S40(40);
[INFO] [stdout]     |                --- `S40` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:685:66
[INFO] [stdout]     |
[INFO] [stdout] 685 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                                  ^----------
[INFO] [stdout]     |                                                                  |
[INFO] [stdout]     |                                                                  `Deserialize` is not local
[INFO] [stdout]     |                                                                  move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_S40`
[INFO] [stdout] 686 |     pub struct S40(40);
[INFO] [stdout]     |                --- `S40` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:688:55
[INFO] [stdout]     |
[INFO] [stdout] 688 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^--------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Serialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_S30`
[INFO] [stdout] 689 |     pub struct S30(30);
[INFO] [stdout]     |                --- `S30` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:688:66
[INFO] [stdout]     |
[INFO] [stdout] 688 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                                  ^----------
[INFO] [stdout]     |                                                                  |
[INFO] [stdout]     |                                                                  `Deserialize` is not local
[INFO] [stdout]     |                                                                  move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_S30`
[INFO] [stdout] 689 |     pub struct S30(30);
[INFO] [stdout]     |                --- `S30` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]    --> asm/src/asm/layout.rs:691:55
[INFO] [stdout]     |
[INFO] [stdout] 691 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^--------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Serialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_S26`
[INFO] [stdout] 692 |     pub struct S26(26);
[INFO] [stdout]     |                --- `S26` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]    --> asm/src/asm/layout.rs:691:66
[INFO] [stdout]     |
[INFO] [stdout] 691 |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]     |                                                                  ^----------
[INFO] [stdout]     |                                                                  |
[INFO] [stdout]     |                                                                  `Deserialize` is not local
[INFO] [stdout]     |                                                                  move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_S26`
[INFO] [stdout] 692 |     pub struct S26(26);
[INFO] [stdout]     |                --- `S26` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> asm/src/executable.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Executable`
[INFO] [stdout] 12 | pub struct Executable {
[INFO] [stdout]    |            ---------- `Executable` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/executable.rs:11:46
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Executable`
[INFO] [stdout] 12 | pub struct Executable {
[INFO] [stdout]    |            ---------- `Executable` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> asm/src/executable/binary_format.rs:9:35
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Stmt`
[INFO] [stdout] 10 | pub enum Stmt {
[INFO] [stdout]    |          ---- `Stmt` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/executable/binary_format.rs:9:46
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Stmt`
[INFO] [stdout] 10 | pub enum Stmt {
[INFO] [stdout]    |          ---- `Stmt` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> asm/src/executable/binary_format.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_StaticData`
[INFO] [stdout] 16 | pub enum StaticData {
[INFO] [stdout]    |          ---------- `StaticData` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/executable/binary_format.rs:15:46
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_StaticData`
[INFO] [stdout] 16 | pub enum StaticData {
[INFO] [stdout]    |          ---------- `StaticData` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> asm/src/executable/binary_format.rs:38:35
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_StaticBytes`
[INFO] [stdout] 39 | pub enum StaticBytes {
[INFO] [stdout]    |          ----------- `StaticBytes` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/executable/binary_format.rs:38:46
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_StaticBytes`
[INFO] [stdout] 39 | pub enum StaticBytes {
[INFO] [stdout]    |          ----------- `StaticBytes` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> asm/src/executable/binary_format.rs:59:35
[INFO] [stdout]    |
[INFO] [stdout] 59 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_StaticZero`
[INFO] [stdout] 60 | pub struct StaticZero {
[INFO] [stdout]    |            ---------- `StaticZero` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/executable/binary_format.rs:59:46
[INFO] [stdout]    |
[INFO] [stdout] 59 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_StaticZero`
[INFO] [stdout] 60 | pub struct StaticZero {
[INFO] [stdout]    |            ---------- `StaticZero` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> asm/src/executable/binary_format.rs:74:35
[INFO] [stdout]    |
[INFO] [stdout] 74 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_StaticUninit`
[INFO] [stdout] 75 | pub struct StaticUninit {
[INFO] [stdout]    |            ------------ `StaticUninit` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/executable/binary_format.rs:74:46
[INFO] [stdout]    |
[INFO] [stdout] 74 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_StaticUninit`
[INFO] [stdout] 75 | pub struct StaticUninit {
[INFO] [stdout]    |            ------------ `StaticUninit` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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]   --> asm/src/executable/binary_format.rs:89:35
[INFO] [stdout]    |
[INFO] [stdout] 89 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Serialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_StaticByteStr`
[INFO] [stdout] 90 | pub struct StaticByteStr {
[INFO] [stdout]    |            ------------- `StaticByteStr` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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]   --> asm/src/executable/binary_format.rs:89:46
[INFO] [stdout]    |
[INFO] [stdout] 89 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                              ^----------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Deserialize` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_StaticByteStr`
[INFO] [stdout] 90 | pub struct StaticByteStr {
[INFO] [stdout]    |            ------------- `StaticByteStr` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling memoffset v0.5.4
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling rayon v1.3.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling crossbeam-queue v0.2.3
[INFO] [stderr]    Compiling crossbeam-deque v0.7.3
[INFO] [stderr]    Compiling tempfile v3.1.0
[INFO] [stderr]    Compiling wolf-asm v0.1.0 (/opt/rustwide/workdir/asm)
[INFO] [stderr]    Compiling wolf-vm v0.1.0 (/opt/rustwide/workdir/vm)
[INFO] [stdout] error[E0659]: `Keyword` is ambiguous
[INFO] [stdout]    --> asm/src/parser/lexer.rs:560:24
[INFO] [stdout]     |
[INFO] [stdout] 560 |             t!(Keyword(Keyword::$kw))
[INFO] [stdout]     |                        ^^^^^^^ ambiguous name
[INFO] [stdout] ...
[INFO] [stdout] 635 |         expect_token!(b"section", kw!(Section));
[INFO] [stdout]     |                                   ------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: ambiguous because of multiple glob imports of a name in the same module
[INFO] [stdout] note: `Keyword` could refer to the enum imported here
[INFO] [stdout]    --> asm/src/parser/lexer.rs:7:26
[INFO] [stdout]     |
[INFO] [stdout]   7 | use super::token::{self, *};
[INFO] [stdout]     |                          ^
[INFO] [stdout]     = help: consider adding an explicit import of `Keyword` to disambiguate
[INFO] [stdout] note: `Keyword` could also refer to the variant imported here
[INFO] [stdout]    --> asm/src/parser/lexer.rs:9:5
[INFO] [stdout]     |
[INFO] [stdout]   9 | use TokenKind::*;
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     = help: consider adding an explicit import of `Keyword` to disambiguate
[INFO] [stdout]     = note: this error originates in the macro `kw` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> asm/src/parser.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `Token` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> asm/src/parser.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub use token::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> asm/src/parser.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout]    = note: `#[warn(hidden_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> asm/src/parser.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `TokenKind` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> asm/src/parser.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub use token::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> asm/src/parser.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> asm/src/parser.rs:17:31
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                               ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `Keyword` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> asm/src/parser.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub use token::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> asm/src/parser.rs:17:31
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> asm/src/parser.rs:17:40
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                                        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `LitKind` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> asm/src/parser.rs:9:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub use token::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> asm/src/parser.rs:17:40
[INFO] [stdout]    |
[INFO] [stdout] 17 | use token::{Token, TokenKind, Keyword, LitKind};
[INFO] [stdout]    |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0659`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `wolf-asm` (lib test) due to 1 previous error; 4 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "510047bbef09594892bd948377b38e4ad543a6ddf9891b9baa3cd105e798ee73", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "510047bbef09594892bd948377b38e4ad543a6ddf9891b9baa3cd105e798ee73", kill_on_drop: false }`
[INFO] [stdout] 510047bbef09594892bd948377b38e4ad543a6ddf9891b9baa3cd105e798ee73
