[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 master#ec6f9a5b4413f74386267ef8efc93712c2ce6db6 for pr-155739
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjuhracode%2Ffirecracker" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-3-tc1/source/.cargo/config
[INFO] removed /workspace/builds/worker-3-tc1/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-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/juhracode/firecracker on toolchain ec6f9a5b4413f74386267ef8efc93712c2ce6db6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "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" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "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]     Updating git repository `https://github.com/firecracker-microvm/kvm-bindings`
[INFO] [stderr]     Updating git submodule `https://github.com/rust-vmm/rust-vmm-ci.git`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Updating git repository `https://github.com/firecracker-microvm/micro-http`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded thiserror-impl v1.0.56
[INFO] [stderr]   Downloaded is-terminal v0.4.10
[INFO] [stderr]   Downloaded thiserror v1.0.56
[INFO] [stderr]   Downloaded windows-targets v0.52.0
[INFO] [stderr]   Downloaded mirai-annotations v1.12.0
[INFO] [stderr]   Downloaded hermit-abi v0.3.3
[INFO] [stderr]   Downloaded fs_extra v1.3.0
[INFO] [stderr]   Downloaded userfaultfd-sys v0.5.0
[INFO] [stderr]   Downloaded vm-memory v0.13.1
[INFO] [stderr]   Downloaded either v1.9.0
[INFO] [stderr]   Downloaded home v0.5.9
[INFO] [stderr]   Downloaded rand_xorshift v0.3.0
[INFO] [stderr]   Downloaded cast v0.3.0
[INFO] [stderr]   Downloaded ciborium-ll v0.2.1
[INFO] [stderr]   Downloaded timerfd v1.5.0
[INFO] [stderr]   Downloaded unarray v0.1.4
[INFO] [stderr]   Downloaded ciborium-io v0.2.1
[INFO] [stderr]   Downloaded ghash v0.5.0
[INFO] [stderr]   Downloaded subtle v2.5.0
[INFO] [stderr]   Downloaded winapi-util v0.1.6
[INFO] [stderr]   Downloaded serde-big-array v0.5.1
[INFO] [stderr]   Downloaded device_tree v1.1.0
[INFO] [stderr]   Downloaded oorandom v11.1.3
[INFO] [stderr]   Downloaded clap_lex v0.6.0
[INFO] [stderr]   Downloaded utf8parse v0.2.1
[INFO] [stderr]   Downloaded anstyle-wincon v3.0.2
[INFO] [stderr]   Downloaded aes-gcm v0.10.3
[INFO] [stderr]   Downloaded peeking_take_while v0.1.2
[INFO] [stderr]   Downloaded serde_spanned v0.6.5
[INFO] [stderr]   Downloaded shlex v1.2.0
[INFO] [stderr]   Downloaded universal-hash v0.5.1
[INFO] [stderr]   Downloaded aead v0.5.2
[INFO] [stderr]   Downloaded which v4.4.2
[INFO] [stderr]   Downloaded anstyle v1.0.4
[INFO] [stderr]   Downloaded inout v0.1.3
[INFO] [stderr]   Downloaded clap-num v1.0.2
[INFO] [stderr]   Downloaded toml_datetime v0.6.5
[INFO] [stderr]   Downloaded polyval v0.6.1
[INFO] [stderr]   Downloaded io-lifetimes v1.0.11
[INFO] [stderr]   Downloaded ctr v0.9.2
[INFO] [stderr]   Downloaded userfaultfd v0.8.1
[INFO] [stderr]   Downloaded lazycell v1.3.0
[INFO] [stderr]   Downloaded libloading v0.8.1
[INFO] [stderr]   Downloaded glob v0.3.1
[INFO] [stderr]   Downloaded cexpr v0.6.0
[INFO] [stderr]   Downloaded semver v1.0.21
[INFO] [stderr]   Downloaded tinytemplate v1.2.1
[INFO] [stderr]   Downloaded clap_derive v4.4.7
[INFO] [stderr]   Downloaded colorchoice v1.0.0
[INFO] [stderr]   Downloaded anstyle-query v1.0.2
[INFO] [stderr]   Downloaded anes v0.1.6
[INFO] [stderr]   Downloaded untrusted v0.7.1
[INFO] [stderr]   Downloaded dunce v1.0.4
[INFO] [stderr]   Downloaded cargo_toml v0.18.0
[INFO] [stderr]   Downloaded vm-superio v0.7.0
[INFO] [stderr]   Downloaded criterion-plot v0.5.0
[INFO] [stderr]   Downloaded cipher v0.4.4
[INFO] [stderr]   Downloaded toml v0.8.8
[INFO] [stderr]   Downloaded uuid v1.6.1
[INFO] [stderr]   Downloaded indexmap v2.1.0
[INFO] [stderr]   Downloaded displaydoc v0.2.4
[INFO] [stderr]   Downloaded walkdir v2.4.0
[INFO] [stderr]   Downloaded proc-macro2 v1.0.76
[INFO] [stderr]   Downloaded toml_edit v0.21.0
[INFO] [stderr]   Downloaded termcolor v1.4.1
[INFO] [stderr]   Downloaded aes v0.8.3
[INFO] [stderr]   Downloaded winnow v0.5.34
[INFO] [stderr]   Downloaded userfaultfd v0.7.0
[INFO] [stderr]   Downloaded clang-sys v1.7.0
[INFO] [stderr]   Downloaded anstream v0.6.7
[INFO] [stderr]   Downloaded ciborium v0.2.1
[INFO] [stderr]   Downloaded half v1.8.2
[INFO] [stderr]   Downloaded zeroize v1.7.0
[INFO] [stderr]   Downloaded cmake v0.1.50
[INFO] [stderr]   Downloaded env_logger v0.10.1
[INFO] [stderr]   Downloaded ryu v1.0.16
[INFO] [stderr]   Downloaded derive_more v0.99.17
[INFO] [stderr]   Downloaded crc64 v2.0.0
[INFO] [stderr]   Downloaded smallvec v1.12.0
[INFO] [stderr]   Downloaded linux-loader v0.10.0
[INFO] [stderr]   Downloaded anstyle-parse v0.2.3
[INFO] [stderr]   Downloaded num-traits v0.2.17
[INFO] [stderr]   Downloaded bitflags v2.4.1
[INFO] [stderr]   Downloaded cc v1.0.83
[INFO] [stderr]   Downloaded serde_derive v1.0.195
[INFO] [stderr]   Downloaded prettyplease v0.2.16
[INFO] [stderr]   Downloaded kvm-ioctls v0.16.0
[INFO] [stderr]   Downloaded vm-fdt v0.2.0
[INFO] [stderr]   Downloaded vm-allocator v0.1.0
[INFO] [stderr]   Downloaded vmm-sys-util v0.12.1
[INFO] [stderr]   Downloaded clap v4.4.17
[INFO] [stderr]   Downloaded serde v1.0.195
[INFO] [stderr]   Downloaded vm-memory v0.14.0
[INFO] [stderr]   Downloaded event-manager v0.4.0
[INFO] [stderr]   Downloaded criterion v0.5.1
[INFO] [stderr]   Downloaded libm v0.2.8
[INFO] [stderr]   Downloaded aws-lc-rs v1.5.2
[INFO] [stderr]   Downloaded serde_json v1.0.111
[INFO] [stderr]   Downloaded aho-corasick v1.1.2
[INFO] [stderr]   Downloaded itertools v0.12.0
[INFO] [stderr]   Downloaded clap_builder v4.4.17
[INFO] [stderr]   Downloaded proptest v1.4.0
[INFO] [stderr]   Downloaded bindgen v0.68.1
[INFO] [stderr]   Downloaded syn v2.0.48
[INFO] [stderr]   Downloaded vhost v0.10.0
[INFO] [stderr]   Downloaded regex v1.10.2
[INFO] [stderr]   Downloaded nix v0.27.1
[INFO] [stderr]   Downloaded regex-syntax v0.8.2
[INFO] [stderr]   Downloaded rustix v0.37.27
[INFO] [stderr]   Downloaded rustix v0.38.28
[INFO] [stderr]   Downloaded windows_x86_64_gnullvm v0.52.0
[INFO] [stderr]   Downloaded windows_aarch64_gnullvm v0.52.0
[INFO] [stderr]   Downloaded regex-automata v0.4.3
[INFO] [stderr]   Downloaded libc v0.2.152
[INFO] [stderr]   Downloaded windows_x86_64_msvc v0.52.0
[INFO] [stderr]   Downloaded windows_aarch64_msvc v0.52.0
[INFO] [stderr]   Downloaded windows_x86_64_gnu v0.52.0
[INFO] [stderr]   Downloaded windows_i686_msvc v0.52.0
[INFO] [stderr]   Downloaded windows_i686_gnu v0.52.0
[INFO] [stderr]   Downloaded linux-raw-sys v0.3.8
[INFO] [stderr]   Downloaded linux-raw-sys v0.4.12
[INFO] [stderr]   Downloaded windows-sys v0.48.0
[INFO] [stderr]   Downloaded aws-lc-sys v0.12.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1889615904fd05e1a1bd77101e478bc5bf4c86b9e903c8f8370a2df63a32da18
[INFO] running `Command { std: "docker" "start" "-a" "1889615904fd05e1a1bd77101e478bc5bf4c86b9e903c8f8370a2df63a32da18", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1889615904fd05e1a1bd77101e478bc5bf4c86b9e903c8f8370a2df63a32da18", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1889615904fd05e1a1bd77101e478bc5bf4c86b9e903c8f8370a2df63a32da18", kill_on_drop: false }`
[INFO] [stdout] 1889615904fd05e1a1bd77101e478bc5bf4c86b9e903c8f8370a2df63a32da18
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 856c4fc5786b797e7132be67c70c72531595b8206557732b135db7ba31985725
[INFO] running `Command { std: "docker" "start" "-a" "856c4fc5786b797e7132be67c70c72531595b8206557732b135db7ba31985725", 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 thiserror v1.0.56
[INFO] [stderr]    Compiling serde v1.0.195
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling typenum v1.17.0
[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 generic-array v0.14.7
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling clang-sys v1.7.0
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling libloading v0.8.1
[INFO] [stderr]    Compiling bitflags v2.4.1
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling bindgen v0.68.1
[INFO] [stderr]    Compiling cmake v0.1.50
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling shlex v1.2.0
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling dunce v1.0.4
[INFO] [stderr]    Compiling peeking_take_while v0.1.2
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling paste v1.0.14
[INFO] [stderr]    Compiling subtle v2.5.0
[INFO] [stderr]    Compiling cpufeatures v0.2.12
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling aws-lc-sys v0.12.1
[INFO] [stderr]    Compiling inout v0.1.3
[INFO] [stderr]    Compiling io-lifetimes v1.0.11
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling ryu v1.0.16
[INFO] [stderr]    Compiling regex-automata v0.4.3
[INFO] [stderr]    Compiling opaque-debug v0.3.0
[INFO] [stderr]    Compiling semver v1.0.21
[INFO] [stderr]    Compiling itoa v1.0.10
[INFO] [stderr]    Compiling rustix v0.37.27
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling rustix v0.38.28
[INFO] [stderr]    Compiling polyval v0.6.1
[INFO] [stderr]    Compiling regex v1.10.2
[INFO] [stderr]    Compiling linux-raw-sys v0.3.8
[INFO] [stderr]    Compiling aws-lc-rs v1.5.2
[INFO] [stderr]    Compiling kvm-ioctls v0.16.0
[INFO] [stderr]    Compiling utf8parse v0.2.1
[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 derive_more v0.99.17
[INFO] [stderr]    Compiling ghash v0.5.0
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling aes v0.8.3
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling nix v0.27.1
[INFO] [stderr]    Compiling anstyle-query v1.0.2
[INFO] [stderr]    Compiling crc64 v2.0.0
[INFO] [stderr]    Compiling colorchoice v1.0.0
[INFO] [stderr]    Compiling anstyle v1.0.4
[INFO] [stderr]    Compiling zeroize v1.7.0
[INFO] [stderr]    Compiling mirai-annotations v1.12.0
[INFO] [stderr]    Compiling untrusted v0.7.1
[INFO] [stderr]    Compiling vmm-sys-util v0.12.1
[INFO] [stderr]    Compiling anstream v0.6.7
[INFO] [stderr]    Compiling timerfd v1.5.0
[INFO] [stderr]    Compiling aes-gcm v0.10.3
[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 strsim v0.10.0
[INFO] [stderr]    Compiling smallvec v1.12.0
[INFO] [stderr]    Compiling memfd v0.6.4
[INFO] [stderr]    Compiling vm-superio v0.7.0
[INFO] [stderr]    Compiling base64 v0.21.7
[INFO] [stderr]    Compiling clap_lex v0.6.0
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]    Compiling clap_builder v4.4.17
[INFO] [stderr]    Compiling clap_derive v4.4.7
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling vm-memory v0.13.1
[INFO] [stderr]    Compiling vm-memory v0.14.0
[INFO] [stderr]    Compiling linux-loader v0.10.0
[INFO] [stderr]    Compiling vm-allocator v0.1.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling walkdir v2.4.0
[INFO] [stderr]    Compiling itertools v0.12.0
[INFO] [stderr]    Compiling clap v4.4.17
[INFO] [stderr]    Compiling userfaultfd-sys v0.5.0
[INFO] [stderr]    Compiling userfaultfd v0.7.0
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling serde-big-array v0.5.1
[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 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 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] [stderr]    Compiling vhost v0.10.0
[INFO] [stderr]    Compiling seccompiler v1.7.0-dev (/opt/rustwide/workdir/src/seccompiler)
[INFO] [stderr]    Compiling log v0.4.20
[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/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 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/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 clippy-tracing v0.1.0 (/opt/rustwide/workdir/src/clippy-tracing)
[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] [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 32 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 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: 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 2m 42s
[INFO] running `Command { std: "docker" "inspect" "856c4fc5786b797e7132be67c70c72531595b8206557732b135db7ba31985725", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "856c4fc5786b797e7132be67c70c72531595b8206557732b135db7ba31985725", kill_on_drop: false }`
[INFO] [stdout] 856c4fc5786b797e7132be67c70c72531595b8206557732b135db7ba31985725
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 26f0b84541c10c83d0d6826d550aa7b6d61d94e85f80507f9f204dfc0c840899
[INFO] running `Command { std: "docker" "start" "-a" "26f0b84541c10c83d0d6826d550aa7b6d61d94e85f80507f9f204dfc0c840899", 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 libc v0.2.152
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling ryu v1.0.16
[INFO] [stderr]    Compiling itoa v1.0.10
[INFO] [stderr]    Compiling proc-macro2 v1.0.76
[INFO] [stderr]    Compiling libloading v0.8.1
[INFO] [stderr]    Compiling bitflags v2.4.1
[INFO] [stderr]    Compiling subtle v2.5.0
[INFO] [stderr]    Compiling cpufeatures v0.2.12
[INFO] [stderr]    Compiling opaque-debug v0.3.0
[INFO] [stderr]    Compiling clang-sys v1.7.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 crc64 v2.0.0
[INFO] [stderr]    Compiling untrusted v0.7.1
[INFO] [stderr]    Compiling mirai-annotations v1.12.0
[INFO] [stderr]    Compiling rustix v0.38.28
[INFO] [stderr]    Compiling zeroize v1.7.0
[INFO] [stderr]    Compiling smallvec v1.12.0
[INFO] [stderr]    Compiling hashbrown v0.14.3
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling base64 v0.21.7
[INFO] [stderr]    Compiling vm-superio v0.7.0
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling nix v0.27.1
[INFO] [stderr]    Compiling io-lifetimes v1.0.11
[INFO] [stderr]    Compiling rustix v0.37.27
[INFO] [stderr]    Compiling aws-lc-sys v0.12.1
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling inout v0.1.3
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling polyval v0.6.1
[INFO] [stderr]    Compiling aes v0.8.3
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling ghash v0.5.0
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling indexmap v2.1.0
[INFO] [stderr]    Compiling aes-gcm v0.10.3
[INFO] [stderr]    Compiling aws-lc-rs v1.5.2
[INFO] [stderr]    Compiling winnow v0.5.34
[INFO] [stderr]    Compiling timerfd v1.5.0
[INFO] [stderr]    Compiling memfd v0.6.4
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling utf8parse v0.2.1
[INFO] [stderr]    Compiling anstyle-parse v0.2.3
[INFO] [stderr]    Compiling anstyle v1.0.4
[INFO] [stderr]    Compiling anstyle-query v1.0.2
[INFO] [stderr]    Compiling colorchoice v1.0.0
[INFO] [stderr]    Compiling clap_lex v0.6.0
[INFO] [stderr]    Compiling anstream v0.6.7
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling clap_builder v4.4.17
[INFO] [stderr]    Compiling getrandom v0.2.12
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling walkdir v2.4.0
[INFO] [stderr]    Compiling itertools v0.12.0
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]    Compiling regex-automata v0.4.3
[INFO] [stderr]    Compiling bindgen v0.68.1
[INFO] [stderr]    Compiling uuid v1.6.1
[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 regex v1.10.2
[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 linux-loader v0.10.0
[INFO] [stderr]    Compiling vm-allocator v0.1.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 userfaultfd-sys v0.5.0
[INFO] [stderr]    Compiling userfaultfd v0.7.0
[INFO] [stderr]    Compiling userfaultfd v0.8.1
[INFO] [stderr]    Compiling serde-big-array v0.5.1
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling semver v1.0.21
[INFO] [stderr]    Compiling serde_json v1.0.111
[INFO] [stderr]    Compiling utils v0.1.0 (/opt/rustwide/workdir/src/utils)
[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 log v0.4.20
[INFO] [stderr]    Compiling kvm-bindings v0.7.0 (https://github.com/firecracker-microvm/kvm-bindings?tag=v0.7.0-2#60cc04e2)
[INFO] [stderr]    Compiling snapshot v0.1.0 (/opt/rustwide/workdir/src/snapshot)
[INFO] [stderr]    Compiling event-manager v0.4.0
[INFO] [stderr]    Compiling micro_http v0.1.0 (https://github.com/firecracker-microvm/micro-http#e75dfa1e)
[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 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/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 toml_datetime v0.6.5
[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 serde_spanned v0.6.5
[INFO] [stderr]    Compiling toml_edit v0.21.0
[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/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 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/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] [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: 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] [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 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 32 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 32 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/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/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] [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] [stderr]    Compiling snapshot-editor v1.7.0-dev (/opt/rustwide/workdir/src/snapshot-editor)
[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: 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: 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 `test` profile [unoptimized + debuginfo] target(s) in 3m 02s
[INFO] running `Command { std: "docker" "inspect" "26f0b84541c10c83d0d6826d550aa7b6d61d94e85f80507f9f204dfc0c840899", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "26f0b84541c10c83d0d6826d550aa7b6d61d94e85f80507f9f204dfc0c840899", kill_on_drop: false }`
[INFO] [stdout] 26f0b84541c10c83d0d6826d550aa7b6d61d94e85f80507f9f204dfc0c840899
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 4806cdfa52fe2c1bc88b7dca5775f01d04e2e81d9b76df4f0402b797be4566af
[INFO] running `Command { std: "docker" "start" "-a" "4806cdfa52fe2c1bc88b7dca5775f01d04e2e81d9b76df4f0402b797be4566af", 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: `utils` (lib) generated 4 warnings (4 duplicates)
[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: `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 32 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`
[WARN] too many lines in the log, truncating it
