[INFO] cloning repository https://github.com/juhracode/firecracker
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/juhracode/firecracker" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjuhracode%2Ffirecracker", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjuhracode%2Ffirecracker'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 75e7c65cd2018b49ceb710159b2309acffe76959
[INFO] testing juhracode/firecracker against try#bd7d74411512a3dd3b35d2f699c51dd2557c7e7e+cargoflags=-Zbuild-dir-new-layout for pr-149852-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjuhracode%2Ffirecracker" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-0-tc2/source/.cargo/config
[INFO] removed /workspace/builds/worker-0-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/juhracode/firecracker
[INFO] finished tweaking git repo https://github.com/juhracode/firecracker
[INFO] tweaked toml for git repo https://github.com/juhracode/firecracker written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/juhracode/firecracker on toolchain bd7d74411512a3dd3b35d2f699c51dd2557c7e7e
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/juhracode/firecracker 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" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr] warning: unused field in patch for `kvm-bindings`: `features`
[INFO] [stderr]   |
[INFO] [stderr]   = help: configure `features` in the `dependencies` entry
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 46561b381b1cc09e82ec4fbde377c536b98eb33c998b58ad8b9c8369a0c3db71
[INFO] running `Command { std: "docker" "start" "-a" "46561b381b1cc09e82ec4fbde377c536b98eb33c998b58ad8b9c8369a0c3db71", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "46561b381b1cc09e82ec4fbde377c536b98eb33c998b58ad8b9c8369a0c3db71", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "46561b381b1cc09e82ec4fbde377c536b98eb33c998b58ad8b9c8369a0c3db71", kill_on_drop: false }`
[INFO] [stdout] 46561b381b1cc09e82ec4fbde377c536b98eb33c998b58ad8b9c8369a0c3db71
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "build" "--frozen" "--message-format=json" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] 036d707faf7995713f186f23afa92f00a91ed66d40967843e9220825cdee0012
[INFO] running `Command { std: "docker" "start" "-a" "036d707faf7995713f186f23afa92f00a91ed66d40967843e9220825cdee0012", kill_on_drop: false }`
[INFO] [stderr] warning: unused field in patch for `kvm-bindings`: `features`
[INFO] [stderr]   |
[INFO] [stderr]   = help: configure `features` in the `dependencies` entry
[INFO] [stderr]    Compiling proc-macro2 v1.0.76
[INFO] [stderr]    Compiling libc v0.2.152
[INFO] [stderr]    Compiling serde v1.0.195
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]    Compiling serde_json v1.0.111
[INFO] [stderr]    Compiling memchr v2.7.1
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling bitflags v2.4.1
[INFO] [stderr]    Compiling bindgen v0.68.1
[INFO] [stderr]    Compiling libloading v0.8.1
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling shlex v1.2.0
[INFO] [stderr]    Compiling dunce v1.0.4
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling peeking_take_while v0.1.2
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling cpufeatures v0.2.12
[INFO] [stderr]    Compiling io-lifetimes v1.0.11
[INFO] [stderr]    Compiling subtle v2.5.0
[INFO] [stderr]    Compiling itoa v1.0.10
[INFO] [stderr]    Compiling rustix v0.38.28
[INFO] [stderr]    Compiling semver v1.0.21
[INFO] [stderr]    Compiling clang-sys v1.7.0
[INFO] [stderr]    Compiling rustix v0.37.27
[INFO] [stderr]    Compiling opaque-debug v0.3.0
[INFO] [stderr]    Compiling ryu v1.0.16
[INFO] [stderr]    Compiling utf8parse v0.2.1
[INFO] [stderr]    Compiling kvm-ioctls v0.16.0
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling aws-lc-rs v1.5.2
[INFO] [stderr]    Compiling linux-raw-sys v0.3.8
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling linux-raw-sys v0.4.12
[INFO] [stderr]    Compiling micro_http v0.1.0 (https://github.com/firecracker-microvm/micro-http#e75dfa1e)
[INFO] [stderr]    Compiling anstyle-parse v0.2.3
[INFO] [stderr]    Compiling crc64 v2.0.0
[INFO] [stderr]    Compiling mirai-annotations v1.12.0
[INFO] [stderr]    Compiling colorchoice v1.0.0
[INFO] [stderr]    Compiling anstyle-query v1.0.2
[INFO] [stderr]    Compiling untrusted v0.7.1
[INFO] [stderr]    Compiling anstyle v1.0.4
[INFO] [stderr]    Compiling zeroize v1.7.0
[INFO] [stderr]    Compiling clap_lex v0.6.0
[INFO] [stderr]    Compiling vm-superio v0.7.0
[INFO] [stderr]    Compiling base64 v0.21.7
[INFO] [stderr]    Compiling smallvec v1.12.0
[INFO] [stderr]    Compiling anstream v0.6.7
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling vmm-sys-util v0.12.1
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]    Compiling clap_builder v4.4.17
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling itertools v0.12.0
[INFO] [stderr]    Compiling walkdir v2.4.0
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling inout v0.1.3
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling polyval v0.6.1
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling aes v0.8.3
[INFO] [stderr]    Compiling ghash v0.5.0
[INFO] [stderr]    Compiling cmake v0.1.50
[INFO] [stderr]    Compiling regex-automata v0.4.3
[INFO] [stderr]    Compiling nix v0.27.1
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling aws-lc-sys v0.12.1
[INFO] [stderr]    Compiling aes-gcm v0.10.3
[INFO] [stderr]    Compiling memfd v0.6.4
[INFO] [stderr]    Compiling timerfd v1.5.0
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]    Compiling regex v1.10.2
[INFO] [stderr]    Compiling serde_derive v1.0.195
[INFO] [stderr]    Compiling thiserror-impl v1.0.56
[INFO] [stderr]    Compiling displaydoc v0.2.4
[INFO] [stderr]    Compiling clap_derive v4.4.7
[INFO] [stderr]    Compiling thiserror v1.0.56
[INFO] [stderr]    Compiling vm-memory v0.13.1
[INFO] [stderr]    Compiling vm-memory v0.14.0
[INFO] [stderr]    Compiling vm-allocator v0.1.0
[INFO] [stderr]    Compiling linux-loader v0.10.0
[INFO] [stderr]    Compiling clap v4.4.17
[INFO] [stderr]    Compiling clippy-tracing v0.1.0 (/opt/rustwide/workdir/src/clippy-tracing)
[INFO] [stderr]    Compiling userfaultfd-sys v0.5.0
[INFO] [stderr]    Compiling userfaultfd v0.7.0
[INFO] [stderr]    Compiling utils v0.1.0 (/opt/rustwide/workdir/src/utils)
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/arg_parser.rs:15:50
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 16 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/utils/src/arg_parser.rs:79:22
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn arguments(&self) -> &Arguments {
[INFO] [stdout]    |                      ^^^^^     ^^^^^^^^^^
[INFO] [stdout]    |                      |         ||
[INFO] [stdout]    |                      |         |the same lifetime is hidden here
[INFO] [stdout]    |                      |         the same lifetime is elided here
[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]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn arguments(&self) -> &Arguments<'_> {
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/kernel_version.rs:9:35
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/validators.rs:9:50
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling serde-big-array v0.5.1
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]    Compiling seccompiler v1.7.0-dev (/opt/rustwide/workdir/src/seccompiler)
[INFO] [stderr]    Compiling snapshot v0.1.0 (/opt/rustwide/workdir/src/snapshot)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/snapshot/src/lib.rs:47:35
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 48 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling kvm-bindings v0.7.0 (https://github.com/firecracker-microvm/kvm-bindings?tag=v0.7.0-2#60cc04e2)
[INFO] [stderr]    Compiling vhost v0.10.0
[INFO] [stderr]    Compiling event-manager v0.4.0
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/arg_parser.rs:15:50
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 16 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/utils/src/arg_parser.rs:79:22
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn arguments(&self) -> &Arguments {
[INFO] [stdout]    |                      ^^^^^     ^^^^^^^^^^
[INFO] [stdout]    |                      |         ||
[INFO] [stdout]    |                      |         |the same lifetime is hidden here
[INFO] [stdout]    |                      |         the same lifetime is elided here
[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]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn arguments(&self) -> &Arguments<'_> {
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/kernel_version.rs:9:35
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/validators.rs:9:50
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/lib.rs:40:35
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeserializationError`
[INFO] [stdout] 41 | pub enum DeserializationError {
[INFO] [stdout]    |          -------------------- `DeserializationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/lib.rs:47:50
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_InstallationError`
[INFO] [stdout] 48 | pub enum InstallationError {
[INFO] [stdout]    |          ----------------- `InstallationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/backend.rs:98:46
[INFO] [stdout]    |
[INFO] [stdout] 98 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_FilterError`
[INFO] [stdout] 99 | pub enum FilterError {
[INFO] [stdout]    |          ----------- `FilterError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/seccompiler/src/backend.rs:123:46
[INFO] [stdout]     |
[INFO] [stdout] 123 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                              ^------------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              `Display` is not local
[INFO] [stdout]     |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_TargetArchError`
[INFO] [stdout] 124 | pub enum TargetArchError {
[INFO] [stdout]     |          --------------- `TargetArchError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/compiler.rs:35:46
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_CompilationError`
[INFO] [stdout] 36 | pub enum CompilationError {
[INFO] [stdout]    |          ---------------- `CompilationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rebase-snap v1.7.0-dev (/opt/rustwide/workdir/src/rebase-snap)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/rebase-snap/src/main.rs:19:35
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FileError`
[INFO] [stdout] 20 | enum FileError {
[INFO] [stdout]    |      --------- `FileError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/rebase-snap/src/main.rs:37:35
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RebaseSnapError`
[INFO] [stdout] 38 | enum RebaseSnapError {
[INFO] [stdout]    |      --------------- `RebaseSnapError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/lib.rs:40:35
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeserializationError`
[INFO] [stdout] 41 | pub enum DeserializationError {
[INFO] [stdout]    |          -------------------- `DeserializationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/lib.rs:47:50
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_InstallationError`
[INFO] [stdout] 48 | pub enum InstallationError {
[INFO] [stdout]    |          ----------------- `InstallationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/backend.rs:98:46
[INFO] [stdout]    |
[INFO] [stdout] 98 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_FilterError`
[INFO] [stdout] 99 | pub enum FilterError {
[INFO] [stdout]    |          ----------- `FilterError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/seccompiler/src/backend.rs:123:46
[INFO] [stdout]     |
[INFO] [stdout] 123 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                              ^------------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              `Display` is not local
[INFO] [stdout]     |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_TargetArchError`
[INFO] [stdout] 124 | pub enum TargetArchError {
[INFO] [stdout]     |          --------------- `TargetArchError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/compiler.rs:35:46
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_CompilationError`
[INFO] [stdout] 36 | pub enum CompilationError {
[INFO] [stdout]    |          ---------------- `CompilationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling firecracker v1.7.0-dev (/opt/rustwide/workdir/src/firecracker)
[INFO] [stderr] warning: firecracker@1.7.0-dev: No default seccomp policy for target: x86_64-unknown-linux-gnu. Defaulting to `resources/seccomp/unimplemented.json`.
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/seccompiler/src/seccompiler_bin.rs:162:35
[INFO] [stdout]     |
[INFO] [stdout] 162 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SeccompilerError`
[INFO] [stdout] 163 | enum SeccompilerError {
[INFO] [stdout]     |      ---------------- `SeccompilerError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/backend.rs:98:46
[INFO] [stdout]    |
[INFO] [stdout] 98 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_FilterError`
[INFO] [stdout] 99 | pub enum FilterError {
[INFO] [stdout]    |          ----------- `FilterError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/seccompiler/src/backend.rs:123:46
[INFO] [stdout]     |
[INFO] [stdout] 123 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                              ^------------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              `Display` is not local
[INFO] [stdout]     |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_TargetArchError`
[INFO] [stdout] 124 | pub enum TargetArchError {
[INFO] [stdout]     |          --------------- `TargetArchError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/compiler.rs:35:46
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_CompilationError`
[INFO] [stdout] 36 | pub enum CompilationError {
[INFO] [stdout]    |          ---------------- `CompilationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling vmm v0.1.0 (/opt/rustwide/workdir/src/vmm)
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]   --> src/vmm/src/rate_limiter/mod.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[cfg_attr(kani, kani::requires(x > 0 && y > 0))]
[INFO] [stdout]    |            ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]   --> src/vmm/src/rate_limiter/mod.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[cfg_attr(kani, kani::ensures(
[INFO] [stdout]    |            ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]    --> src/vmm/src/rate_limiter/mod.rs:531:7
[INFO] [stdout]     |
[INFO] [stdout] 531 | #[cfg(kani)]
[INFO] [stdout]     |       ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/iovec.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[cfg(kani)]
[INFO] [stdout]    |       ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/iovec.rs:30:11
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[cfg(not(kani))]
[INFO] [stdout]    |           ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]    --> src/vmm/src/devices/virtio/iovec.rs:607:7
[INFO] [stdout]     |
[INFO] [stdout] 607 | #[cfg(kani)]
[INFO] [stdout]     |       ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sockios::*`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/gen/mod.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub use sockios::*;
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::event_handler::*`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/mod.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub use self::event_handler::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]    --> src/vmm/src/devices/virtio/queue.rs:564:7
[INFO] [stdout]     |
[INFO] [stdout] 564 | #[cfg(kani)]
[INFO] [stdout]     |       ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::event_handler::*`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/mod.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub use self::event_handler::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]    --> src/vmm/src/dumbo/pdu/ethernet.rs:240:7
[INFO] [stdout]     |
[INFO] [stdout] 240 | #[cfg(kani)]
[INFO] [stdout]     |       ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/cpu_model.rs:27:19
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let eax = unsafe { host_cpuid(0x1) }.eax;
[INFO] [stdout]    |                   ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/common.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |         unsafe { std::arch::x86_64::__get_cpuid_max(leaf & 0x8000_0000).0 };
[INFO] [stdout]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/mod.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     unsafe { std::arch::x86_64::__cpuid_count(leaf, subleaf) }
[INFO] [stdout]    |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/lib.rs:197:35
[INFO] [stdout]     |
[INFO] [stdout] 197 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VmmError`
[INFO] [stdout] 198 | pub enum VmmError {
[INFO] [stdout]     |          -------- `VmmError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/lib.rs:266:35
[INFO] [stdout]     |
[INFO] [stdout] 266 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EmulateSerialInitError`
[INFO] [stdout] 267 | pub struct EmulateSerialInitError(#[from] std::io::Error);
[INFO] [stdout]     |            ---------------------- `EmulateSerialInitError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/lib.rs:270:35
[INFO] [stdout]     |
[INFO] [stdout] 270 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_StartVcpusError`
[INFO] [stdout] 271 | pub enum StartVcpusError {
[INFO] [stdout]     |          --------------- `StartVcpusError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/lib.rs:279:35
[INFO] [stdout]     |
[INFO] [stdout] 279 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DumpCpuConfigError`
[INFO] [stdout] 280 | pub enum DumpCpuConfigError {
[INFO] [stdout]     |          ------------------ `DumpCpuConfigError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/mod.rs:38:50
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_ConfigurationError`
[INFO] [stdout] 39 | pub enum ConfigurationError {
[INFO] [stdout]    |          ------------------ `ConfigurationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/interrupts.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_InterruptError`
[INFO] [stdout] 14 | pub enum InterruptError {
[INFO] [stdout]    |          -------------- `InterruptError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/mptable.rs:39:50
[INFO] [stdout]    |
[INFO] [stdout] 39 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_MptableError`
[INFO] [stdout] 40 | pub enum MptableError {
[INFO] [stdout]    |          ------------ `MptableError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/msr.rs:16:50
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_MsrError`
[INFO] [stdout] 17 | /// MSR related errors.
[INFO] [stdout] 18 | pub enum MsrError {
[INFO] [stdout]    |          -------- `MsrError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/regs.rs:22:35
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RegsError`
[INFO] [stdout] 23 | pub enum RegsError {
[INFO] [stdout]    |          --------- `RegsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/arch/x86_64/regs.rs:103:35
[INFO] [stdout]     |
[INFO] [stdout] 103 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SetupSpecialRegistersError`
[INFO] [stdout] 104 | pub enum SetupSpecialRegistersError {
[INFO] [stdout]     |          -------------------------- `SetupSpecialRegistersError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/io_uring/mod.rs:34:35
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_IoUringError`
[INFO] [stdout] 35 | /// IoUring Error.
[INFO] [stdout] 36 | pub enum IoUringError {
[INFO] [stdout]    |          ------------ `IoUringError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/io_uring/queue/completion.rs:16:35
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_CQueueError`
[INFO] [stdout] 17 | /// CQueue Error.
[INFO] [stdout] 18 | pub enum CQueueError {
[INFO] [stdout]    |          ----------- `CQueueError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/io_uring/queue/mmap.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MmapError`
[INFO] [stdout] 12 | pub enum MmapError {
[INFO] [stdout]    |          --------- `MmapError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/io_uring/queue/submission.rs:19:35
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SQueueError`
[INFO] [stdout] 20 | /// SQueue Error.
[INFO] [stdout] 21 | pub enum SQueueError {
[INFO] [stdout]    |          ----------- `SQueueError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/rate_limiter/mod.rs:14:35
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 15 | /// Describes the errors that may occur while handling rate limiter events.
[INFO] [stdout] 16 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/builder.rs:68:35
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_StartMicrovmError`
[INFO] [stdout] 69 | pub enum StartMicrovmError {
[INFO] [stdout]    |          ----------------- `StartMicrovmError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/builder.rs:365:35
[INFO] [stdout]     |
[INFO] [stdout] 365 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BuildMicrovmFromSnapshotError`
[INFO] [stdout] 366 | pub enum BuildMicrovmFromSnapshotError {
[INFO] [stdout]     |          ----------------------------- `BuildMicrovmFromSnapshotError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/templates.rs:30:35
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GetCpuTemplateError`
[INFO] [stdout] 31 | pub enum GetCpuTemplateError {
[INFO] [stdout]    |          ------------------- `GetCpuTemplateError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/cpu_config/templates.rs:52:25
[INFO] [stdout]    |
[INFO] [stdout] 52 |     fn get_cpu_template(&self) -> Result<Cow<CustomCpuTemplate>, GetCpuTemplateError>;
[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]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 52 |     fn get_cpu_template(&self) -> Result<Cow<'_, CustomCpuTemplate>, GetCpuTemplateError>;
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/mod.rs:20:50
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_CpuConfigurationError`
[INFO] [stdout] 21 | pub enum CpuConfigurationError {
[INFO] [stdout]    |          --------------------- `CpuConfigurationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/cpu_config/x86_64/cpuid/mod.rs:296:35
[INFO] [stdout]     |
[INFO] [stdout] 296 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_CpuidTryFromKvmCpuid`
[INFO] [stdout] 297 | pub enum CpuidTryFromKvmCpuid {
[INFO] [stdout]     |          -------------------- `CpuidTryFromKvmCpuid` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/vmm/src/cpu_config/x86_64/cpuid/common.rs:6:35
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]   |                                   ^------------------
[INFO] [stdout]   |                                   |
[INFO] [stdout]   |                                   `Display` is not local
[INFO] [stdout]   |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GetCpuidError`
[INFO] [stdout] 7 | pub enum GetCpuidError {
[INFO] [stdout]   |          ------------- `GetCpuidError` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NormalizeCpuidError`
[INFO] [stdout] 16 | pub enum NormalizeCpuidError {
[INFO] [stdout]    |          ------------------- `NormalizeCpuidError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:38:35
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_PassthroughCacheTopologyError`
[INFO] [stdout] 39 | pub enum PassthroughCacheTopologyError {
[INFO] [stdout]    |          ----------------------------- `PassthroughCacheTopologyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:47:35
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FeatureEntryError`
[INFO] [stdout] 48 | pub enum FeatureEntryError {
[INFO] [stdout]    |          ----------------- `FeatureEntryError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedCacheTopologyError`
[INFO] [stdout] 59 | pub enum ExtendedCacheTopologyError {
[INFO] [stdout]    |          -------------------------- `ExtendedCacheTopologyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:69:35
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedApicIdError`
[INFO] [stdout] 70 | pub enum ExtendedApicIdError {
[INFO] [stdout]    |          ------------------- `ExtendedApicIdError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/intel/normalize.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NormalizeCpuidError`
[INFO] [stdout] 14 | pub enum NormalizeCpuidError {
[INFO] [stdout]    |          ------------------- `NormalizeCpuidError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/intel/normalize.rs:35:35
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeterministicCacheError`
[INFO] [stdout] 36 | pub enum DeterministicCacheError {
[INFO] [stdout]    |          ----------------------- `DeterministicCacheError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/cpu_config/x86_64/cpuid/intel/normalize.rs:231:50
[INFO] [stdout]     |
[INFO] [stdout] 231 | #[derive(Debug, Eq, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                                  ^------------------
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  `Display` is not local
[INFO] [stdout]     |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_DefaultBrandStringError`
[INFO] [stdout] 232 | pub enum DefaultBrandStringError {
[INFO] [stdout]     |          ----------------------- `DefaultBrandStringError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:10:35
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NormalizeCpuidError`
[INFO] [stdout] 11 | pub enum NormalizeCpuidError {
[INFO] [stdout]    |          ------------------- `NormalizeCpuidError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:29:35
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VendorIdError`
[INFO] [stdout] 30 | pub enum VendorIdError {
[INFO] [stdout]    |          ------------- `VendorIdError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:36:35
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FeatureInformationError`
[INFO] [stdout] 37 | pub enum FeatureInformationError {
[INFO] [stdout]    |          ----------------------- `FeatureInformationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:51:35
[INFO] [stdout]    |
[INFO] [stdout] 51 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GetMaxCpusPerPackageError`
[INFO] [stdout] 52 | pub enum GetMaxCpusPerPackageError {
[INFO] [stdout]    |          ------------------------- `GetMaxCpusPerPackageError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:61:35
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedTopologyError`
[INFO] [stdout] 62 | pub enum ExtendedTopologyError {
[INFO] [stdout]    |          --------------------- `ExtendedTopologyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:76:35
[INFO] [stdout]    |
[INFO] [stdout] 76 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedCacheFeaturesError`
[INFO] [stdout] 77 | pub enum ExtendedCacheFeaturesError {
[INFO] [stdout]    |          -------------------------- `ExtendedCacheFeaturesError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/custom_cpu_template.rs:22:25
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn get_cpu_template(&self) -> Result<Cow<CustomCpuTemplate>, GetCpuTemplateError> {
[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] 22 |     fn get_cpu_template(&self) -> Result<Cow<'_, CustomCpuTemplate>, GetCpuTemplateError> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/device_manager/legacy.rs:22:54
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Debug, derive_more::From, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                      ^------------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `Display` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_DERIVE_Display_FOR_LegacyDeviceError`
[INFO] [stdout] 23 | pub enum LegacyDeviceError {
[INFO] [stdout]    |          ----------------- `LegacyDeviceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/device_manager/mmio.rs:38:35
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MmioError`
[INFO] [stdout] 39 | pub enum MmioError {
[INFO] [stdout]    |          --------- `MmioError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/device_manager/persist.rs:53:35
[INFO] [stdout]    |
[INFO] [stdout] 53 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DevicePersistError`
[INFO] [stdout] 54 | pub enum DevicePersistError {
[INFO] [stdout]    |          ------------------ `DevicePersistError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/mod.rs:34:35
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeviceError`
[INFO] [stdout] 35 | pub enum DeviceError {
[INFO] [stdout]    |          ----------- `DeviceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/bus.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BusError`
[INFO] [stdout] 16 | pub enum BusError {
[INFO] [stdout]    |          -------- `BusError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/legacy/i8042.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_I8042Error`
[INFO] [stdout] 19 | pub enum I8042Error {
[INFO] [stdout]    |          ---------- `I8042Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/legacy/serial.rs:63:35
[INFO] [stdout]    |
[INFO] [stdout] 63 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RawIOError`
[INFO] [stdout] 64 | pub enum RawIOError {
[INFO] [stdout]    |          ---------- `RawIOError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/mod.rs:63:35
[INFO] [stdout]    |
[INFO] [stdout] 63 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ActivateError`
[INFO] [stdout] 64 | pub enum ActivateError {
[INFO] [stdout]    |          ------------- `ActivateError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/balloon/mod.rs:69:35
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BalloonError`
[INFO] [stdout] 70 | pub enum BalloonError {
[INFO] [stdout]    |          ------------ `BalloonError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/devices/virtio/balloon/mod.rs:103:35
[INFO] [stdout]     |
[INFO] [stdout] 103 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RemoveRegionError`
[INFO] [stdout] 104 | pub enum RemoveRegionError {
[INFO] [stdout]     |          ----------------- `RemoveRegionError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/iovec.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_IoVecError`
[INFO] [stdout] 16 | pub enum IoVecError {
[INFO] [stdout]    |          ---------- `IoVecError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/devices/virtio/mmio.rs:86:26
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn locked_device(&self) -> MutexGuard<dyn VirtioDevice + 'static> {
[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] 86 |     pub fn locked_device(&self) -> MutexGuard<'_, dyn VirtioDevice + 'static> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/mod.rs:44:35
[INFO] [stdout]    |
[INFO] [stdout] 44 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NetError`
[INFO] [stdout] 45 | pub enum NetError {
[INFO] [stdout]    |          -------- `NetError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/device.rs:49:35
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FrontendError`
[INFO] [stdout] 50 | enum FrontendError {
[INFO] [stdout]    |      ------------- `FrontendError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/persist.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NetPersistError`
[INFO] [stdout] 59 | pub enum NetPersistError {
[INFO] [stdout]    |          --------------- `NetPersistError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/tap.rs:28:35
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_TapError`
[INFO] [stdout] 29 | pub enum TapError {
[INFO] [stdout]    |          -------- `TapError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/vmm/src/devices/virtio/net/test_utils.rs:254:24
[INFO] [stdout]     |
[INFO] [stdout] 254 | pub fn virtqueues(mem: &GuestMemoryMmap) -> (VirtQueue, VirtQueue) {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^      ^^^^^^^^^  ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |                     |
[INFO] [stdout]     |                        |                     the same lifetime is hidden here
[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] 254 | pub fn virtqueues(mem: &GuestMemoryMmap) -> (VirtQueue<'_>, VirtQueue<'_>) {
[INFO] [stdout]     |                                                       ++++           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/persist.rs:20:35
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_PersistError`
[INFO] [stdout] 21 | pub enum PersistError {
[INFO] [stdout]    |          ------------ `PersistError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/queue.rs:31:35
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_QueueError`
[INFO] [stdout] 32 | pub enum QueueError {
[INFO] [stdout]    |          ---------- `QueueError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/rng/device.rs:26:35
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EntropyError`
[INFO] [stdout] 27 | pub enum EntropyError {
[INFO] [stdout]    |          ------------ `EntropyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/rng/persist.rs:32:35
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EntropyPersistError`
[INFO] [stdout] 33 | pub enum EntropyPersistError {
[INFO] [stdout]    |          ------------------- `EntropyPersistError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/vhost_user.rs:21:35
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VhostUserError`
[INFO] [stdout] 22 | pub enum VhostUserError {
[INFO] [stdout]    |          -------------- `VhostUserError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/vhost_user_block/mod.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VhostUserBlockError`
[INFO] [stdout] 19 | pub enum VhostUserBlockError {
[INFO] [stdout]    |          ------------------- `VhostUserBlockError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/mod.rs:37:35
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VirtioBlockError`
[INFO] [stdout] 38 | pub enum VirtioBlockError {
[INFO] [stdout]    |          ---------------- `VirtioBlockError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/io/mod.rs:27:35
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BlockIoError`
[INFO] [stdout] 28 | pub enum BlockIoError {
[INFO] [stdout]    |          ------------ `BlockIoError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/io/async_io.rs:21:35
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_AsyncIoError`
[INFO] [stdout] 22 | pub enum AsyncIoError {
[INFO] [stdout]    |          ------------ `AsyncIoError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/io/sync_io.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SyncIoError`
[INFO] [stdout] 12 | pub enum SyncIoError {
[INFO] [stdout]    |          ----------- `SyncIoError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/devices/virtio/vsock/mod.rs:109:35
[INFO] [stdout]     |
[INFO] [stdout] 109 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VsockError`
[INFO] [stdout] 110 | #[rustfmt::skip]
[INFO] [stdout] 111 | pub enum VsockError {
[INFO] [stdout]     |          ---------- `VsockError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/vsock/csm/mod.rs:26:35
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VsockCsmError`
[INFO] [stdout] 27 | pub enum VsockCsmError {
[INFO] [stdout]    |          ------------- `VsockCsmError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/vsock/unix/mod.rs:30:35
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VsockUnixBackendError`
[INFO] [stdout] 31 | pub enum VsockUnixBackendError {
[INFO] [stdout]    |          --------------------- `VsockUnixBackendError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/arp.rs:48:50
[INFO] [stdout]    |
[INFO] [stdout] 48 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 49 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/ethernet.rs:30:50
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 31 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/ipv4.rs:42:50
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 43 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/tcp.rs:76:50
[INFO] [stdout]    |
[INFO] [stdout] 76 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 77 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/udp.rs:32:50
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 33 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/tcp/connection.rs:85:50
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_PassiveOpenError`
[INFO] [stdout] 86 | pub enum PassiveOpenError {
[INFO] [stdout]    |          ---------------- `PassiveOpenError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/tcp/connection.rs:94:50
[INFO] [stdout]    |
[INFO] [stdout] 94 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_RecvError`
[INFO] [stdout] 95 | pub enum RecvError {
[INFO] [stdout]    |          --------- `RecvError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/dumbo/tcp/connection.rs:105:50
[INFO] [stdout]     |
[INFO] [stdout] 105 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                                  ^------------------
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  `Display` is not local
[INFO] [stdout]     |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_WriteNextError`
[INFO] [stdout] 106 | pub enum WriteNextError {
[INFO] [stdout]     |          -------------- `WriteNextError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/tcp/handler.rs:60:50
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_RecvError`
[INFO] [stdout] 61 | pub enum RecvError {
[INFO] [stdout]    |          --------- `RecvError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/tcp/handler.rs:73:50
[INFO] [stdout]    |
[INFO] [stdout] 73 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_WriteNextError`
[INFO] [stdout] 74 | pub enum WriteNextError {
[INFO] [stdout]    |          -------------- `WriteNextError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/logger/metrics.rs:184:35
[INFO] [stdout]     |
[INFO] [stdout] 184 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MetricsError`
[INFO] [stdout] 185 | pub enum MetricsError {
[INFO] [stdout]     |          ------------ `MetricsError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/vmm/src/logger/metrics.rs:757:35
[INFO] [stdout]     |
[INFO] [stdout] 757 |     pub fn record_latency_metrics(&self) -> LatencyMetricsRecorder {
[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] 757 |     pub fn record_latency_metrics(&self) -> LatencyMetricsRecorder<'_> {
[INFO] [stdout]     |                                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/mod.rs:27:35
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 28 | /// MMDS token errors
[INFO] [stdout] 29 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/data_store.rs:50:35
[INFO] [stdout]    |
[INFO] [stdout] 50 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 51 | /// MMDS data store errors
[INFO] [stdout] 52 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/ns.rs:39:46
[INFO] [stdout]    |
[INFO] [stdout] 39 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_WriteArpFrameError`
[INFO] [stdout] 40 | enum WriteArpFrameError {
[INFO] [stdout]    |      ------------------ `WriteArpFrameError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/ns.rs:49:46
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_WritePacketError`
[INFO] [stdout] 50 | enum WritePacketError {
[INFO] [stdout]    |      ---------------- `WritePacketError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/token.rs:49:35
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 50 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:105:35
[INFO] [stdout]     |
[INFO] [stdout] 105 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MicrovmStateError`
[INFO] [stdout] 106 | pub enum MicrovmStateError {
[INFO] [stdout]     |          ----------------- `MicrovmStateError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:131:35
[INFO] [stdout]     |
[INFO] [stdout] 131 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_CreateSnapshotError`
[INFO] [stdout] 132 | pub enum CreateSnapshotError {
[INFO] [stdout]     |          ------------------- `CreateSnapshotError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 330 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SnapShotStateSanityCheckError`
[INFO] [stdout] 331 | pub enum SnapShotStateSanityCheckError {
[INFO] [stdout]     |          ----------------------------- `SnapShotStateSanityCheckError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:365:35
[INFO] [stdout]     |
[INFO] [stdout] 365 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RestoreFromSnapshotError`
[INFO] [stdout] 366 | pub enum RestoreFromSnapshotError {
[INFO] [stdout]     |          ------------------------ `RestoreFromSnapshotError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:378:35
[INFO] [stdout]     |
[INFO] [stdout] 378 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RestoreFromSnapshotGuestMemoryError`
[INFO] [stdout] 379 | pub enum RestoreFromSnapshotGuestMemoryError {
[INFO] [stdout]     |          ----------------------------------- `RestoreFromSnapshotGuestMemoryError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:433:35
[INFO] [stdout]     |
[INFO] [stdout] 433 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SnapshotStateFromFileError`
[INFO] [stdout] 434 | pub enum SnapshotStateFromFileError {
[INFO] [stdout]     |          -------------------------- `SnapshotStateFromFileError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:458:35
[INFO] [stdout]     |
[INFO] [stdout] 458 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GuestMemoryFromFileError`
[INFO] [stdout] 459 | pub enum GuestMemoryFromFileError {
[INFO] [stdout]     |          ------------------------ `GuestMemoryFromFileError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:477:35
[INFO] [stdout]     |
[INFO] [stdout] 477 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GuestMemoryFromUffdError`
[INFO] [stdout] 478 | pub enum GuestMemoryFromUffdError {
[INFO] [stdout]     |          ------------------------ `GuestMemoryFromUffdError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/resources.rs:33:35
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ResourcesError`
[INFO] [stdout] 34 | pub enum ResourcesError {
[INFO] [stdout]    |          -------------- `ResourcesError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/rpc_interface.rs:133:35
[INFO] [stdout]     |
[INFO] [stdout] 133 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VmmActionError`
[INFO] [stdout] 134 | pub enum VmmActionError {
[INFO] [stdout]     |          -------------- `VmmActionError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/rpc_interface.rs:274:35
[INFO] [stdout]     |
[INFO] [stdout] 274 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_LoadSnapshotError`
[INFO] [stdout] 275 | pub enum LoadSnapshotError {
[INFO] [stdout]     |          ----------------- `LoadSnapshotError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/rpc_interface.rs:290:35
[INFO] [stdout]     |
[INFO] [stdout] 290 | #[derive(Debug, thiserror::Error, displaydoc::Display, derive_more::From)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BuildMicrovmFromRequestsError`
[INFO] [stdout] 291 | pub enum BuildMicrovmFromRequestsError {
[INFO] [stdout]     |          ----------------------------- `BuildMicrovmFromRequestsError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/balloon.rs:15:54
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, derive_more::From, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                      ^------------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `Display` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_DERIVE_Display_FOR_BalloonConfigError`
[INFO] [stdout] 16 | pub enum BalloonConfigError {
[INFO] [stdout]    |          ------------------ `BalloonConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/boot_source.rs:37:35
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BootSourceConfigError`
[INFO] [stdout] 38 | pub enum BootSourceConfigError {
[INFO] [stdout]    |          --------------------- `BootSourceConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/drive.rs:20:35
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DriveError`
[INFO] [stdout] 21 | pub enum DriveError {
[INFO] [stdout]    |          ---------- `DriveError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/entropy.rs:32:35
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EntropyDeviceError`
[INFO] [stdout] 33 | pub enum EntropyDeviceError {
[INFO] [stdout]    |          ------------------ `EntropyDeviceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/machine_config.rs:17:35
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VmConfigError`
[INFO] [stdout] 18 | pub enum VmConfigError {
[INFO] [stdout]    |          ------------- `VmConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/metrics.rs:20:35
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MetricsConfigError`
[INFO] [stdout] 21 | pub enum MetricsConfigError {
[INFO] [stdout]    |          ------------------ `MetricsConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/mmds.rs:43:35
[INFO] [stdout]    |
[INFO] [stdout] 43 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MmdsConfigError`
[INFO] [stdout] 44 | pub enum MmdsConfigError {
[INFO] [stdout]    |          --------------- `MmdsConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/net.rs:62:35
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NetworkInterfaceError`
[INFO] [stdout] 63 | pub enum NetworkInterfaceError {
[INFO] [stdout]    |          --------------------- `NetworkInterfaceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/vmm_config/net.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn iter(&self) -> ::std::slice::Iter<Arc<Mutex<Net>>> {
[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] 92 |     pub fn iter(&self) -> ::std::slice::Iter<'_, Arc<Mutex<Net>>> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/vmm_config/net.rs:97:21
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn iter_mut(&mut self) -> ::std::slice::IterMut<Arc<Mutex<Net>>> {
[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] 97 |     pub fn iter_mut(&mut self) -> ::std::slice::IterMut<'_, Arc<Mutex<Net>>> {
[INFO] [stdout]    |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/vsock.rs:14:54
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, derive_more::From, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                      ^------------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `Display` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_DERIVE_Display_FOR_VsockConfigError`
[INFO] [stdout] 15 | pub enum VsockConfigError {
[INFO] [stdout]    |          ---------------- `VsockConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/memory.rs:32:35
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MemoryError`
[INFO] [stdout] 33 | pub enum MemoryError {
[INFO] [stdout]    |          ----------- `MemoryError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/vcpu/mod.rs:47:35
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VcpuError`
[INFO] [stdout] 48 | pub enum VcpuError {
[INFO] [stdout]    |          --------- `VcpuError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/vmm/src/vstate/vcpu/mod.rs:441:20
[INFO] [stdout]     |
[INFO] [stdout] 441 |     pub fn emulate(&self) -> Result<VcpuExit, errno::Error> {
[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] 441 |     pub fn emulate(&self) -> Result<VcpuExit<'_>, errno::Error> {
[INFO] [stdout]     |                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/vcpu/x86_64.rs:36:50
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_KvmVcpuError`
[INFO] [stdout] 37 | pub enum KvmVcpuError {
[INFO] [stdout]    |          ------------ `KvmVcpuError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/vstate/vcpu/x86_64.rs:117:35
[INFO] [stdout]     |
[INFO] [stdout] 117 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_KvmVcpuConfigureError`
[INFO] [stdout] 118 | pub enum KvmVcpuConfigureError {
[INFO] [stdout]     |          --------------------- `KvmVcpuConfigureError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/vm.rs:33:50
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_VmError`
[INFO] [stdout] 34 | pub enum VmError {
[INFO] [stdout]    |          ------- `VmError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/vm.rs:85:35
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RestoreStateError`
[INFO] [stdout] 86 | pub enum RestoreStateError {
[INFO] [stdout]    |          ----------------- `RestoreStateError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling api_server v0.1.0 (/opt/rustwide/workdir/src/api_server)
[INFO] [stdout] warning: unused imports: `HttpServer`, `RequestError`, `Request`, `Response`, and `Version`
[INFO] [stdout]   --> src/api_server/src/request/mod.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 |     Body, HttpServer, Method, Request, RequestError, Response, StatusCode, Version,
[INFO] [stdout]    |           ^^^^^^^^^^          ^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling snapshot-editor v1.7.0-dev (/opt/rustwide/workdir/src/snapshot-editor)
[INFO] [stderr]    Compiling cpu-template-helper v1.7.0-dev (/opt/rustwide/workdir/src/cpu-template-helper)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/snapshot-editor/src/main.rs:17:35
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SnapEditorError`
[INFO] [stdout] 18 | enum SnapEditorError {
[INFO] [stdout]    |      --------------- `SnapEditorError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/snapshot-editor/src/edit_memory.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EditMemoryError`
[INFO] [stdout] 14 | pub enum EditMemoryError {
[INFO] [stdout]    |          --------------- `EditMemoryError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/snapshot-editor/src/info.rs:12:35
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_InfoVmStateError`
[INFO] [stdout] 13 | pub enum InfoVmStateError {
[INFO] [stdout]    |          ---------------- `InfoVmStateError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/snapshot-editor/src/utils.rs:14:35
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_UtilsError`
[INFO] [stdout] 15 | pub enum UtilsError {
[INFO] [stdout]    |          ---------- `UtilsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/firecracker/src/main.rs:43:35
[INFO] [stdout]    |
[INFO] [stdout] 43 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MainError`
[INFO] [stdout] 44 | enum MainError {
[INFO] [stdout]    |      --------- `MainError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/firecracker/src/main.rs:69:35
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ResizeFdTableError`
[INFO] [stdout] 70 | enum ResizeFdTableError {
[INFO] [stdout]    |      ------------------ `ResizeFdTableError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/firecracker/src/main.rs:528:35
[INFO] [stdout]     |
[INFO] [stdout] 528 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SnapshotVersionError`
[INFO] [stdout] 529 | enum SnapshotVersionError {
[INFO] [stdout]     |      -------------------- `SnapshotVersionError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/firecracker/src/main.rs:548:35
[INFO] [stdout]     |
[INFO] [stdout] 548 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BuildFromJsonError`
[INFO] [stdout] 549 | pub enum BuildFromJsonError {
[INFO] [stdout]     |          ------------------ `BuildFromJsonError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/firecracker/src/main.rs:583:35
[INFO] [stdout]     |
[INFO] [stdout] 583 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RunWithoutApiError`
[INFO] [stdout] 584 | enum RunWithoutApiError {
[INFO] [stdout]     |      ------------------ `RunWithoutApiError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/firecracker/src/api_server_adapter.rs:24:35
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ApiServerError`
[INFO] [stdout] 25 | pub enum ApiServerError {
[INFO] [stdout]    |          -------------- `ApiServerError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/firecracker/src/seccomp.rs:20:35
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FilterError`
[INFO] [stdout] 21 | pub enum FilterError {
[INFO] [stdout]    |          ----------- `FilterError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/cpu-template-helper/src/main.rs:16:35
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_HelperError`
[INFO] [stdout] 17 | enum HelperError {
[INFO] [stdout]    |      ----------- `HelperError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/cpu-template-helper/src/fingerprint/compare.rs:8:35
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]   |                                   ^------------------
[INFO] [stdout]   |                                   |
[INFO] [stdout]   |                                   `Display` is not local
[INFO] [stdout]   |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FingerprintCompareError`
[INFO] [stdout] 9 | pub enum FingerprintCompareError {
[INFO] [stdout]   |          ----------------------- `FingerprintCompareError` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/cpu-template-helper/src/fingerprint/dump.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FingerprintDumpError`
[INFO] [stdout] 12 | pub enum FingerprintDumpError {
[INFO] [stdout]    |          -------------------- `FingerprintDumpError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/cpu-template-helper/src/template/dump/mod.rs:19:35
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DumpError`
[INFO] [stdout] 20 | pub enum DumpError {
[INFO] [stdout]    |          --------- `DumpError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/cpu-template-helper/src/template/strip/mod.rs:21:35
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_StripError`
[INFO] [stdout] 22 | pub enum StripError {
[INFO] [stdout]    |          ---------- `StripError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/cpu-template-helper/src/template/verify/mod.rs:21:35
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VerifyError`
[INFO] [stdout] 22 | pub enum VerifyError {
[INFO] [stdout]    |          ----------- `VerifyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/cpu-template-helper/src/utils/mod.rs:61:35
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_UtilsError`
[INFO] [stdout] 62 | pub enum UtilsError {
[INFO] [stdout]    |          ---------- `UtilsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 21s
[INFO] running `Command { std: "docker" "inspect" "036d707faf7995713f186f23afa92f00a91ed66d40967843e9220825cdee0012", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "036d707faf7995713f186f23afa92f00a91ed66d40967843e9220825cdee0012", kill_on_drop: false }`
[INFO] [stdout] 036d707faf7995713f186f23afa92f00a91ed66d40967843e9220825cdee0012
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "test" "--frozen" "--no-run" "--message-format=json" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] 21218b2a4ad25e32592b0d713743df52de18cd27cbb6b8952a7fbcca3591ac59
[INFO] running `Command { std: "docker" "start" "-a" "21218b2a4ad25e32592b0d713743df52de18cd27cbb6b8952a7fbcca3591ac59", kill_on_drop: false }`
[INFO] [stderr] warning: unused field in patch for `kvm-bindings`: `features`
[INFO] [stderr]   |
[INFO] [stderr]   = help: configure `features` in the `dependencies` entry
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling libloading v0.8.1
[INFO] [stderr]    Compiling libc v0.2.152
[INFO] [stderr]    Compiling bitflags v2.4.1
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling inout v0.1.3
[INFO] [stderr]    Compiling opaque-debug v0.3.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.12
[INFO] [stderr]    Compiling linux-raw-sys v0.3.8
[INFO] [stderr]    Compiling vmm-sys-util v0.12.1
[INFO] [stderr]    Compiling untrusted v0.7.1
[INFO] [stderr]    Compiling crc64 v2.0.0
[INFO] [stderr]    Compiling mirai-annotations v1.12.0
[INFO] [stderr]    Compiling zeroize v1.7.0
[INFO] [stderr]    Compiling smallvec v1.12.0
[INFO] [stderr]    Compiling hashbrown v0.14.3
[INFO] [stderr]    Compiling proc-macro2 v1.0.76
[INFO] [stderr]    Compiling vm-superio v0.7.0
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling winnow v0.5.34
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling clang-sys v1.7.0
[INFO] [stderr]    Compiling polyval v0.6.1
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling anstyle v1.0.4
[INFO] [stderr]    Compiling aes v0.8.3
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling ghash v0.5.0
[INFO] [stderr]    Compiling anstream v0.6.7
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling walkdir v2.4.0
[INFO] [stderr]    Compiling rustix v0.38.28
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling clap_builder v4.4.17
[INFO] [stderr]    Compiling itertools v0.12.0
[INFO] [stderr]    Compiling nix v0.27.1
[INFO] [stderr]    Compiling io-lifetimes v1.0.11
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling rustix v0.37.27
[INFO] [stderr]    Compiling aws-lc-sys v0.12.1
[INFO] [stderr]    Compiling aes-gcm v0.10.3
[INFO] [stderr]    Compiling indexmap v2.1.0
[INFO] [stderr]    Compiling getrandom v0.2.12
[INFO] [stderr]    Compiling uuid v1.6.1
[INFO] [stderr]    Compiling timerfd v1.5.0
[INFO] [stderr]    Compiling regex-automata v0.4.3
[INFO] [stderr]    Compiling aws-lc-rs v1.5.2
[INFO] [stderr]    Compiling memfd v0.6.4
[INFO] [stderr]    Compiling regex v1.10.2
[INFO] [stderr]    Compiling bindgen v0.68.1
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]    Compiling serde_derive v1.0.195
[INFO] [stderr]    Compiling thiserror-impl v1.0.56
[INFO] [stderr]    Compiling displaydoc v0.2.4
[INFO] [stderr]    Compiling clap_derive v4.4.7
[INFO] [stderr]    Compiling thiserror v1.0.56
[INFO] [stderr]    Compiling vm-memory v0.13.1
[INFO] [stderr]    Compiling vm-memory v0.14.0
[INFO] [stderr]    Compiling vm-allocator v0.1.0
[INFO] [stderr]    Compiling linux-loader v0.10.0
[INFO] [stderr]    Compiling clap v4.4.17
[INFO] [stderr]    Compiling clippy-tracing v0.1.0 (/opt/rustwide/workdir/src/clippy-tracing)
[INFO] [stderr]    Compiling serde v1.0.195
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling serde_json v1.0.111
[INFO] [stderr]    Compiling serde-big-array v0.5.1
[INFO] [stderr]    Compiling semver v1.0.21
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]    Compiling toml_datetime v0.6.5
[INFO] [stderr]    Compiling serde_spanned v0.6.5
[INFO] [stderr]    Compiling toml_edit v0.21.0
[INFO] [stderr]    Compiling userfaultfd-sys v0.5.0
[INFO] [stderr]    Compiling snapshot v0.1.0 (/opt/rustwide/workdir/src/snapshot)
[INFO] [stderr]    Compiling utils v0.1.0 (/opt/rustwide/workdir/src/utils)
[INFO] [stderr]    Compiling kvm-bindings v0.7.0 (https://github.com/firecracker-microvm/kvm-bindings?tag=v0.7.0-2#60cc04e2)
[INFO] [stderr]    Compiling micro_http v0.1.0 (https://github.com/firecracker-microvm/micro-http#e75dfa1e)
[INFO] [stderr]    Compiling event-manager v0.4.0
[INFO] [stderr]    Compiling vhost v0.10.0
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/snapshot/src/lib.rs:47:35
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 48 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/arg_parser.rs:15:50
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 16 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/utils/src/arg_parser.rs:79:22
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn arguments(&self) -> &Arguments {
[INFO] [stdout]    |                      ^^^^^     ^^^^^^^^^^
[INFO] [stdout]    |                      |         ||
[INFO] [stdout]    |                      |         |the same lifetime is hidden here
[INFO] [stdout]    |                      |         the same lifetime is elided here
[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]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn arguments(&self) -> &Arguments<'_> {
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/kernel_version.rs:9:35
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/validators.rs:9:50
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/arg_parser.rs:15:50
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 16 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/utils/src/arg_parser.rs:79:22
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn arguments(&self) -> &Arguments {
[INFO] [stdout]    |                      ^^^^^     ^^^^^^^^^^
[INFO] [stdout]    |                      |         ||
[INFO] [stdout]    |                      |         |the same lifetime is hidden here
[INFO] [stdout]    |                      |         the same lifetime is elided here
[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]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn arguments(&self) -> &Arguments<'_> {
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/kernel_version.rs:9:35
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/validators.rs:9:50
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling seccompiler v1.7.0-dev (/opt/rustwide/workdir/src/seccompiler)
[INFO] [stderr]    Compiling rebase-snap v1.7.0-dev (/opt/rustwide/workdir/src/rebase-snap)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/rebase-snap/src/main.rs:19:35
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FileError`
[INFO] [stdout] 20 | enum FileError {
[INFO] [stdout]    |      --------- `FileError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/rebase-snap/src/main.rs:37:35
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RebaseSnapError`
[INFO] [stdout] 38 | enum RebaseSnapError {
[INFO] [stdout]    |      --------------- `RebaseSnapError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/snapshot/src/lib.rs:47:35
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 48 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/lib.rs:40:35
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeserializationError`
[INFO] [stdout] 41 | pub enum DeserializationError {
[INFO] [stdout]    |          -------------------- `DeserializationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/lib.rs:47:50
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_InstallationError`
[INFO] [stdout] 48 | pub enum InstallationError {
[INFO] [stdout]    |          ----------------- `InstallationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/backend.rs:98:46
[INFO] [stdout]    |
[INFO] [stdout] 98 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_FilterError`
[INFO] [stdout] 99 | pub enum FilterError {
[INFO] [stdout]    |          ----------- `FilterError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/seccompiler/src/backend.rs:123:46
[INFO] [stdout]     |
[INFO] [stdout] 123 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                              ^------------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              `Display` is not local
[INFO] [stdout]     |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_TargetArchError`
[INFO] [stdout] 124 | pub enum TargetArchError {
[INFO] [stdout]     |          --------------- `TargetArchError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/compiler.rs:35:46
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_CompilationError`
[INFO] [stdout] 36 | pub enum CompilationError {
[INFO] [stdout]    |          ---------------- `CompilationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/lib.rs:40:35
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeserializationError`
[INFO] [stdout] 41 | pub enum DeserializationError {
[INFO] [stdout]    |          -------------------- `DeserializationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/lib.rs:47:50
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_InstallationError`
[INFO] [stdout] 48 | pub enum InstallationError {
[INFO] [stdout]    |          ----------------- `InstallationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/backend.rs:98:46
[INFO] [stdout]    |
[INFO] [stdout] 98 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_FilterError`
[INFO] [stdout] 99 | pub enum FilterError {
[INFO] [stdout]    |          ----------- `FilterError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/seccompiler/src/backend.rs:123:46
[INFO] [stdout]     |
[INFO] [stdout] 123 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                              ^------------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              `Display` is not local
[INFO] [stdout]     |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_TargetArchError`
[INFO] [stdout] 124 | pub enum TargetArchError {
[INFO] [stdout]     |          --------------- `TargetArchError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/seccompiler/src/backend.rs:872:9
[INFO] [stdout]     |
[INFO] [stdout] 872 | /         pub fn new(
[INFO] [stdout] 873 | |             arg_number: u8,
[INFO] [stdout] 874 | |             arg_len: SeccompCmpArgLen,
[INFO] [stdout] 875 | |             operator: SeccompCmpOp,
[INFO] [stdout] 876 | |             value: u64,
[INFO] [stdout] 877 | |         ) -> Result<Self, FilterError> {
[INFO] [stdout]     | |______________________________________^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/seccompiler/src/lib.rs:4:9
[INFO] [stdout]     |
[INFO] [stdout]   4 | #![warn(missing_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/compiler.rs:35:46
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_CompilationError`
[INFO] [stdout] 36 | pub enum CompilationError {
[INFO] [stdout]    |          ---------------- `CompilationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/seccompiler/src/compiler.rs:261:9
[INFO] [stdout]     |
[INFO] [stdout] 261 | /         pub fn new(
[INFO] [stdout] 262 | |             default_action: SeccompAction,
[INFO] [stdout] 263 | |             filter_action: SeccompAction,
[INFO] [stdout] 264 | |             filter: Vec<SyscallRule>,
[INFO] [stdout] 265 | |         ) -> Filter {
[INFO] [stdout]     | |___________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/seccompiler/src/compiler.rs:275:9
[INFO] [stdout]     |
[INFO] [stdout] 275 |         pub fn new(syscall: String, conditions: Option<Vec<Cond>>) -> SyscallRule {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling userfaultfd v0.7.0
[INFO] [stderr]    Compiling userfaultfd v0.8.1
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/arg_parser.rs:15:50
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 16 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/utils/src/arg_parser.rs:79:22
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn arguments(&self) -> &Arguments {
[INFO] [stdout]    |                      ^^^^^     ^^^^^^^^^^
[INFO] [stdout]    |                      |         ||
[INFO] [stdout]    |                      |         |the same lifetime is hidden here
[INFO] [stdout]    |                      |         the same lifetime is elided here
[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]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn arguments(&self) -> &Arguments<'_> {
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/kernel_version.rs:9:35
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/utils/src/validators.rs:9:50
[INFO] [stdout]    |
[INFO] [stdout]  9 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/lib.rs:40:35
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeserializationError`
[INFO] [stdout] 41 | pub enum DeserializationError {
[INFO] [stdout]    |          -------------------- `DeserializationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/lib.rs:47:50
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_InstallationError`
[INFO] [stdout] 48 | pub enum InstallationError {
[INFO] [stdout]    |          ----------------- `InstallationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/backend.rs:98:46
[INFO] [stdout]    |
[INFO] [stdout] 98 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_FilterError`
[INFO] [stdout] 99 | pub enum FilterError {
[INFO] [stdout]    |          ----------- `FilterError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/seccompiler/src/backend.rs:123:46
[INFO] [stdout]     |
[INFO] [stdout] 123 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                              ^------------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              `Display` is not local
[INFO] [stdout]     |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_TargetArchError`
[INFO] [stdout] 124 | pub enum TargetArchError {
[INFO] [stdout]     |          --------------- `TargetArchError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/compiler.rs:35:46
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_CompilationError`
[INFO] [stdout] 36 | pub enum CompilationError {
[INFO] [stdout]    |          ---------------- `CompilationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling firecracker v1.7.0-dev (/opt/rustwide/workdir/src/firecracker)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/lib.rs:40:35
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeserializationError`
[INFO] [stdout] 41 | pub enum DeserializationError {
[INFO] [stdout]    |          -------------------- `DeserializationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/lib.rs:47:50
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_InstallationError`
[INFO] [stdout] 48 | pub enum InstallationError {
[INFO] [stdout]    |          ----------------- `InstallationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/backend.rs:98:46
[INFO] [stdout]    |
[INFO] [stdout] 98 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_FilterError`
[INFO] [stdout] 99 | pub enum FilterError {
[INFO] [stdout]    |          ----------- `FilterError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/seccompiler/src/backend.rs:123:46
[INFO] [stdout]     |
[INFO] [stdout] 123 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                              ^------------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              `Display` is not local
[INFO] [stdout]     |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_TargetArchError`
[INFO] [stdout] 124 | pub enum TargetArchError {
[INFO] [stdout]     |          --------------- `TargetArchError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/compiler.rs:35:46
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_CompilationError`
[INFO] [stdout] 36 | pub enum CompilationError {
[INFO] [stdout]    |          ---------------- `CompilationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/seccompiler/src/seccompiler_bin.rs:162:35
[INFO] [stdout]     |
[INFO] [stdout] 162 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SeccompilerError`
[INFO] [stdout] 163 | enum SeccompilerError {
[INFO] [stdout]     |      ---------------- `SeccompilerError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/backend.rs:98:46
[INFO] [stdout]    |
[INFO] [stdout] 98 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_FilterError`
[INFO] [stdout] 99 | pub enum FilterError {
[INFO] [stdout]    |          ----------- `FilterError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/seccompiler/src/backend.rs:123:46
[INFO] [stdout]     |
[INFO] [stdout] 123 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                              ^------------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              `Display` is not local
[INFO] [stdout]     |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_TargetArchError`
[INFO] [stdout] 124 | pub enum TargetArchError {
[INFO] [stdout]     |          --------------- `TargetArchError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/seccompiler/src/compiler.rs:35:46
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_CompilationError`
[INFO] [stdout] 36 | pub enum CompilationError {
[INFO] [stdout]    |          ---------------- `CompilationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: firecracker@1.7.0-dev: No default seccomp policy for target: x86_64-unknown-linux-gnu. Defaulting to `resources/seccomp/unimplemented.json`.
[INFO] [stderr]    Compiling toml v0.8.8
[INFO] [stderr]    Compiling cargo_toml v0.18.0
[INFO] [stderr]    Compiling kvm-ioctls v0.16.0
[INFO] [stderr]    Compiling vmm v0.1.0 (/opt/rustwide/workdir/src/vmm)
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]   --> src/vmm/src/rate_limiter/mod.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[cfg_attr(kani, kani::requires(x > 0 && y > 0))]
[INFO] [stdout]    |            ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]   --> src/vmm/src/rate_limiter/mod.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[cfg_attr(kani, kani::ensures(
[INFO] [stdout]    |            ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]    --> src/vmm/src/rate_limiter/mod.rs:531:7
[INFO] [stdout]     |
[INFO] [stdout] 531 | #[cfg(kani)]
[INFO] [stdout]     |       ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/iovec.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[cfg(kani)]
[INFO] [stdout]    |       ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/iovec.rs:30:11
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[cfg(not(kani))]
[INFO] [stdout]    |           ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]    --> src/vmm/src/devices/virtio/iovec.rs:607:7
[INFO] [stdout]     |
[INFO] [stdout] 607 | #[cfg(kani)]
[INFO] [stdout]     |       ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sockios::*`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/gen/mod.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub use sockios::*;
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::event_handler::*`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/mod.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub use self::event_handler::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]    --> src/vmm/src/devices/virtio/queue.rs:564:7
[INFO] [stdout]     |
[INFO] [stdout] 564 | #[cfg(kani)]
[INFO] [stdout]     |       ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::event_handler::*`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/mod.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub use self::event_handler::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]    --> src/vmm/src/dumbo/pdu/ethernet.rs:240:7
[INFO] [stdout]     |
[INFO] [stdout] 240 | #[cfg(kani)]
[INFO] [stdout]     |       ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]   --> src/vmm/src/rate_limiter/mod.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[cfg_attr(kani, kani::requires(x > 0 && y > 0))]
[INFO] [stdout]    |            ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]   --> src/vmm/src/rate_limiter/mod.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[cfg_attr(kani, kani::ensures(
[INFO] [stdout]    |            ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]    --> src/vmm/src/rate_limiter/mod.rs:531:7
[INFO] [stdout]     |
[INFO] [stdout] 531 | #[cfg(kani)]
[INFO] [stdout]     |       ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/iovec.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[cfg(kani)]
[INFO] [stdout]    |       ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/iovec.rs:30:11
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[cfg(not(kani))]
[INFO] [stdout]    |           ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]    --> src/vmm/src/devices/virtio/iovec.rs:607:7
[INFO] [stdout]     |
[INFO] [stdout] 607 | #[cfg(kani)]
[INFO] [stdout]     |       ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sockios::*`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/gen/mod.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub use sockios::*;
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::event_handler::*`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/mod.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub use self::event_handler::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]    --> src/vmm/src/devices/virtio/queue.rs:564:7
[INFO] [stdout]     |
[INFO] [stdout] 564 | #[cfg(kani)]
[INFO] [stdout]     |       ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::event_handler::*`
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/mod.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub use self::event_handler::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `kani`
[INFO] [stdout]    --> src/vmm/src/dumbo/pdu/ethernet.rs:240:7
[INFO] [stdout]     |
[INFO] [stdout] 240 | #[cfg(kani)]
[INFO] [stdout]     |       ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/cpu_model.rs:27:19
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let eax = unsafe { host_cpuid(0x1) }.eax;
[INFO] [stdout]    |                   ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/common.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |         unsafe { std::arch::x86_64::__get_cpuid_max(leaf & 0x8000_0000).0 };
[INFO] [stdout]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/mod.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     unsafe { std::arch::x86_64::__cpuid_count(leaf, subleaf) }
[INFO] [stdout]    |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/cpu_model.rs:27:19
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let eax = unsafe { host_cpuid(0x1) }.eax;
[INFO] [stdout]    |                   ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/common.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |         unsafe { std::arch::x86_64::__get_cpuid_max(leaf & 0x8000_0000).0 };
[INFO] [stdout]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/mod.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     unsafe { std::arch::x86_64::__cpuid_count(leaf, subleaf) }
[INFO] [stdout]    |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/lib.rs:197:35
[INFO] [stdout]     |
[INFO] [stdout] 197 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VmmError`
[INFO] [stdout] 198 | pub enum VmmError {
[INFO] [stdout]     |          -------- `VmmError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/lib.rs:266:35
[INFO] [stdout]     |
[INFO] [stdout] 266 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EmulateSerialInitError`
[INFO] [stdout] 267 | pub struct EmulateSerialInitError(#[from] std::io::Error);
[INFO] [stdout]     |            ---------------------- `EmulateSerialInitError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/lib.rs:270:35
[INFO] [stdout]     |
[INFO] [stdout] 270 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_StartVcpusError`
[INFO] [stdout] 271 | pub enum StartVcpusError {
[INFO] [stdout]     |          --------------- `StartVcpusError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/lib.rs:279:35
[INFO] [stdout]     |
[INFO] [stdout] 279 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DumpCpuConfigError`
[INFO] [stdout] 280 | pub enum DumpCpuConfigError {
[INFO] [stdout]     |          ------------------ `DumpCpuConfigError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/mod.rs:38:50
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_ConfigurationError`
[INFO] [stdout] 39 | pub enum ConfigurationError {
[INFO] [stdout]    |          ------------------ `ConfigurationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/interrupts.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_InterruptError`
[INFO] [stdout] 14 | pub enum InterruptError {
[INFO] [stdout]    |          -------------- `InterruptError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/mptable.rs:39:50
[INFO] [stdout]    |
[INFO] [stdout] 39 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_MptableError`
[INFO] [stdout] 40 | pub enum MptableError {
[INFO] [stdout]    |          ------------ `MptableError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/msr.rs:16:50
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_MsrError`
[INFO] [stdout] 17 | /// MSR related errors.
[INFO] [stdout] 18 | pub enum MsrError {
[INFO] [stdout]    |          -------- `MsrError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/regs.rs:22:35
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RegsError`
[INFO] [stdout] 23 | pub enum RegsError {
[INFO] [stdout]    |          --------- `RegsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/arch/x86_64/regs.rs:103:35
[INFO] [stdout]     |
[INFO] [stdout] 103 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SetupSpecialRegistersError`
[INFO] [stdout] 104 | pub enum SetupSpecialRegistersError {
[INFO] [stdout]     |          -------------------------- `SetupSpecialRegistersError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/io_uring/mod.rs:34:35
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_IoUringError`
[INFO] [stdout] 35 | /// IoUring Error.
[INFO] [stdout] 36 | pub enum IoUringError {
[INFO] [stdout]    |          ------------ `IoUringError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/io_uring/queue/completion.rs:16:35
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_CQueueError`
[INFO] [stdout] 17 | /// CQueue Error.
[INFO] [stdout] 18 | pub enum CQueueError {
[INFO] [stdout]    |          ----------- `CQueueError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/io_uring/queue/mmap.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MmapError`
[INFO] [stdout] 12 | pub enum MmapError {
[INFO] [stdout]    |          --------- `MmapError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/io_uring/queue/submission.rs:19:35
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SQueueError`
[INFO] [stdout] 20 | /// SQueue Error.
[INFO] [stdout] 21 | pub enum SQueueError {
[INFO] [stdout]    |          ----------- `SQueueError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/rate_limiter/mod.rs:14:35
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 15 | /// Describes the errors that may occur while handling rate limiter events.
[INFO] [stdout] 16 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/builder.rs:68:35
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_StartMicrovmError`
[INFO] [stdout] 69 | pub enum StartMicrovmError {
[INFO] [stdout]    |          ----------------- `StartMicrovmError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/builder.rs:365:35
[INFO] [stdout]     |
[INFO] [stdout] 365 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BuildMicrovmFromSnapshotError`
[INFO] [stdout] 366 | pub enum BuildMicrovmFromSnapshotError {
[INFO] [stdout]     |          ----------------------------- `BuildMicrovmFromSnapshotError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/templates.rs:30:35
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GetCpuTemplateError`
[INFO] [stdout] 31 | pub enum GetCpuTemplateError {
[INFO] [stdout]    |          ------------------- `GetCpuTemplateError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/cpu_config/templates.rs:52:25
[INFO] [stdout]    |
[INFO] [stdout] 52 |     fn get_cpu_template(&self) -> Result<Cow<CustomCpuTemplate>, GetCpuTemplateError>;
[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]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 52 |     fn get_cpu_template(&self) -> Result<Cow<'_, CustomCpuTemplate>, GetCpuTemplateError>;
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/mod.rs:20:50
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_CpuConfigurationError`
[INFO] [stdout] 21 | pub enum CpuConfigurationError {
[INFO] [stdout]    |          --------------------- `CpuConfigurationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/cpu_config/x86_64/cpuid/mod.rs:296:35
[INFO] [stdout]     |
[INFO] [stdout] 296 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_CpuidTryFromKvmCpuid`
[INFO] [stdout] 297 | pub enum CpuidTryFromKvmCpuid {
[INFO] [stdout]     |          -------------------- `CpuidTryFromKvmCpuid` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/vmm/src/cpu_config/x86_64/cpuid/common.rs:6:35
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]   |                                   ^------------------
[INFO] [stdout]   |                                   |
[INFO] [stdout]   |                                   `Display` is not local
[INFO] [stdout]   |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GetCpuidError`
[INFO] [stdout] 7 | pub enum GetCpuidError {
[INFO] [stdout]   |          ------------- `GetCpuidError` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NormalizeCpuidError`
[INFO] [stdout] 16 | pub enum NormalizeCpuidError {
[INFO] [stdout]    |          ------------------- `NormalizeCpuidError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:38:35
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_PassthroughCacheTopologyError`
[INFO] [stdout] 39 | pub enum PassthroughCacheTopologyError {
[INFO] [stdout]    |          ----------------------------- `PassthroughCacheTopologyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:47:35
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FeatureEntryError`
[INFO] [stdout] 48 | pub enum FeatureEntryError {
[INFO] [stdout]    |          ----------------- `FeatureEntryError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedCacheTopologyError`
[INFO] [stdout] 59 | pub enum ExtendedCacheTopologyError {
[INFO] [stdout]    |          -------------------------- `ExtendedCacheTopologyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:69:35
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedApicIdError`
[INFO] [stdout] 70 | pub enum ExtendedApicIdError {
[INFO] [stdout]    |          ------------------- `ExtendedApicIdError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/intel/normalize.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NormalizeCpuidError`
[INFO] [stdout] 14 | pub enum NormalizeCpuidError {
[INFO] [stdout]    |          ------------------- `NormalizeCpuidError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/intel/normalize.rs:35:35
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeterministicCacheError`
[INFO] [stdout] 36 | pub enum DeterministicCacheError {
[INFO] [stdout]    |          ----------------------- `DeterministicCacheError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/cpu_config/x86_64/cpuid/intel/normalize.rs:231:50
[INFO] [stdout]     |
[INFO] [stdout] 231 | #[derive(Debug, Eq, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                                  ^------------------
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  `Display` is not local
[INFO] [stdout]     |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_DefaultBrandStringError`
[INFO] [stdout] 232 | pub enum DefaultBrandStringError {
[INFO] [stdout]     |          ----------------------- `DefaultBrandStringError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:10:35
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NormalizeCpuidError`
[INFO] [stdout] 11 | pub enum NormalizeCpuidError {
[INFO] [stdout]    |          ------------------- `NormalizeCpuidError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:29:35
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VendorIdError`
[INFO] [stdout] 30 | pub enum VendorIdError {
[INFO] [stdout]    |          ------------- `VendorIdError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:36:35
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FeatureInformationError`
[INFO] [stdout] 37 | pub enum FeatureInformationError {
[INFO] [stdout]    |          ----------------------- `FeatureInformationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:51:35
[INFO] [stdout]    |
[INFO] [stdout] 51 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GetMaxCpusPerPackageError`
[INFO] [stdout] 52 | pub enum GetMaxCpusPerPackageError {
[INFO] [stdout]    |          ------------------------- `GetMaxCpusPerPackageError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:61:35
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedTopologyError`
[INFO] [stdout] 62 | pub enum ExtendedTopologyError {
[INFO] [stdout]    |          --------------------- `ExtendedTopologyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:76:35
[INFO] [stdout]    |
[INFO] [stdout] 76 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedCacheFeaturesError`
[INFO] [stdout] 77 | pub enum ExtendedCacheFeaturesError {
[INFO] [stdout]    |          -------------------------- `ExtendedCacheFeaturesError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/custom_cpu_template.rs:22:25
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn get_cpu_template(&self) -> Result<Cow<CustomCpuTemplate>, GetCpuTemplateError> {
[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] 22 |     fn get_cpu_template(&self) -> Result<Cow<'_, CustomCpuTemplate>, GetCpuTemplateError> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/device_manager/legacy.rs:22:54
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Debug, derive_more::From, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                      ^------------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `Display` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_DERIVE_Display_FOR_LegacyDeviceError`
[INFO] [stdout] 23 | pub enum LegacyDeviceError {
[INFO] [stdout]    |          ----------------- `LegacyDeviceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/device_manager/mmio.rs:38:35
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MmioError`
[INFO] [stdout] 39 | pub enum MmioError {
[INFO] [stdout]    |          --------- `MmioError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/device_manager/persist.rs:53:35
[INFO] [stdout]    |
[INFO] [stdout] 53 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DevicePersistError`
[INFO] [stdout] 54 | pub enum DevicePersistError {
[INFO] [stdout]    |          ------------------ `DevicePersistError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/mod.rs:34:35
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeviceError`
[INFO] [stdout] 35 | pub enum DeviceError {
[INFO] [stdout]    |          ----------- `DeviceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/bus.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BusError`
[INFO] [stdout] 16 | pub enum BusError {
[INFO] [stdout]    |          -------- `BusError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/legacy/i8042.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_I8042Error`
[INFO] [stdout] 19 | pub enum I8042Error {
[INFO] [stdout]    |          ---------- `I8042Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/legacy/serial.rs:63:35
[INFO] [stdout]    |
[INFO] [stdout] 63 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RawIOError`
[INFO] [stdout] 64 | pub enum RawIOError {
[INFO] [stdout]    |          ---------- `RawIOError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/mod.rs:63:35
[INFO] [stdout]    |
[INFO] [stdout] 63 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ActivateError`
[INFO] [stdout] 64 | pub enum ActivateError {
[INFO] [stdout]    |          ------------- `ActivateError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/balloon/mod.rs:69:35
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BalloonError`
[INFO] [stdout] 70 | pub enum BalloonError {
[INFO] [stdout]    |          ------------ `BalloonError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/devices/virtio/balloon/mod.rs:103:35
[INFO] [stdout]     |
[INFO] [stdout] 103 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RemoveRegionError`
[INFO] [stdout] 104 | pub enum RemoveRegionError {
[INFO] [stdout]     |          ----------------- `RemoveRegionError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/iovec.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_IoVecError`
[INFO] [stdout] 16 | pub enum IoVecError {
[INFO] [stdout]    |          ---------- `IoVecError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/devices/virtio/mmio.rs:86:26
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn locked_device(&self) -> MutexGuard<dyn VirtioDevice + 'static> {
[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] 86 |     pub fn locked_device(&self) -> MutexGuard<'_, dyn VirtioDevice + 'static> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/mod.rs:44:35
[INFO] [stdout]    |
[INFO] [stdout] 44 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NetError`
[INFO] [stdout] 45 | pub enum NetError {
[INFO] [stdout]    |          -------- `NetError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/device.rs:49:35
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FrontendError`
[INFO] [stdout] 50 | enum FrontendError {
[INFO] [stdout]    |      ------------- `FrontendError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/persist.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NetPersistError`
[INFO] [stdout] 59 | pub enum NetPersistError {
[INFO] [stdout]    |          --------------- `NetPersistError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/tap.rs:28:35
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_TapError`
[INFO] [stdout] 29 | pub enum TapError {
[INFO] [stdout]    |          -------- `TapError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/vmm/src/devices/virtio/net/test_utils.rs:254:24
[INFO] [stdout]     |
[INFO] [stdout] 254 | pub fn virtqueues(mem: &GuestMemoryMmap) -> (VirtQueue, VirtQueue) {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^      ^^^^^^^^^  ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |                     |
[INFO] [stdout]     |                        |                     the same lifetime is hidden here
[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] 254 | pub fn virtqueues(mem: &GuestMemoryMmap) -> (VirtQueue<'_>, VirtQueue<'_>) {
[INFO] [stdout]     |                                                       ++++           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/persist.rs:20:35
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_PersistError`
[INFO] [stdout] 21 | pub enum PersistError {
[INFO] [stdout]    |          ------------ `PersistError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/queue.rs:31:35
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_QueueError`
[INFO] [stdout] 32 | pub enum QueueError {
[INFO] [stdout]    |          ---------- `QueueError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/rng/device.rs:26:35
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EntropyError`
[INFO] [stdout] 27 | pub enum EntropyError {
[INFO] [stdout]    |          ------------ `EntropyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/rng/persist.rs:32:35
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EntropyPersistError`
[INFO] [stdout] 33 | pub enum EntropyPersistError {
[INFO] [stdout]    |          ------------------- `EntropyPersistError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/vhost_user.rs:21:35
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VhostUserError`
[INFO] [stdout] 22 | pub enum VhostUserError {
[INFO] [stdout]    |          -------------- `VhostUserError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/vhost_user_block/mod.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VhostUserBlockError`
[INFO] [stdout] 19 | pub enum VhostUserBlockError {
[INFO] [stdout]    |          ------------------- `VhostUserBlockError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/mod.rs:37:35
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VirtioBlockError`
[INFO] [stdout] 38 | pub enum VirtioBlockError {
[INFO] [stdout]    |          ---------------- `VirtioBlockError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/io/mod.rs:27:35
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BlockIoError`
[INFO] [stdout] 28 | pub enum BlockIoError {
[INFO] [stdout]    |          ------------ `BlockIoError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/io/async_io.rs:21:35
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_AsyncIoError`
[INFO] [stdout] 22 | pub enum AsyncIoError {
[INFO] [stdout]    |          ------------ `AsyncIoError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/io/sync_io.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SyncIoError`
[INFO] [stdout] 12 | pub enum SyncIoError {
[INFO] [stdout]    |          ----------- `SyncIoError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/devices/virtio/vsock/mod.rs:109:35
[INFO] [stdout]     |
[INFO] [stdout] 109 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VsockError`
[INFO] [stdout] 110 | #[rustfmt::skip]
[INFO] [stdout] 111 | pub enum VsockError {
[INFO] [stdout]     |          ---------- `VsockError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/vsock/csm/mod.rs:26:35
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VsockCsmError`
[INFO] [stdout] 27 | pub enum VsockCsmError {
[INFO] [stdout]    |          ------------- `VsockCsmError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/vsock/unix/mod.rs:30:35
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VsockUnixBackendError`
[INFO] [stdout] 31 | pub enum VsockUnixBackendError {
[INFO] [stdout]    |          --------------------- `VsockUnixBackendError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/arp.rs:48:50
[INFO] [stdout]    |
[INFO] [stdout] 48 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 49 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/ethernet.rs:30:50
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 31 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/ipv4.rs:42:50
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 43 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/tcp.rs:76:50
[INFO] [stdout]    |
[INFO] [stdout] 76 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 77 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/udp.rs:32:50
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 33 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/tcp/connection.rs:85:50
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_PassiveOpenError`
[INFO] [stdout] 86 | pub enum PassiveOpenError {
[INFO] [stdout]    |          ---------------- `PassiveOpenError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/tcp/connection.rs:94:50
[INFO] [stdout]    |
[INFO] [stdout] 94 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_RecvError`
[INFO] [stdout] 95 | pub enum RecvError {
[INFO] [stdout]    |          --------- `RecvError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/dumbo/tcp/connection.rs:105:50
[INFO] [stdout]     |
[INFO] [stdout] 105 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                                  ^------------------
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  `Display` is not local
[INFO] [stdout]     |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_WriteNextError`
[INFO] [stdout] 106 | pub enum WriteNextError {
[INFO] [stdout]     |          -------------- `WriteNextError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/tcp/handler.rs:60:50
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_RecvError`
[INFO] [stdout] 61 | pub enum RecvError {
[INFO] [stdout]    |          --------- `RecvError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/tcp/handler.rs:73:50
[INFO] [stdout]    |
[INFO] [stdout] 73 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_WriteNextError`
[INFO] [stdout] 74 | pub enum WriteNextError {
[INFO] [stdout]    |          -------------- `WriteNextError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/logger/metrics.rs:184:35
[INFO] [stdout]     |
[INFO] [stdout] 184 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MetricsError`
[INFO] [stdout] 185 | pub enum MetricsError {
[INFO] [stdout]     |          ------------ `MetricsError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/vmm/src/logger/metrics.rs:757:35
[INFO] [stdout]     |
[INFO] [stdout] 757 |     pub fn record_latency_metrics(&self) -> LatencyMetricsRecorder {
[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] 757 |     pub fn record_latency_metrics(&self) -> LatencyMetricsRecorder<'_> {
[INFO] [stdout]     |                                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/mod.rs:27:35
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 28 | /// MMDS token errors
[INFO] [stdout] 29 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/data_store.rs:50:35
[INFO] [stdout]    |
[INFO] [stdout] 50 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 51 | /// MMDS data store errors
[INFO] [stdout] 52 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/ns.rs:39:46
[INFO] [stdout]    |
[INFO] [stdout] 39 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_WriteArpFrameError`
[INFO] [stdout] 40 | enum WriteArpFrameError {
[INFO] [stdout]    |      ------------------ `WriteArpFrameError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/ns.rs:49:46
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_WritePacketError`
[INFO] [stdout] 50 | enum WritePacketError {
[INFO] [stdout]    |      ---------------- `WritePacketError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/token.rs:49:35
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 50 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:105:35
[INFO] [stdout]     |
[INFO] [stdout] 105 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MicrovmStateError`
[INFO] [stdout] 106 | pub enum MicrovmStateError {
[INFO] [stdout]     |          ----------------- `MicrovmStateError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:131:35
[INFO] [stdout]     |
[INFO] [stdout] 131 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_CreateSnapshotError`
[INFO] [stdout] 132 | pub enum CreateSnapshotError {
[INFO] [stdout]     |          ------------------- `CreateSnapshotError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 330 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SnapShotStateSanityCheckError`
[INFO] [stdout] 331 | pub enum SnapShotStateSanityCheckError {
[INFO] [stdout]     |          ----------------------------- `SnapShotStateSanityCheckError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:365:35
[INFO] [stdout]     |
[INFO] [stdout] 365 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RestoreFromSnapshotError`
[INFO] [stdout] 366 | pub enum RestoreFromSnapshotError {
[INFO] [stdout]     |          ------------------------ `RestoreFromSnapshotError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:378:35
[INFO] [stdout]     |
[INFO] [stdout] 378 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RestoreFromSnapshotGuestMemoryError`
[INFO] [stdout] 379 | pub enum RestoreFromSnapshotGuestMemoryError {
[INFO] [stdout]     |          ----------------------------------- `RestoreFromSnapshotGuestMemoryError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:433:35
[INFO] [stdout]     |
[INFO] [stdout] 433 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SnapshotStateFromFileError`
[INFO] [stdout] 434 | pub enum SnapshotStateFromFileError {
[INFO] [stdout]     |          -------------------------- `SnapshotStateFromFileError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:458:35
[INFO] [stdout]     |
[INFO] [stdout] 458 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GuestMemoryFromFileError`
[INFO] [stdout] 459 | pub enum GuestMemoryFromFileError {
[INFO] [stdout]     |          ------------------------ `GuestMemoryFromFileError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:477:35
[INFO] [stdout]     |
[INFO] [stdout] 477 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GuestMemoryFromUffdError`
[INFO] [stdout] 478 | pub enum GuestMemoryFromUffdError {
[INFO] [stdout]     |          ------------------------ `GuestMemoryFromUffdError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/resources.rs:33:35
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ResourcesError`
[INFO] [stdout] 34 | pub enum ResourcesError {
[INFO] [stdout]    |          -------------- `ResourcesError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/rpc_interface.rs:133:35
[INFO] [stdout]     |
[INFO] [stdout] 133 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VmmActionError`
[INFO] [stdout] 134 | pub enum VmmActionError {
[INFO] [stdout]     |          -------------- `VmmActionError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/rpc_interface.rs:274:35
[INFO] [stdout]     |
[INFO] [stdout] 274 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_LoadSnapshotError`
[INFO] [stdout] 275 | pub enum LoadSnapshotError {
[INFO] [stdout]     |          ----------------- `LoadSnapshotError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/rpc_interface.rs:290:35
[INFO] [stdout]     |
[INFO] [stdout] 290 | #[derive(Debug, thiserror::Error, displaydoc::Display, derive_more::From)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BuildMicrovmFromRequestsError`
[INFO] [stdout] 291 | pub enum BuildMicrovmFromRequestsError {
[INFO] [stdout]     |          ----------------------------- `BuildMicrovmFromRequestsError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/balloon.rs:15:54
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, derive_more::From, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                      ^------------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `Display` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_DERIVE_Display_FOR_BalloonConfigError`
[INFO] [stdout] 16 | pub enum BalloonConfigError {
[INFO] [stdout]    |          ------------------ `BalloonConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/boot_source.rs:37:35
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BootSourceConfigError`
[INFO] [stdout] 38 | pub enum BootSourceConfigError {
[INFO] [stdout]    |          --------------------- `BootSourceConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/drive.rs:20:35
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DriveError`
[INFO] [stdout] 21 | pub enum DriveError {
[INFO] [stdout]    |          ---------- `DriveError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/entropy.rs:32:35
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EntropyDeviceError`
[INFO] [stdout] 33 | pub enum EntropyDeviceError {
[INFO] [stdout]    |          ------------------ `EntropyDeviceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/machine_config.rs:17:35
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VmConfigError`
[INFO] [stdout] 18 | pub enum VmConfigError {
[INFO] [stdout]    |          ------------- `VmConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/metrics.rs:20:35
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MetricsConfigError`
[INFO] [stdout] 21 | pub enum MetricsConfigError {
[INFO] [stdout]    |          ------------------ `MetricsConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/mmds.rs:43:35
[INFO] [stdout]    |
[INFO] [stdout] 43 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MmdsConfigError`
[INFO] [stdout] 44 | pub enum MmdsConfigError {
[INFO] [stdout]    |          --------------- `MmdsConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/net.rs:62:35
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NetworkInterfaceError`
[INFO] [stdout] 63 | pub enum NetworkInterfaceError {
[INFO] [stdout]    |          --------------------- `NetworkInterfaceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/vmm_config/net.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn iter(&self) -> ::std::slice::Iter<Arc<Mutex<Net>>> {
[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] 92 |     pub fn iter(&self) -> ::std::slice::Iter<'_, Arc<Mutex<Net>>> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/vmm_config/net.rs:97:21
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn iter_mut(&mut self) -> ::std::slice::IterMut<Arc<Mutex<Net>>> {
[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] 97 |     pub fn iter_mut(&mut self) -> ::std::slice::IterMut<'_, Arc<Mutex<Net>>> {
[INFO] [stdout]    |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/vsock.rs:14:54
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, derive_more::From, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                      ^------------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `Display` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_DERIVE_Display_FOR_VsockConfigError`
[INFO] [stdout] 15 | pub enum VsockConfigError {
[INFO] [stdout]    |          ---------------- `VsockConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/memory.rs:32:35
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MemoryError`
[INFO] [stdout] 33 | pub enum MemoryError {
[INFO] [stdout]    |          ----------- `MemoryError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/vcpu/mod.rs:47:35
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VcpuError`
[INFO] [stdout] 48 | pub enum VcpuError {
[INFO] [stdout]    |          --------- `VcpuError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/vmm/src/vstate/vcpu/mod.rs:441:20
[INFO] [stdout]     |
[INFO] [stdout] 441 |     pub fn emulate(&self) -> Result<VcpuExit, errno::Error> {
[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] 441 |     pub fn emulate(&self) -> Result<VcpuExit<'_>, errno::Error> {
[INFO] [stdout]     |                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/vcpu/x86_64.rs:36:50
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_KvmVcpuError`
[INFO] [stdout] 37 | pub enum KvmVcpuError {
[INFO] [stdout]    |          ------------ `KvmVcpuError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/vstate/vcpu/x86_64.rs:117:35
[INFO] [stdout]     |
[INFO] [stdout] 117 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_KvmVcpuConfigureError`
[INFO] [stdout] 118 | pub enum KvmVcpuConfigureError {
[INFO] [stdout]     |          --------------------- `KvmVcpuConfigureError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/vm.rs:33:50
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_VmError`
[INFO] [stdout] 34 | pub enum VmError {
[INFO] [stdout]    |          ------- `VmError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/vm.rs:85:35
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RestoreStateError`
[INFO] [stdout] 86 | pub enum RestoreStateError {
[INFO] [stdout]    |          ----------------- `RestoreStateError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/lib.rs:197:35
[INFO] [stdout]     |
[INFO] [stdout] 197 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VmmError`
[INFO] [stdout] 198 | pub enum VmmError {
[INFO] [stdout]     |          -------- `VmmError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/lib.rs:266:35
[INFO] [stdout]     |
[INFO] [stdout] 266 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EmulateSerialInitError`
[INFO] [stdout] 267 | pub struct EmulateSerialInitError(#[from] std::io::Error);
[INFO] [stdout]     |            ---------------------- `EmulateSerialInitError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/lib.rs:270:35
[INFO] [stdout]     |
[INFO] [stdout] 270 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_StartVcpusError`
[INFO] [stdout] 271 | pub enum StartVcpusError {
[INFO] [stdout]     |          --------------- `StartVcpusError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/lib.rs:279:35
[INFO] [stdout]     |
[INFO] [stdout] 279 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DumpCpuConfigError`
[INFO] [stdout] 280 | pub enum DumpCpuConfigError {
[INFO] [stdout]     |          ------------------ `DumpCpuConfigError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/mod.rs:38:50
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_ConfigurationError`
[INFO] [stdout] 39 | pub enum ConfigurationError {
[INFO] [stdout]    |          ------------------ `ConfigurationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/interrupts.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_InterruptError`
[INFO] [stdout] 14 | pub enum InterruptError {
[INFO] [stdout]    |          -------------- `InterruptError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/mptable.rs:39:50
[INFO] [stdout]    |
[INFO] [stdout] 39 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_MptableError`
[INFO] [stdout] 40 | pub enum MptableError {
[INFO] [stdout]    |          ------------ `MptableError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/msr.rs:16:50
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_MsrError`
[INFO] [stdout] 17 | /// MSR related errors.
[INFO] [stdout] 18 | pub enum MsrError {
[INFO] [stdout]    |          -------- `MsrError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/arch/x86_64/regs.rs:22:35
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RegsError`
[INFO] [stdout] 23 | pub enum RegsError {
[INFO] [stdout]    |          --------- `RegsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/arch/x86_64/regs.rs:103:35
[INFO] [stdout]     |
[INFO] [stdout] 103 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SetupSpecialRegistersError`
[INFO] [stdout] 104 | pub enum SetupSpecialRegistersError {
[INFO] [stdout]     |          -------------------------- `SetupSpecialRegistersError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/io_uring/mod.rs:34:35
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_IoUringError`
[INFO] [stdout] 35 | /// IoUring Error.
[INFO] [stdout] 36 | pub enum IoUringError {
[INFO] [stdout]    |          ------------ `IoUringError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/io_uring/queue/completion.rs:16:35
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_CQueueError`
[INFO] [stdout] 17 | /// CQueue Error.
[INFO] [stdout] 18 | pub enum CQueueError {
[INFO] [stdout]    |          ----------- `CQueueError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/io_uring/queue/mmap.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MmapError`
[INFO] [stdout] 12 | pub enum MmapError {
[INFO] [stdout]    |          --------- `MmapError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/io_uring/queue/submission.rs:19:35
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SQueueError`
[INFO] [stdout] 20 | /// SQueue Error.
[INFO] [stdout] 21 | pub enum SQueueError {
[INFO] [stdout]    |          ----------- `SQueueError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/rate_limiter/mod.rs:14:35
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 15 | /// Describes the errors that may occur while handling rate limiter events.
[INFO] [stdout] 16 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/builder.rs:68:35
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_StartMicrovmError`
[INFO] [stdout] 69 | pub enum StartMicrovmError {
[INFO] [stdout]    |          ----------------- `StartMicrovmError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/builder.rs:365:35
[INFO] [stdout]     |
[INFO] [stdout] 365 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BuildMicrovmFromSnapshotError`
[INFO] [stdout] 366 | pub enum BuildMicrovmFromSnapshotError {
[INFO] [stdout]     |          ----------------------------- `BuildMicrovmFromSnapshotError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/templates.rs:30:35
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GetCpuTemplateError`
[INFO] [stdout] 31 | pub enum GetCpuTemplateError {
[INFO] [stdout]    |          ------------------- `GetCpuTemplateError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/cpu_config/templates.rs:52:25
[INFO] [stdout]    |
[INFO] [stdout] 52 |     fn get_cpu_template(&self) -> Result<Cow<CustomCpuTemplate>, GetCpuTemplateError>;
[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]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 52 |     fn get_cpu_template(&self) -> Result<Cow<'_, CustomCpuTemplate>, GetCpuTemplateError>;
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/mod.rs:20:50
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_CpuConfigurationError`
[INFO] [stdout] 21 | pub enum CpuConfigurationError {
[INFO] [stdout]    |          --------------------- `CpuConfigurationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/cpu_config/x86_64/cpuid/mod.rs:296:35
[INFO] [stdout]     |
[INFO] [stdout] 296 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_CpuidTryFromKvmCpuid`
[INFO] [stdout] 297 | pub enum CpuidTryFromKvmCpuid {
[INFO] [stdout]     |          -------------------- `CpuidTryFromKvmCpuid` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/vmm/src/cpu_config/x86_64/cpuid/common.rs:6:35
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]   |                                   ^------------------
[INFO] [stdout]   |                                   |
[INFO] [stdout]   |                                   `Display` is not local
[INFO] [stdout]   |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GetCpuidError`
[INFO] [stdout] 7 | pub enum GetCpuidError {
[INFO] [stdout]   |          ------------- `GetCpuidError` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NormalizeCpuidError`
[INFO] [stdout] 16 | pub enum NormalizeCpuidError {
[INFO] [stdout]    |          ------------------- `NormalizeCpuidError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:38:35
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_PassthroughCacheTopologyError`
[INFO] [stdout] 39 | pub enum PassthroughCacheTopologyError {
[INFO] [stdout]    |          ----------------------------- `PassthroughCacheTopologyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:47:35
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FeatureEntryError`
[INFO] [stdout] 48 | pub enum FeatureEntryError {
[INFO] [stdout]    |          ----------------- `FeatureEntryError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedCacheTopologyError`
[INFO] [stdout] 59 | pub enum ExtendedCacheTopologyError {
[INFO] [stdout]    |          -------------------------- `ExtendedCacheTopologyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:69:35
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedApicIdError`
[INFO] [stdout] 70 | pub enum ExtendedApicIdError {
[INFO] [stdout]    |          ------------------- `ExtendedApicIdError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/intel/normalize.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NormalizeCpuidError`
[INFO] [stdout] 14 | pub enum NormalizeCpuidError {
[INFO] [stdout]    |          ------------------- `NormalizeCpuidError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/intel/normalize.rs:35:35
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeterministicCacheError`
[INFO] [stdout] 36 | pub enum DeterministicCacheError {
[INFO] [stdout]    |          ----------------------- `DeterministicCacheError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/cpu_config/x86_64/cpuid/intel/normalize.rs:231:50
[INFO] [stdout]     |
[INFO] [stdout] 231 | #[derive(Debug, Eq, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                                  ^------------------
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  `Display` is not local
[INFO] [stdout]     |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_DefaultBrandStringError`
[INFO] [stdout] 232 | pub enum DefaultBrandStringError {
[INFO] [stdout]     |          ----------------------- `DefaultBrandStringError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:10:35
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NormalizeCpuidError`
[INFO] [stdout] 11 | pub enum NormalizeCpuidError {
[INFO] [stdout]    |          ------------------- `NormalizeCpuidError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:29:35
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VendorIdError`
[INFO] [stdout] 30 | pub enum VendorIdError {
[INFO] [stdout]    |          ------------- `VendorIdError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:36:35
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FeatureInformationError`
[INFO] [stdout] 37 | pub enum FeatureInformationError {
[INFO] [stdout]    |          ----------------------- `FeatureInformationError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:51:35
[INFO] [stdout]    |
[INFO] [stdout] 51 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GetMaxCpusPerPackageError`
[INFO] [stdout] 52 | pub enum GetMaxCpusPerPackageError {
[INFO] [stdout]    |          ------------------------- `GetMaxCpusPerPackageError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:61:35
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedTopologyError`
[INFO] [stdout] 62 | pub enum ExtendedTopologyError {
[INFO] [stdout]    |          --------------------- `ExtendedTopologyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:76:35
[INFO] [stdout]    |
[INFO] [stdout] 76 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedCacheFeaturesError`
[INFO] [stdout] 77 | pub enum ExtendedCacheFeaturesError {
[INFO] [stdout]    |          -------------------------- `ExtendedCacheFeaturesError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/cpu_config/x86_64/custom_cpu_template.rs:22:25
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn get_cpu_template(&self) -> Result<Cow<CustomCpuTemplate>, GetCpuTemplateError> {
[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] 22 |     fn get_cpu_template(&self) -> Result<Cow<'_, CustomCpuTemplate>, GetCpuTemplateError> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/device_manager/legacy.rs:22:54
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Debug, derive_more::From, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                      ^------------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `Display` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_DERIVE_Display_FOR_LegacyDeviceError`
[INFO] [stdout] 23 | pub enum LegacyDeviceError {
[INFO] [stdout]    |          ----------------- `LegacyDeviceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/device_manager/mmio.rs:38:35
[INFO] [stdout]    |
[INFO] [stdout] 38 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MmioError`
[INFO] [stdout] 39 | pub enum MmioError {
[INFO] [stdout]    |          --------- `MmioError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/device_manager/persist.rs:53:35
[INFO] [stdout]    |
[INFO] [stdout] 53 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DevicePersistError`
[INFO] [stdout] 54 | pub enum DevicePersistError {
[INFO] [stdout]    |          ------------------ `DevicePersistError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/mod.rs:34:35
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeviceError`
[INFO] [stdout] 35 | pub enum DeviceError {
[INFO] [stdout]    |          ----------- `DeviceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/bus.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BusError`
[INFO] [stdout] 16 | pub enum BusError {
[INFO] [stdout]    |          -------- `BusError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/legacy/i8042.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_I8042Error`
[INFO] [stdout] 19 | pub enum I8042Error {
[INFO] [stdout]    |          ---------- `I8042Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/legacy/serial.rs:63:35
[INFO] [stdout]    |
[INFO] [stdout] 63 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RawIOError`
[INFO] [stdout] 64 | pub enum RawIOError {
[INFO] [stdout]    |          ---------- `RawIOError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/mod.rs:63:35
[INFO] [stdout]    |
[INFO] [stdout] 63 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ActivateError`
[INFO] [stdout] 64 | pub enum ActivateError {
[INFO] [stdout]    |          ------------- `ActivateError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/balloon/mod.rs:69:35
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BalloonError`
[INFO] [stdout] 70 | pub enum BalloonError {
[INFO] [stdout]    |          ------------ `BalloonError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/devices/virtio/balloon/mod.rs:103:35
[INFO] [stdout]     |
[INFO] [stdout] 103 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RemoveRegionError`
[INFO] [stdout] 104 | pub enum RemoveRegionError {
[INFO] [stdout]     |          ----------------- `RemoveRegionError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/iovec.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_IoVecError`
[INFO] [stdout] 16 | pub enum IoVecError {
[INFO] [stdout]    |          ---------- `IoVecError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/devices/virtio/mmio.rs:86:26
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn locked_device(&self) -> MutexGuard<dyn VirtioDevice + 'static> {
[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] 86 |     pub fn locked_device(&self) -> MutexGuard<'_, dyn VirtioDevice + 'static> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/mod.rs:44:35
[INFO] [stdout]    |
[INFO] [stdout] 44 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NetError`
[INFO] [stdout] 45 | pub enum NetError {
[INFO] [stdout]    |          -------- `NetError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/device.rs:49:35
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FrontendError`
[INFO] [stdout] 50 | enum FrontendError {
[INFO] [stdout]    |      ------------- `FrontendError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/persist.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NetPersistError`
[INFO] [stdout] 59 | pub enum NetPersistError {
[INFO] [stdout]    |          --------------- `NetPersistError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/net/tap.rs:28:35
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_TapError`
[INFO] [stdout] 29 | pub enum TapError {
[INFO] [stdout]    |          -------- `TapError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/vmm/src/devices/virtio/net/test_utils.rs:254:24
[INFO] [stdout]     |
[INFO] [stdout] 254 | pub fn virtqueues(mem: &GuestMemoryMmap) -> (VirtQueue, VirtQueue) {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^      ^^^^^^^^^  ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |                     |
[INFO] [stdout]     |                        |                     the same lifetime is hidden here
[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] 254 | pub fn virtqueues(mem: &GuestMemoryMmap) -> (VirtQueue<'_>, VirtQueue<'_>) {
[INFO] [stdout]     |                                                       ++++           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/persist.rs:20:35
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_PersistError`
[INFO] [stdout] 21 | pub enum PersistError {
[INFO] [stdout]    |          ------------ `PersistError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/queue.rs:31:35
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_QueueError`
[INFO] [stdout] 32 | pub enum QueueError {
[INFO] [stdout]    |          ---------- `QueueError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/rng/device.rs:26:35
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EntropyError`
[INFO] [stdout] 27 | pub enum EntropyError {
[INFO] [stdout]    |          ------------ `EntropyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/rng/persist.rs:32:35
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EntropyPersistError`
[INFO] [stdout] 33 | pub enum EntropyPersistError {
[INFO] [stdout]    |          ------------------- `EntropyPersistError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/vhost_user.rs:21:35
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VhostUserError`
[INFO] [stdout] 22 | pub enum VhostUserError {
[INFO] [stdout]    |          -------------- `VhostUserError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/vhost_user_block/mod.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VhostUserBlockError`
[INFO] [stdout] 19 | pub enum VhostUserBlockError {
[INFO] [stdout]    |          ------------------- `VhostUserBlockError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/mod.rs:37:35
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VirtioBlockError`
[INFO] [stdout] 38 | pub enum VirtioBlockError {
[INFO] [stdout]    |          ---------------- `VirtioBlockError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/io/mod.rs:27:35
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BlockIoError`
[INFO] [stdout] 28 | pub enum BlockIoError {
[INFO] [stdout]    |          ------------ `BlockIoError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/io/async_io.rs:21:35
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_AsyncIoError`
[INFO] [stdout] 22 | pub enum AsyncIoError {
[INFO] [stdout]    |          ------------ `AsyncIoError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/virtio_block/io/sync_io.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SyncIoError`
[INFO] [stdout] 12 | pub enum SyncIoError {
[INFO] [stdout]    |          ----------- `SyncIoError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/devices/virtio/vsock/mod.rs:109:35
[INFO] [stdout]     |
[INFO] [stdout] 109 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VsockError`
[INFO] [stdout] 110 | #[rustfmt::skip]
[INFO] [stdout] 111 | pub enum VsockError {
[INFO] [stdout]     |          ---------- `VsockError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/vsock/csm/mod.rs:26:35
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VsockCsmError`
[INFO] [stdout] 27 | pub enum VsockCsmError {
[INFO] [stdout]    |          ------------- `VsockCsmError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/devices/virtio/vsock/unix/mod.rs:30:35
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VsockUnixBackendError`
[INFO] [stdout] 31 | pub enum VsockUnixBackendError {
[INFO] [stdout]    |          --------------------- `VsockUnixBackendError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/arp.rs:48:50
[INFO] [stdout]    |
[INFO] [stdout] 48 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 49 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/ethernet.rs:30:50
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 31 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/ipv4.rs:42:50
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 43 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/tcp.rs:76:50
[INFO] [stdout]    |
[INFO] [stdout] 76 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 77 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/pdu/udp.rs:32:50
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 33 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/tcp/connection.rs:85:50
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_PassiveOpenError`
[INFO] [stdout] 86 | pub enum PassiveOpenError {
[INFO] [stdout]    |          ---------------- `PassiveOpenError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/tcp/connection.rs:94:50
[INFO] [stdout]    |
[INFO] [stdout] 94 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_RecvError`
[INFO] [stdout] 95 | pub enum RecvError {
[INFO] [stdout]    |          --------- `RecvError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/dumbo/tcp/connection.rs:105:50
[INFO] [stdout]     |
[INFO] [stdout] 105 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                                  ^------------------
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  `Display` is not local
[INFO] [stdout]     |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_WriteNextError`
[INFO] [stdout] 106 | pub enum WriteNextError {
[INFO] [stdout]     |          -------------- `WriteNextError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/tcp/handler.rs:60:50
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_RecvError`
[INFO] [stdout] 61 | pub enum RecvError {
[INFO] [stdout]    |          --------- `RecvError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/dumbo/tcp/handler.rs:73:50
[INFO] [stdout]    |
[INFO] [stdout] 73 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_WriteNextError`
[INFO] [stdout] 74 | pub enum WriteNextError {
[INFO] [stdout]    |          -------------- `WriteNextError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/logger/metrics.rs:184:35
[INFO] [stdout]     |
[INFO] [stdout] 184 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MetricsError`
[INFO] [stdout] 185 | pub enum MetricsError {
[INFO] [stdout]     |          ------------ `MetricsError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/vmm/src/logger/metrics.rs:757:35
[INFO] [stdout]     |
[INFO] [stdout] 757 |     pub fn record_latency_metrics(&self) -> LatencyMetricsRecorder {
[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] 757 |     pub fn record_latency_metrics(&self) -> LatencyMetricsRecorder<'_> {
[INFO] [stdout]     |                                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/mod.rs:27:35
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 28 | /// MMDS token errors
[INFO] [stdout] 29 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/data_store.rs:50:35
[INFO] [stdout]    |
[INFO] [stdout] 50 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 51 | /// MMDS data store errors
[INFO] [stdout] 52 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/ns.rs:39:46
[INFO] [stdout]    |
[INFO] [stdout] 39 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_WriteArpFrameError`
[INFO] [stdout] 40 | enum WriteArpFrameError {
[INFO] [stdout]    |      ------------------ `WriteArpFrameError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/ns.rs:49:46
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                              ^------------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              `Display` is not local
[INFO] [stdout]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_WritePacketError`
[INFO] [stdout] 50 | enum WritePacketError {
[INFO] [stdout]    |      ---------------- `WritePacketError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/mmds/token.rs:49:35
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stdout] 50 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:105:35
[INFO] [stdout]     |
[INFO] [stdout] 105 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MicrovmStateError`
[INFO] [stdout] 106 | pub enum MicrovmStateError {
[INFO] [stdout]     |          ----------------- `MicrovmStateError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:131:35
[INFO] [stdout]     |
[INFO] [stdout] 131 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_CreateSnapshotError`
[INFO] [stdout] 132 | pub enum CreateSnapshotError {
[INFO] [stdout]     |          ------------------- `CreateSnapshotError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:330:35
[INFO] [stdout]     |
[INFO] [stdout] 330 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SnapShotStateSanityCheckError`
[INFO] [stdout] 331 | pub enum SnapShotStateSanityCheckError {
[INFO] [stdout]     |          ----------------------------- `SnapShotStateSanityCheckError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:365:35
[INFO] [stdout]     |
[INFO] [stdout] 365 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RestoreFromSnapshotError`
[INFO] [stdout] 366 | pub enum RestoreFromSnapshotError {
[INFO] [stdout]     |          ------------------------ `RestoreFromSnapshotError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:378:35
[INFO] [stdout]     |
[INFO] [stdout] 378 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RestoreFromSnapshotGuestMemoryError`
[INFO] [stdout] 379 | pub enum RestoreFromSnapshotGuestMemoryError {
[INFO] [stdout]     |          ----------------------------------- `RestoreFromSnapshotGuestMemoryError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:433:35
[INFO] [stdout]     |
[INFO] [stdout] 433 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SnapshotStateFromFileError`
[INFO] [stdout] 434 | pub enum SnapshotStateFromFileError {
[INFO] [stdout]     |          -------------------------- `SnapshotStateFromFileError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:458:35
[INFO] [stdout]     |
[INFO] [stdout] 458 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GuestMemoryFromFileError`
[INFO] [stdout] 459 | pub enum GuestMemoryFromFileError {
[INFO] [stdout]     |          ------------------------ `GuestMemoryFromFileError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/persist.rs:477:35
[INFO] [stdout]     |
[INFO] [stdout] 477 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GuestMemoryFromUffdError`
[INFO] [stdout] 478 | pub enum GuestMemoryFromUffdError {
[INFO] [stdout]     |          ------------------------ `GuestMemoryFromUffdError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/resources.rs:33:35
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ResourcesError`
[INFO] [stdout] 34 | pub enum ResourcesError {
[INFO] [stdout]    |          -------------- `ResourcesError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/rpc_interface.rs:133:35
[INFO] [stdout]     |
[INFO] [stdout] 133 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VmmActionError`
[INFO] [stdout] 134 | pub enum VmmActionError {
[INFO] [stdout]     |          -------------- `VmmActionError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/rpc_interface.rs:274:35
[INFO] [stdout]     |
[INFO] [stdout] 274 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_LoadSnapshotError`
[INFO] [stdout] 275 | pub enum LoadSnapshotError {
[INFO] [stdout]     |          ----------------- `LoadSnapshotError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/rpc_interface.rs:290:35
[INFO] [stdout]     |
[INFO] [stdout] 290 | #[derive(Debug, thiserror::Error, displaydoc::Display, derive_more::From)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BuildMicrovmFromRequestsError`
[INFO] [stdout] 291 | pub enum BuildMicrovmFromRequestsError {
[INFO] [stdout]     |          ----------------------------- `BuildMicrovmFromRequestsError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/balloon.rs:15:54
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, derive_more::From, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                      ^------------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `Display` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_DERIVE_Display_FOR_BalloonConfigError`
[INFO] [stdout] 16 | pub enum BalloonConfigError {
[INFO] [stdout]    |          ------------------ `BalloonConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/boot_source.rs:37:35
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BootSourceConfigError`
[INFO] [stdout] 38 | pub enum BootSourceConfigError {
[INFO] [stdout]    |          --------------------- `BootSourceConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/drive.rs:20:35
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DriveError`
[INFO] [stdout] 21 | pub enum DriveError {
[INFO] [stdout]    |          ---------- `DriveError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/entropy.rs:32:35
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EntropyDeviceError`
[INFO] [stdout] 33 | pub enum EntropyDeviceError {
[INFO] [stdout]    |          ------------------ `EntropyDeviceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/machine_config.rs:17:35
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VmConfigError`
[INFO] [stdout] 18 | pub enum VmConfigError {
[INFO] [stdout]    |          ------------- `VmConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/metrics.rs:20:35
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MetricsConfigError`
[INFO] [stdout] 21 | pub enum MetricsConfigError {
[INFO] [stdout]    |          ------------------ `MetricsConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/mmds.rs:43:35
[INFO] [stdout]    |
[INFO] [stdout] 43 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MmdsConfigError`
[INFO] [stdout] 44 | pub enum MmdsConfigError {
[INFO] [stdout]    |          --------------- `MmdsConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/net.rs:62:35
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NetworkInterfaceError`
[INFO] [stdout] 63 | pub enum NetworkInterfaceError {
[INFO] [stdout]    |          --------------------- `NetworkInterfaceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/vmm_config/net.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn iter(&self) -> ::std::slice::Iter<Arc<Mutex<Net>>> {
[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] 92 |     pub fn iter(&self) -> ::std::slice::Iter<'_, Arc<Mutex<Net>>> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vmm/src/vmm_config/net.rs:97:21
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn iter_mut(&mut self) -> ::std::slice::IterMut<Arc<Mutex<Net>>> {
[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] 97 |     pub fn iter_mut(&mut self) -> ::std::slice::IterMut<'_, Arc<Mutex<Net>>> {
[INFO] [stdout]    |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vmm_config/vsock.rs:14:54
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, derive_more::From, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                      ^------------------
[INFO] [stdout]    |                                                      |
[INFO] [stdout]    |                                                      `Display` is not local
[INFO] [stdout]    |                                                      move the `impl` block outside of this constant `_DERIVE_Display_FOR_VsockConfigError`
[INFO] [stdout] 15 | pub enum VsockConfigError {
[INFO] [stdout]    |          ---------------- `VsockConfigError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/memory.rs:32:35
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MemoryError`
[INFO] [stdout] 33 | pub enum MemoryError {
[INFO] [stdout]    |          ----------- `MemoryError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/vcpu/mod.rs:47:35
[INFO] [stdout]    |
[INFO] [stdout] 47 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VcpuError`
[INFO] [stdout] 48 | pub enum VcpuError {
[INFO] [stdout]    |          --------- `VcpuError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/vmm/src/vstate/vcpu/mod.rs:441:20
[INFO] [stdout]     |
[INFO] [stdout] 441 |     pub fn emulate(&self) -> Result<VcpuExit, errno::Error> {
[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] 441 |     pub fn emulate(&self) -> Result<VcpuExit<'_>, errno::Error> {
[INFO] [stdout]     |                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/vcpu/x86_64.rs:36:50
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_KvmVcpuError`
[INFO] [stdout] 37 | pub enum KvmVcpuError {
[INFO] [stdout]    |          ------------ `KvmVcpuError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/vmm/src/vstate/vcpu/x86_64.rs:117:35
[INFO] [stdout]     |
[INFO] [stdout] 117 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_KvmVcpuConfigureError`
[INFO] [stdout] 118 | pub enum KvmVcpuConfigureError {
[INFO] [stdout]     |          --------------------- `KvmVcpuConfigureError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/vm.rs:33:50
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                                  ^------------------
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  `Display` is not local
[INFO] [stdout]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_VmError`
[INFO] [stdout] 34 | pub enum VmError {
[INFO] [stdout]    |          ------- `VmError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/vmm/src/vstate/vm.rs:85:35
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RestoreStateError`
[INFO] [stdout] 86 | pub enum RestoreStateError {
[INFO] [stdout]    |          ----------------- `RestoreStateError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling api_server v0.1.0 (/opt/rustwide/workdir/src/api_server)
[INFO] [stdout] warning: unused imports: `HttpServer`, `RequestError`, `Request`, `Response`, and `Version`
[INFO] [stdout]   --> src/api_server/src/request/mod.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 |     Body, HttpServer, Method, Request, RequestError, Response, StatusCode, Version,
[INFO] [stdout]    |           ^^^^^^^^^^          ^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HttpServer`, `RequestError`, `Request`, `Response`, and `Version`
[INFO] [stdout]   --> src/api_server/src/request/mod.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 |     Body, HttpServer, Method, Request, RequestError, Response, StatusCode, Version,
[INFO] [stdout]    |           ^^^^^^^^^^          ^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling cpu-template-helper v1.7.0-dev (/opt/rustwide/workdir/src/cpu-template-helper)
[INFO] [stderr]    Compiling snapshot-editor v1.7.0-dev (/opt/rustwide/workdir/src/snapshot-editor)
[INFO] [stdout] warning: unused return value of `exec` that must be used
[INFO] [stdout]   --> src/firecracker/examples/seccomp/jailer.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | /     Command::new(exec_file)
[INFO] [stdout] 22 | |         .stdin(Stdio::inherit())
[INFO] [stdout] 23 | |         .stdout(Stdio::inherit())
[INFO] [stdout] 24 | |         .stderr(Stdio::inherit())
[INFO] [stdout] 25 | |         .exec();
[INFO] [stdout]    | |_______________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let _ = Command::new(exec_file)
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cpuid_leaf_modifier`, `cpuid_reg_modifier`, and `msr_modifier`
[INFO] [stdout]    --> src/cpu-template-helper/src/utils/x86_64.rs:197:32
[INFO] [stdout]     |
[INFO] [stdout] 197 |     use crate::utils::x86_64::{cpuid_leaf_modifier, cpuid_reg_modifier, msr_modifier};
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/firecracker/src/main.rs:43:35
[INFO] [stdout]    |
[INFO] [stdout] 43 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MainError`
[INFO] [stdout] 44 | enum MainError {
[INFO] [stdout]    |      --------- `MainError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/firecracker/src/main.rs:69:35
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ResizeFdTableError`
[INFO] [stdout] 70 | enum ResizeFdTableError {
[INFO] [stdout]    |      ------------------ `ResizeFdTableError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/firecracker/src/main.rs:528:35
[INFO] [stdout]     |
[INFO] [stdout] 528 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SnapshotVersionError`
[INFO] [stdout] 529 | enum SnapshotVersionError {
[INFO] [stdout]     |      -------------------- `SnapshotVersionError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/firecracker/src/main.rs:548:35
[INFO] [stdout]     |
[INFO] [stdout] 548 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BuildFromJsonError`
[INFO] [stdout] 549 | pub enum BuildFromJsonError {
[INFO] [stdout]     |          ------------------ `BuildFromJsonError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/firecracker/src/main.rs:583:35
[INFO] [stdout]     |
[INFO] [stdout] 583 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RunWithoutApiError`
[INFO] [stdout] 584 | enum RunWithoutApiError {
[INFO] [stdout]     |      ------------------ `RunWithoutApiError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/firecracker/src/api_server_adapter.rs:24:35
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ApiServerError`
[INFO] [stdout] 25 | pub enum ApiServerError {
[INFO] [stdout]    |          -------------- `ApiServerError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/firecracker/src/seccomp.rs:20:35
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FilterError`
[INFO] [stdout] 21 | pub enum FilterError {
[INFO] [stdout]    |          ----------- `FilterError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/snapshot-editor/src/main.rs:17:35
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SnapEditorError`
[INFO] [stdout] 18 | enum SnapEditorError {
[INFO] [stdout]    |      --------------- `SnapEditorError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/snapshot-editor/src/edit_memory.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EditMemoryError`
[INFO] [stdout] 14 | pub enum EditMemoryError {
[INFO] [stdout]    |          --------------- `EditMemoryError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/snapshot-editor/src/info.rs:12:35
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_InfoVmStateError`
[INFO] [stdout] 13 | pub enum InfoVmStateError {
[INFO] [stdout]    |          ---------------- `InfoVmStateError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/snapshot-editor/src/utils.rs:14:35
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_UtilsError`
[INFO] [stdout] 15 | pub enum UtilsError {
[INFO] [stdout]    |          ---------- `UtilsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/cpu-template-helper/src/main.rs:16:35
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_HelperError`
[INFO] [stdout] 17 | enum HelperError {
[INFO] [stdout]    |      ----------- `HelperError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/cpu-template-helper/src/fingerprint/compare.rs:8:35
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]   |                                   ^------------------
[INFO] [stdout]   |                                   |
[INFO] [stdout]   |                                   `Display` is not local
[INFO] [stdout]   |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FingerprintCompareError`
[INFO] [stdout] 9 | pub enum FingerprintCompareError {
[INFO] [stdout]   |          ----------------------- `FingerprintCompareError` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/cpu-template-helper/src/fingerprint/dump.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FingerprintDumpError`
[INFO] [stdout] 12 | pub enum FingerprintDumpError {
[INFO] [stdout]    |          -------------------- `FingerprintDumpError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/cpu-template-helper/src/template/dump/mod.rs:19:35
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DumpError`
[INFO] [stdout] 20 | pub enum DumpError {
[INFO] [stdout]    |          --------- `DumpError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/cpu-template-helper/src/template/strip/mod.rs:21:35
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_StripError`
[INFO] [stdout] 22 | pub enum StripError {
[INFO] [stdout]    |          ---------- `StripError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/cpu-template-helper/src/template/verify/mod.rs:21:35
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VerifyError`
[INFO] [stdout] 22 | pub enum VerifyError {
[INFO] [stdout]    |          ----------- `VerifyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/cpu-template-helper/src/utils/mod.rs:61:35
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_UtilsError`
[INFO] [stdout] 62 | pub enum UtilsError {
[INFO] [stdout]    |          ---------- `UtilsError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/firecracker/src/main.rs:43:35
[INFO] [stdout]    |
[INFO] [stdout] 43 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MainError`
[INFO] [stdout] 44 | enum MainError {
[INFO] [stdout]    |      --------- `MainError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/firecracker/src/main.rs:69:35
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ResizeFdTableError`
[INFO] [stdout] 70 | enum ResizeFdTableError {
[INFO] [stdout]    |      ------------------ `ResizeFdTableError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/firecracker/src/main.rs:528:35
[INFO] [stdout]     |
[INFO] [stdout] 528 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SnapshotVersionError`
[INFO] [stdout] 529 | enum SnapshotVersionError {
[INFO] [stdout]     |      -------------------- `SnapshotVersionError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/firecracker/src/main.rs:548:35
[INFO] [stdout]     |
[INFO] [stdout] 548 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BuildFromJsonError`
[INFO] [stdout] 549 | pub enum BuildFromJsonError {
[INFO] [stdout]     |          ------------------ `BuildFromJsonError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/firecracker/src/main.rs:583:35
[INFO] [stdout]     |
[INFO] [stdout] 583 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]     |                                   ^------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   `Display` is not local
[INFO] [stdout]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RunWithoutApiError`
[INFO] [stdout] 584 | enum RunWithoutApiError {
[INFO] [stdout]     |      ------------------ `RunWithoutApiError` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/firecracker/src/api_server_adapter.rs:24:35
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ApiServerError`
[INFO] [stdout] 25 | pub enum ApiServerError {
[INFO] [stdout]    |          -------------- `ApiServerError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/firecracker/src/seccomp.rs:20:35
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stdout]    |                                   ^------------------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FilterError`
[INFO] [stdout] 21 | pub enum FilterError {
[INFO] [stdout]    |          ----------- `FilterError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[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 `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 21s
[INFO] running `Command { std: "docker" "inspect" "21218b2a4ad25e32592b0d713743df52de18cd27cbb6b8952a7fbcca3591ac59", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "21218b2a4ad25e32592b0d713743df52de18cd27cbb6b8952a7fbcca3591ac59", kill_on_drop: false }`
[INFO] [stdout] 21218b2a4ad25e32592b0d713743df52de18cd27cbb6b8952a7fbcca3591ac59
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bd7d74411512a3dd3b35d2f699c51dd2557c7e7e" "test" "--frozen" "-Zbuild-dir-new-layout", kill_on_drop: false }`
[INFO] [stdout] 2188749f8274f8fcac8e8b98c09c95bb0a0be9a601188cf229600550b265c10a
[INFO] running `Command { std: "docker" "start" "-a" "2188749f8274f8fcac8e8b98c09c95bb0a0be9a601188cf229600550b265c10a", kill_on_drop: false }`
[INFO] [stderr] warning: unused field in patch for `kvm-bindings`: `features`
[INFO] [stderr]   |
[INFO] [stderr]   = help: configure `features` in the `dependencies` entry
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/utils/src/arg_parser.rs:15:50
[INFO] [stderr]    |
[INFO] [stderr] 15 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                                  ^------------------
[INFO] [stderr]    |                                                  |
[INFO] [stderr]    |                                                  `Display` is not local
[INFO] [stderr]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stderr] 16 | pub enum Error {
[INFO] [stderr]    |          ----- `Error` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/utils/src/arg_parser.rs:79:22
[INFO] [stderr]    |
[INFO] [stderr] 79 |     pub fn arguments(&self) -> &Arguments {
[INFO] [stderr]    |                      ^^^^^     ^^^^^^^^^^
[INFO] [stderr]    |                      |         ||
[INFO] [stderr]    |                      |         |the same lifetime is hidden here
[INFO] [stderr]    |                      |         the same lifetime is elided here
[INFO] [stderr]    |                      the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 79 |     pub fn arguments(&self) -> &Arguments<'_> {
[INFO] [stderr]    |                                          ++++
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/utils/src/kernel_version.rs:9:35
[INFO] [stderr]    |
[INFO] [stderr]  9 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stderr] 10 | pub enum Error {
[INFO] [stderr]    |          ----- `Error` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/utils/src/validators.rs:9:50
[INFO] [stderr]    |
[INFO] [stderr]  9 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                                  ^------------------
[INFO] [stderr]    |                                                  |
[INFO] [stderr]    |                                                  `Display` is not local
[INFO] [stderr]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stderr] 10 | pub enum Error {
[INFO] [stderr]    |          ----- `Error` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `utils` (lib) generated 4 warnings (run `cargo fix --lib -p utils` to apply 1 suggestion)
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/seccompiler/src/lib.rs:40:35
[INFO] [stderr]    |
[INFO] [stderr] 40 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeserializationError`
[INFO] [stderr] 41 | pub enum DeserializationError {
[INFO] [stderr]    |          -------------------- `DeserializationError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/seccompiler/src/lib.rs:47:50
[INFO] [stderr]    |
[INFO] [stderr] 47 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                                  ^------------------
[INFO] [stderr]    |                                                  |
[INFO] [stderr]    |                                                  `Display` is not local
[INFO] [stderr]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_InstallationError`
[INFO] [stderr] 48 | pub enum InstallationError {
[INFO] [stderr]    |          ----------------- `InstallationError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/seccompiler/src/backend.rs:98:46
[INFO] [stderr]    |
[INFO] [stderr] 98 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                              ^------------------
[INFO] [stderr]    |                                              |
[INFO] [stderr]    |                                              `Display` is not local
[INFO] [stderr]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_FilterError`
[INFO] [stderr] 99 | pub enum FilterError {
[INFO] [stderr]    |          ----------- `FilterError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/seccompiler/src/backend.rs:123:46
[INFO] [stderr]     |
[INFO] [stderr] 123 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]     |                                              ^------------------
[INFO] [stderr]     |                                              |
[INFO] [stderr]     |                                              `Display` is not local
[INFO] [stderr]     |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_TargetArchError`
[INFO] [stderr] 124 | pub enum TargetArchError {
[INFO] [stderr]     |          --------------- `TargetArchError` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/seccompiler/src/compiler.rs:35:46
[INFO] [stderr]    |
[INFO] [stderr] 35 | #[derive(Debug, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                              ^------------------
[INFO] [stderr]    |                                              |
[INFO] [stderr]    |                                              `Display` is not local
[INFO] [stderr]    |                                              move the `impl` block outside of this constant `_DERIVE_Display_FOR_CompilationError`
[INFO] [stderr] 36 | pub enum CompilationError {
[INFO] [stderr]    |          ---------------- `CompilationError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `seccompiler` (lib) generated 5 warnings
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/snapshot/src/lib.rs:47:35
[INFO] [stderr]    |
[INFO] [stderr] 47 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stderr] 48 | pub enum Error {
[INFO] [stderr]    |          ----- `Error` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `snapshot` (lib) generated 1 warning
[INFO] [stderr] warning: `utils` (lib) generated 4 warnings (4 duplicates)
[INFO] [stderr] warning: `seccompiler` (lib) generated 5 warnings (5 duplicates)
[INFO] [stderr] warning: unexpected `cfg` condition name: `kani`
[INFO] [stderr]   --> src/vmm/src/rate_limiter/mod.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 29 | #[cfg_attr(kani, kani::requires(x > 0 && y > 0))]
[INFO] [stderr]    |            ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `kani`
[INFO] [stderr]   --> src/vmm/src/rate_limiter/mod.rs:30:12
[INFO] [stderr]    |
[INFO] [stderr] 30 | #[cfg_attr(kani, kani::ensures(
[INFO] [stderr]    |            ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `kani`
[INFO] [stderr]    --> src/vmm/src/rate_limiter/mod.rs:531:7
[INFO] [stderr]     |
[INFO] [stderr] 531 | #[cfg(kani)]
[INFO] [stderr]     |       ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `kani`
[INFO] [stderr]   --> src/vmm/src/devices/virtio/iovec.rs:28:7
[INFO] [stderr]    |
[INFO] [stderr] 28 | #[cfg(kani)]
[INFO] [stderr]    |       ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `kani`
[INFO] [stderr]   --> src/vmm/src/devices/virtio/iovec.rs:30:11
[INFO] [stderr]    |
[INFO] [stderr] 30 | #[cfg(not(kani))]
[INFO] [stderr]    |           ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `kani`
[INFO] [stderr]    --> src/vmm/src/devices/virtio/iovec.rs:607:7
[INFO] [stderr]     |
[INFO] [stderr] 607 | #[cfg(kani)]
[INFO] [stderr]     |       ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `sockios::*`
[INFO] [stderr]   --> src/vmm/src/devices/virtio/net/gen/mod.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub use sockios::*;
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self::event_handler::*`
[INFO] [stderr]   --> src/vmm/src/devices/virtio/net/mod.rs:32:9
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub use self::event_handler::*;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `kani`
[INFO] [stderr]    --> src/vmm/src/devices/virtio/queue.rs:564:7
[INFO] [stderr]     |
[INFO] [stderr] 564 | #[cfg(kani)]
[INFO] [stderr]     |       ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self::event_handler::*`
[INFO] [stderr]   --> src/vmm/src/devices/virtio/virtio_block/mod.rs:17:9
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub use self::event_handler::*;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `kani`
[INFO] [stderr]    --> src/vmm/src/dumbo/pdu/ethernet.rs:240:7
[INFO] [stderr]     |
[INFO] [stderr] 240 | #[cfg(kani)]
[INFO] [stderr]     |       ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[INFO] [stderr]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(kani)");` to the top of the `build.rs`
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]   --> src/vmm/src/arch/x86_64/cpu_model.rs:27:19
[INFO] [stderr]    |
[INFO] [stderr] 27 |         let eax = unsafe { host_cpuid(0x1) }.eax;
[INFO] [stderr]    |                   ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/common.rs:24:9
[INFO] [stderr]    |
[INFO] [stderr] 24 |         unsafe { std::arch::x86_64::__get_cpuid_max(leaf & 0x8000_0000).0 };
[INFO] [stderr]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/mod.rs:80:5
[INFO] [stderr]    |
[INFO] [stderr] 80 |     unsafe { std::arch::x86_64::__cpuid_count(leaf, subleaf) }
[INFO] [stderr]    |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/vmm/src/lib.rs:197:35
[INFO] [stderr]     |
[INFO] [stderr] 197 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]     |                                   ^------------------
[INFO] [stderr]     |                                   |
[INFO] [stderr]     |                                   `Display` is not local
[INFO] [stderr]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VmmError`
[INFO] [stderr] 198 | pub enum VmmError {
[INFO] [stderr]     |          -------- `VmmError` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]     = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/vmm/src/lib.rs:266:35
[INFO] [stderr]     |
[INFO] [stderr] 266 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]     |                                   ^------------------
[INFO] [stderr]     |                                   |
[INFO] [stderr]     |                                   `Display` is not local
[INFO] [stderr]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_EmulateSerialInitError`
[INFO] [stderr] 267 | pub struct EmulateSerialInitError(#[from] std::io::Error);
[INFO] [stderr]     |            ---------------------- `EmulateSerialInitError` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/vmm/src/lib.rs:270:35
[INFO] [stderr]     |
[INFO] [stderr] 270 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]     |                                   ^------------------
[INFO] [stderr]     |                                   |
[INFO] [stderr]     |                                   `Display` is not local
[INFO] [stderr]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_StartVcpusError`
[INFO] [stderr] 271 | pub enum StartVcpusError {
[INFO] [stderr]     |          --------------- `StartVcpusError` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/vmm/src/lib.rs:279:35
[INFO] [stderr]     |
[INFO] [stderr] 279 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]     |                                   ^------------------
[INFO] [stderr]     |                                   |
[INFO] [stderr]     |                                   `Display` is not local
[INFO] [stderr]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DumpCpuConfigError`
[INFO] [stderr] 280 | pub enum DumpCpuConfigError {
[INFO] [stderr]     |          ------------------ `DumpCpuConfigError` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/arch/x86_64/mod.rs:38:50
[INFO] [stderr]    |
[INFO] [stderr] 38 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                                  ^------------------
[INFO] [stderr]    |                                                  |
[INFO] [stderr]    |                                                  `Display` is not local
[INFO] [stderr]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_ConfigurationError`
[INFO] [stderr] 39 | pub enum ConfigurationError {
[INFO] [stderr]    |          ------------------ `ConfigurationError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/arch/x86_64/interrupts.rs:13:35
[INFO] [stderr]    |
[INFO] [stderr] 13 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_InterruptError`
[INFO] [stderr] 14 | pub enum InterruptError {
[INFO] [stderr]    |          -------------- `InterruptError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/arch/x86_64/mptable.rs:39:50
[INFO] [stderr]    |
[INFO] [stderr] 39 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                                  ^------------------
[INFO] [stderr]    |                                                  |
[INFO] [stderr]    |                                                  `Display` is not local
[INFO] [stderr]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_MptableError`
[INFO] [stderr] 40 | pub enum MptableError {
[INFO] [stderr]    |          ------------ `MptableError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/arch/x86_64/msr.rs:16:50
[INFO] [stderr]    |
[INFO] [stderr] 16 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                                  ^------------------
[INFO] [stderr]    |                                                  |
[INFO] [stderr]    |                                                  `Display` is not local
[INFO] [stderr]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_MsrError`
[INFO] [stderr] 17 | /// MSR related errors.
[INFO] [stderr] 18 | pub enum MsrError {
[INFO] [stderr]    |          -------- `MsrError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/arch/x86_64/regs.rs:22:35
[INFO] [stderr]    |
[INFO] [stderr] 22 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RegsError`
[INFO] [stderr] 23 | pub enum RegsError {
[INFO] [stderr]    |          --------- `RegsError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/vmm/src/arch/x86_64/regs.rs:103:35
[INFO] [stderr]     |
[INFO] [stderr] 103 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stderr]     |                                   ^------------------
[INFO] [stderr]     |                                   |
[INFO] [stderr]     |                                   `Display` is not local
[INFO] [stderr]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SetupSpecialRegistersError`
[INFO] [stderr] 104 | pub enum SetupSpecialRegistersError {
[INFO] [stderr]     |          -------------------------- `SetupSpecialRegistersError` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/io_uring/mod.rs:34:35
[INFO] [stderr]    |
[INFO] [stderr] 34 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_IoUringError`
[INFO] [stderr] 35 | /// IoUring Error.
[INFO] [stderr] 36 | pub enum IoUringError {
[INFO] [stderr]    |          ------------ `IoUringError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/io_uring/queue/completion.rs:16:35
[INFO] [stderr]    |
[INFO] [stderr] 16 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_CQueueError`
[INFO] [stderr] 17 | /// CQueue Error.
[INFO] [stderr] 18 | pub enum CQueueError {
[INFO] [stderr]    |          ----------- `CQueueError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/io_uring/queue/mmap.rs:11:35
[INFO] [stderr]    |
[INFO] [stderr] 11 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MmapError`
[INFO] [stderr] 12 | pub enum MmapError {
[INFO] [stderr]    |          --------- `MmapError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/io_uring/queue/submission.rs:19:35
[INFO] [stderr]    |
[INFO] [stderr] 19 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_SQueueError`
[INFO] [stderr] 20 | /// SQueue Error.
[INFO] [stderr] 21 | pub enum SQueueError {
[INFO] [stderr]    |          ----------- `SQueueError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/rate_limiter/mod.rs:14:35
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_Error`
[INFO] [stderr] 15 | /// Describes the errors that may occur while handling rate limiter events.
[INFO] [stderr] 16 | pub enum Error {
[INFO] [stderr]    |          ----- `Error` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/builder.rs:68:35
[INFO] [stderr]    |
[INFO] [stderr] 68 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_StartMicrovmError`
[INFO] [stderr] 69 | pub enum StartMicrovmError {
[INFO] [stderr]    |          ----------------- `StartMicrovmError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/vmm/src/builder.rs:365:35
[INFO] [stderr]     |
[INFO] [stderr] 365 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]     |                                   ^------------------
[INFO] [stderr]     |                                   |
[INFO] [stderr]     |                                   `Display` is not local
[INFO] [stderr]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BuildMicrovmFromSnapshotError`
[INFO] [stderr] 366 | pub enum BuildMicrovmFromSnapshotError {
[INFO] [stderr]     |          ----------------------------- `BuildMicrovmFromSnapshotError` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/templates.rs:30:35
[INFO] [stderr]    |
[INFO] [stderr] 30 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GetCpuTemplateError`
[INFO] [stderr] 31 | pub enum GetCpuTemplateError {
[INFO] [stderr]    |          ------------------- `GetCpuTemplateError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/vmm/src/cpu_config/templates.rs:52:25
[INFO] [stderr]    |
[INFO] [stderr] 52 |     fn get_cpu_template(&self) -> Result<Cow<CustomCpuTemplate>, GetCpuTemplateError>;
[INFO] [stderr]    |                         ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                         |
[INFO] [stderr]    |                         the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 52 |     fn get_cpu_template(&self) -> Result<Cow<'_, CustomCpuTemplate>, GetCpuTemplateError>;
[INFO] [stderr]    |                                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/mod.rs:20:50
[INFO] [stderr]    |
[INFO] [stderr] 20 | #[derive(Debug, PartialEq, Eq, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                                  ^------------------
[INFO] [stderr]    |                                                  |
[INFO] [stderr]    |                                                  `Display` is not local
[INFO] [stderr]    |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_CpuConfigurationError`
[INFO] [stderr] 21 | pub enum CpuConfigurationError {
[INFO] [stderr]    |          --------------------- `CpuConfigurationError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/vmm/src/cpu_config/x86_64/cpuid/mod.rs:296:35
[INFO] [stderr]     |
[INFO] [stderr] 296 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stderr]     |                                   ^------------------
[INFO] [stderr]     |                                   |
[INFO] [stderr]     |                                   `Display` is not local
[INFO] [stderr]     |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_CpuidTryFromKvmCpuid`
[INFO] [stderr] 297 | pub enum CpuidTryFromKvmCpuid {
[INFO] [stderr]     |          -------------------- `CpuidTryFromKvmCpuid` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]  --> src/vmm/src/cpu_config/x86_64/cpuid/common.rs:6:35
[INFO] [stderr]   |
[INFO] [stderr] 6 | #[derive(Debug, thiserror::Error, displaydoc::Display, PartialEq, Eq)]
[INFO] [stderr]   |                                   ^------------------
[INFO] [stderr]   |                                   |
[INFO] [stderr]   |                                   `Display` is not local
[INFO] [stderr]   |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GetCpuidError`
[INFO] [stderr] 7 | pub enum GetCpuidError {
[INFO] [stderr]   |          ------------- `GetCpuidError` is not local
[INFO] [stderr]   |
[INFO] [stderr]   = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]   = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]   = 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] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:15:35
[INFO] [stderr]    |
[INFO] [stderr] 15 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NormalizeCpuidError`
[INFO] [stderr] 16 | pub enum NormalizeCpuidError {
[INFO] [stderr]    |          ------------------- `NormalizeCpuidError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:38:35
[INFO] [stderr]    |
[INFO] [stderr] 38 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_PassthroughCacheTopologyError`
[INFO] [stderr] 39 | pub enum PassthroughCacheTopologyError {
[INFO] [stderr]    |          ----------------------------- `PassthroughCacheTopologyError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:47:35
[INFO] [stderr]    |
[INFO] [stderr] 47 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FeatureEntryError`
[INFO] [stderr] 48 | pub enum FeatureEntryError {
[INFO] [stderr]    |          ----------------- `FeatureEntryError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:58:35
[INFO] [stderr]    |
[INFO] [stderr] 58 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedCacheTopologyError`
[INFO] [stderr] 59 | pub enum ExtendedCacheTopologyError {
[INFO] [stderr]    |          -------------------------- `ExtendedCacheTopologyError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/amd/normalize.rs:69:35
[INFO] [stderr]    |
[INFO] [stderr] 69 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedApicIdError`
[INFO] [stderr] 70 | pub enum ExtendedApicIdError {
[INFO] [stderr]    |          ------------------- `ExtendedApicIdError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/intel/normalize.rs:13:35
[INFO] [stderr]    |
[INFO] [stderr] 13 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NormalizeCpuidError`
[INFO] [stderr] 14 | pub enum NormalizeCpuidError {
[INFO] [stderr]    |          ------------------- `NormalizeCpuidError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/intel/normalize.rs:35:35
[INFO] [stderr]    |
[INFO] [stderr] 35 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeterministicCacheError`
[INFO] [stderr] 36 | pub enum DeterministicCacheError {
[INFO] [stderr]    |          ----------------------- `DeterministicCacheError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/vmm/src/cpu_config/x86_64/cpuid/intel/normalize.rs:231:50
[INFO] [stderr]     |
[INFO] [stderr] 231 | #[derive(Debug, Eq, PartialEq, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]     |                                                  ^------------------
[INFO] [stderr]     |                                                  |
[INFO] [stderr]     |                                                  `Display` is not local
[INFO] [stderr]     |                                                  move the `impl` block outside of this constant `_DERIVE_Display_FOR_DefaultBrandStringError`
[INFO] [stderr] 232 | pub enum DefaultBrandStringError {
[INFO] [stderr]     |          ----------------------- `DefaultBrandStringError` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:10:35
[INFO] [stderr]    |
[INFO] [stderr] 10 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_NormalizeCpuidError`
[INFO] [stderr] 11 | pub enum NormalizeCpuidError {
[INFO] [stderr]    |          ------------------- `NormalizeCpuidError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:29:35
[INFO] [stderr]    |
[INFO] [stderr] 29 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_VendorIdError`
[INFO] [stderr] 30 | pub enum VendorIdError {
[INFO] [stderr]    |          ------------- `VendorIdError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:36:35
[INFO] [stderr]    |
[INFO] [stderr] 36 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_FeatureInformationError`
[INFO] [stderr] 37 | pub enum FeatureInformationError {
[INFO] [stderr]    |          ----------------------- `FeatureInformationError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:51:35
[INFO] [stderr]    |
[INFO] [stderr] 51 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_GetMaxCpusPerPackageError`
[INFO] [stderr] 52 | pub enum GetMaxCpusPerPackageError {
[INFO] [stderr]    |          ------------------------- `GetMaxCpusPerPackageError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:61:35
[INFO] [stderr]    |
[INFO] [stderr] 61 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedTopologyError`
[INFO] [stderr] 62 | pub enum ExtendedTopologyError {
[INFO] [stderr]    |          --------------------- `ExtendedTopologyError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/cpuid/normalize.rs:76:35
[INFO] [stderr]    |
[INFO] [stderr] 76 | #[derive(Debug, thiserror::Error, displaydoc::Display, Eq, PartialEq)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ExtendedCacheFeaturesError`
[INFO] [stderr] 77 | pub enum ExtendedCacheFeaturesError {
[INFO] [stderr]    |          -------------------------- `ExtendedCacheFeaturesError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/vmm/src/cpu_config/x86_64/custom_cpu_template.rs:22:25
[INFO] [stderr]    |
[INFO] [stderr] 22 |     fn get_cpu_template(&self) -> Result<Cow<CustomCpuTemplate>, GetCpuTemplateError> {
[INFO] [stderr]    |                         ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                         |
[INFO] [stderr]    |                         the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 22 |     fn get_cpu_template(&self) -> Result<Cow<'_, CustomCpuTemplate>, GetCpuTemplateError> {
[INFO] [stderr]    |                                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/device_manager/legacy.rs:22:54
[INFO] [stderr]    |
[INFO] [stderr] 22 | #[derive(Debug, derive_more::From, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                                      ^------------------
[INFO] [stderr]    |                                                      |
[INFO] [stderr]    |                                                      `Display` is not local
[INFO] [stderr]    |                                                      move the `impl` block outside of this constant `_DERIVE_Display_FOR_LegacyDeviceError`
[INFO] [stderr] 23 | pub enum LegacyDeviceError {
[INFO] [stderr]    |          ----------------- `LegacyDeviceError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/device_manager/mmio.rs:38:35
[INFO] [stderr]    |
[INFO] [stderr] 38 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_MmioError`
[INFO] [stderr] 39 | pub enum MmioError {
[INFO] [stderr]    |          --------- `MmioError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/device_manager/persist.rs:53:35
[INFO] [stderr]    |
[INFO] [stderr] 53 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DevicePersistError`
[INFO] [stderr] 54 | pub enum DevicePersistError {
[INFO] [stderr]    |          ------------------ `DevicePersistError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/devices/mod.rs:34:35
[INFO] [stderr]    |
[INFO] [stderr] 34 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_DeviceError`
[INFO] [stderr] 35 | pub enum DeviceError {
[INFO] [stderr]    |          ----------- `DeviceError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/devices/bus.rs:15:35
[INFO] [stderr]    |
[INFO] [stderr] 15 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_BusError`
[INFO] [stderr] 16 | pub enum BusError {
[INFO] [stderr]    |          -------- `BusError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/devices/legacy/i8042.rs:18:35
[INFO] [stderr]    |
[INFO] [stderr] 18 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_I8042Error`
[INFO] [stderr] 19 | pub enum I8042Error {
[INFO] [stderr]    |          ---------- `I8042Error` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/devices/legacy/serial.rs:63:35
[INFO] [stderr]    |
[INFO] [stderr] 63 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_RawIOError`
[INFO] [stderr] 64 | pub enum RawIOError {
[INFO] [stderr]    |          ---------- `RawIOError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` may come from an old version of the `displaydoc` crate, try updating your dependency with `cargo update -p displaydoc`
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `displaydoc::Display` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/vmm/src/devices/virtio/mod.rs:63:35
[INFO] [stderr]    |
[INFO] [stderr] 63 | #[derive(Debug, thiserror::Error, displaydoc::Display)]
[INFO] [stderr]    |                                   ^------------------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Display` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this constant `_DERIVE_Display_FOR_ActivateError`
[INFO] [stderr] 64 | pub enum ActivateError {
[INFO] [stderr]    |          ------------- `ActivateError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `displaydoc::Display` defines the non-local `impl`, and may need to be changed
[WARN] too many lines in the log, truncating it
