[INFO] cloning repository https://github.com/Lej77/cast_trait_object
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Lej77/cast_trait_object" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLej77%2Fcast_trait_object", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLej77%2Fcast_trait_object'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 49f603fe8b5782c9e222e1242dacf8b3b05cc0de
[INFO] testing Lej77/cast_trait_object/49f603fe8b5782c9e222e1242dacf8b3b05cc0de against nightly-2024-10-28+rustflags=-Zrandomize-layout for randomize-layout
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLej77%2Fcast_trait_object" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/Lej77/cast_trait_object on toolchain nightly-2024-10-28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/Lej77/cast_trait_object
[INFO] finished tweaking git repo https://github.com/Lej77/cast_trait_object
[INFO] tweaked toml for git repo https://github.com/Lej77/cast_trait_object written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/Lej77/cast_trait_object 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" "+nightly-2024-10-28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5188ba4620fe68376ba998e9485f6376b98096b6b84d40b32bfc379eaa791d21
[INFO] running `Command { std: "docker" "start" "-a" "5188ba4620fe68376ba998e9485f6376b98096b6b84d40b32bfc379eaa791d21", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5188ba4620fe68376ba998e9485f6376b98096b6b84d40b32bfc379eaa791d21", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5188ba4620fe68376ba998e9485f6376b98096b6b84d40b32bfc379eaa791d21", kill_on_drop: false }`
[INFO] [stdout] 5188ba4620fe68376ba998e9485f6376b98096b6b84d40b32bfc379eaa791d21
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Zrandomize-layout" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 936b9181da2f81e1aebc493789cc07884d59cfa0be92ee5bfc01bceaf1d7dac1
[INFO] running `Command { std: "docker" "start" "-a" "936b9181da2f81e1aebc493789cc07884d59cfa0be92ee5bfc01bceaf1d7dac1", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.24
[INFO] [stderr]    Compiling version_check v0.9.2
[INFO] [stderr]    Compiling unicode-xid v0.2.1
[INFO] [stderr]    Compiling serde v1.0.119
[INFO] [stderr]    Compiling syn v1.0.58
[INFO] [stderr]    Compiling either v1.6.1
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling quote v1.0.8
[INFO] [stderr]    Compiling toml v0.5.8
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]    Compiling cast_trait_object_macros v0.1.3 (/opt/rustwide/workdir/cast_trait_object_macros)
[INFO] [stderr]    Compiling cast_trait_object v0.1.3 (/opt/rustwide/workdir/cast_trait_object)
[INFO] [stderr]    Compiling external_tests v0.1.0 (/opt/rustwide/workdir/external_tests)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^---^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |          |
[INFO] [stdout]    |     |          `Sub` is not local
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^----^^^^^^^^^^
[INFO] [stdout]    |     |               |
[INFO] [stdout]    |     |               `Sub2` is not local
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^------^^
[INFO] [stdout]    |     |                     |
[INFO] [stdout]    |     |                     `SubSub` is not local
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     #[dyn_upcast]
[INFO] [stdout]    |     -^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     #[dyn_upcast]
[INFO] [stdout]    |     -^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     #[dyn_upcast]
[INFO] [stdout]    |     -^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 27 |     pub trait Super {}
[INFO] [stdout]    |               ----- `Super` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     #[cfg_attr(feature = "proc-macros", dyn_upcast)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:47:41
[INFO] [stdout]    |
[INFO] [stdout] 47 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:47:41
[INFO] [stdout]    |
[INFO] [stdout] 47 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:47:41
[INFO] [stdout]    |
[INFO] [stdout] 47 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:54:41
[INFO] [stdout]    |
[INFO] [stdout] 54 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:54:41
[INFO] [stdout]    |
[INFO] [stdout] 54 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:54:41
[INFO] [stdout]    |
[INFO] [stdout] 54 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:54:41
[INFO] [stdout]    |
[INFO] [stdout] 54 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     #[cfg_attr(feature = "proc-macros", dyn_upcast(Super))]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:60:41
[INFO] [stdout]    |
[INFO] [stdout] 60 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:60:41
[INFO] [stdout]    |
[INFO] [stdout] 60 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:60:41
[INFO] [stdout]    |
[INFO] [stdout] 60 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:69:41
[INFO] [stdout]    |
[INFO] [stdout] 69 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:69:41
[INFO] [stdout]    |
[INFO] [stdout] 69 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:69:41
[INFO] [stdout]    |
[INFO] [stdout] 69 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:69:41
[INFO] [stdout]    |
[INFO] [stdout] 69 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     #[dyn_cast(Sub)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SuperToSubDynCastConfig` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     #[dyn_cast(Sub)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SuperToSubDynCastConfig` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     #[dyn_cast(Sub)]
[INFO] [stdout]    |     -^^^^^^^^^^---^^
[INFO] [stdout]    |     |          |
[INFO] [stdout]    |     |          `Sub` is not local
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     #[dyn_upcast]
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     #[dyn_upcast]
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     #[dyn_upcast]
[INFO] [stdout]    |     -^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 85 |     trait Super {}
[INFO] [stdout]    |           ----- `Super` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 89 |     #[dyn_upcast(Super)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 88 |     #[dyn_cast(Super => Sub)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     #[dyn_upcast(Super)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 93 |     #[dyn_cast(Super => Sub)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         #[dyn_upcast]
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSuper_853e9f102bbb9075_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         #[dyn_upcast]
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSuper_853e9f102bbb9075_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfigTargetTest` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         #[dyn_upcast]
[INFO] [stdout]     |         -^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `Super` is not local
[INFO] [stdout]     |         `GetDynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout] 112 |         trait Super<T> {}
[INFO] [stdout]     |               ----- `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_1d08e4229f0c4a3_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_1d08e4229f0c4a3_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfigTargetTest` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         -^^^^^^^^^^---^^^^^
[INFO] [stdout]     |         |          |
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `Super` is not local
[INFO] [stdout]     |         `GetDynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:125:9
[INFO] [stdout]     |
[INFO] [stdout] 125 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         ^^^^^^^^^^^---^^^^^
[INFO] [stdout]     |         |          |
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `DerivedDynCast` is not local
[INFO] [stdout]     |         `ConcreteDynCastConfig` is not local
[INFO] [stdout]     |         `Config` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 126 |         impl<T: Clone> Super<T> for TestSuper where T: core::fmt::Display {}
[INFO] [stdout]     |                        -----        --------- `TestSuper` is not local
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:124:9
[INFO] [stdout]     |
[INFO] [stdout] 124 |         #[dyn_upcast]
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `DerivedDynCast` is not local
[INFO] [stdout]     |         `ConcreteDynCastConfig` is not local
[INFO] [stdout]     |         `Config` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 125 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout] 126 |         impl<T: Clone> Super<T> for TestSuper where T: core::fmt::Display {}
[INFO] [stdout]     |                        -----        --------- `TestSuper` is not local
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:130:9
[INFO] [stdout]     |
[INFO] [stdout] 130 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         ^^^^^^^^^^^---^^^^^
[INFO] [stdout]     |         |          |
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `DerivedDynCast` is not local
[INFO] [stdout]     |         `ConcreteDynCastConfig` is not local
[INFO] [stdout]     |         `Config` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 131 |         impl<T> Super<T> for TestSub {}
[INFO] [stdout]     |                 -----        ------- `TestSub` is not local
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |         #[dyn_upcast]
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `DerivedDynCast` is not local
[INFO] [stdout]     |         `ConcreteDynCastConfig` is not local
[INFO] [stdout]     |         `Config` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 130 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout] 131 |         impl<T> Super<T> for TestSub {}
[INFO] [stdout]     |                 -----        ------- `TestSub` is not local
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 139 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_b44d5e6e48c20758_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 139 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_b44d5e6e48c20758_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfigTargetTest` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 139 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stdout]     |         -^^^^^^^^^^---^^^^^^^^----^^^
[INFO] [stdout]     |         |          |          |
[INFO] [stdout]     |         |          |          `Test` is not local
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `Super` is not local
[INFO] [stdout]     |         `GetDynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_b55641dd2f27bd22_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_b55641dd2f27bd22_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfigTargetTest` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stdout]     |         -^^^^^^^^^^---^^^^^^^^^^^^^
[INFO] [stdout]     |         |          |
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `Super` is not local
[INFO] [stdout]     |         `GetDynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:143:9
[INFO] [stdout]     |
[INFO] [stdout] 143 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SelfType` is not local
[INFO] [stdout]     |         `DynCast` is not local
[INFO] [stdout]     |         `__ConfigType` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:142:9
[INFO] [stdout]     |
[INFO] [stdout] 142 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SelfType` is not local
[INFO] [stdout]     |         `DynCast` is not local
[INFO] [stdout]     |         `__ConfigType` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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 4.20s
[INFO] running `Command { std: "docker" "inspect" "936b9181da2f81e1aebc493789cc07884d59cfa0be92ee5bfc01bceaf1d7dac1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "936b9181da2f81e1aebc493789cc07884d59cfa0be92ee5bfc01bceaf1d7dac1", kill_on_drop: false }`
[INFO] [stdout] 936b9181da2f81e1aebc493789cc07884d59cfa0be92ee5bfc01bceaf1d7dac1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Zrandomize-layout" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a92a72a212a75c5daf0086f4295a649a1dbb3fdce45ac620db15ac9b84731208
[INFO] running `Command { std: "docker" "start" "-a" "a92a72a212a75c5daf0086f4295a649a1dbb3fdce45ac620db15ac9b84731208", kill_on_drop: false }`
[INFO] [stderr]    Compiling cast_trait_object_macros v0.1.3 (/opt/rustwide/workdir/cast_trait_object_macros)
[INFO] [stderr]    Compiling cast_trait_object v0.1.3 (/opt/rustwide/workdir/cast_trait_object)
[INFO] [stderr]    Compiling external_tests v0.1.0 (/opt/rustwide/workdir/external_tests)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1641:13
[INFO] [stdout]      |
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] 1641 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout] 1642 | |             $crate::DynCastConfig
[INFO] [stdout]      | |             --------------------- `DynCastConfig` is not local
[INFO] [stdout] 1643 | |             for
[INFO] [stdout] 1644 | |             $config_type
[INFO] [stdout]      | |________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1673 |               $crate::impl_dyn_cast_config!(for<> __ConfigType = $source_trait => $target_trait);
[INFO] [stdout]      |                                                   ------------ `__ConfigType` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1680 | /     create_dyn_cast_config!(
[INFO] [stdout] 1681 | |         /// Can have attributes on the generated config struct.
[INFO] [stdout] 1682 | |         #[derive(Clone)]
[INFO] [stdout] 1683 | |         UpcastConfig = Super => Super
[INFO] [stdout] 1684 | |     );
[INFO] [stdout]      | |_____- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1651:13
[INFO] [stdout]      |
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1651 | /             impl< $($lifetime,)* $($generics,)*  __T>
[INFO] [stdout] 1652 | |             $crate::DynCastConfigTargetTest<__T>
[INFO] [stdout]      | |             ------------------------------- `DynCastConfigTargetTest` is not local
[INFO] [stdout] 1653 | |             for
[INFO] [stdout] 1654 | |             $config_type
[INFO] [stdout]      | |________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1673 |               $crate::impl_dyn_cast_config!(for<> __ConfigType = $source_trait => $target_trait);
[INFO] [stdout]      |                                                   ------------ `__ConfigType` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1680 | /     create_dyn_cast_config!(
[INFO] [stdout] 1681 | |         /// Can have attributes on the generated config struct.
[INFO] [stdout] 1682 | |         #[derive(Clone)]
[INFO] [stdout] 1683 | |         UpcastConfig = Super => Super
[INFO] [stdout] 1684 | |     );
[INFO] [stdout]      | |_____- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1660:13
[INFO] [stdout]      |
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1660 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout] 1661 | |             $crate::GetDynCastConfig<dyn $target_trait>
[INFO] [stdout]      | |             ------------------------ `GetDynCastConfig` is not local
[INFO] [stdout] 1662 | |             for
[INFO] [stdout] 1663 | |             dyn $source_trait
[INFO] [stdout]      | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1680 | /     create_dyn_cast_config!(
[INFO] [stdout] 1681 | |         /// Can have attributes on the generated config struct.
[INFO] [stdout] 1682 | |         #[derive(Clone)]
[INFO] [stdout] 1683 | |         UpcastConfig = Super => Super
[INFO] [stdout]      | |                        -----    ----- `Super` is not local
[INFO] [stdout]      | |                        |
[INFO] [stdout]      | |                        `Super` is not local
[INFO] [stdout] 1684 | |     );
[INFO] [stdout]      | |_____- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1641:13
[INFO] [stdout]      |
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] 1641 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout] 1642 | |             $crate::DynCastConfig
[INFO] [stdout]      | |             --------------------- `DynCastConfig` is not local
[INFO] [stdout] 1643 | |             for
[INFO] [stdout] 1644 | |             $config_type
[INFO] [stdout]      | |________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1673 |               $crate::impl_dyn_cast_config!(for<> __ConfigType = $source_trait => $target_trait);
[INFO] [stdout]      |                                                   ------------ `__ConfigType` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1685 | /     create_dyn_cast_config!(
[INFO] [stdout] 1686 | |         /// Can have attributes on the generated config struct.
[INFO] [stdout] 1687 | |         #[derive(Clone)]
[INFO] [stdout] 1688 | |         SuperConfig = Super => Sub
[INFO] [stdout] 1689 | |     );
[INFO] [stdout]      | |_____- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1651:13
[INFO] [stdout]      |
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1651 | /             impl< $($lifetime,)* $($generics,)*  __T>
[INFO] [stdout] 1652 | |             $crate::DynCastConfigTargetTest<__T>
[INFO] [stdout]      | |             ------------------------------- `DynCastConfigTargetTest` is not local
[INFO] [stdout] 1653 | |             for
[INFO] [stdout] 1654 | |             $config_type
[INFO] [stdout]      | |________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1673 |               $crate::impl_dyn_cast_config!(for<> __ConfigType = $source_trait => $target_trait);
[INFO] [stdout]      |                                                   ------------ `__ConfigType` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1685 | /     create_dyn_cast_config!(
[INFO] [stdout] 1686 | |         /// Can have attributes on the generated config struct.
[INFO] [stdout] 1687 | |         #[derive(Clone)]
[INFO] [stdout] 1688 | |         SuperConfig = Super => Sub
[INFO] [stdout] 1689 | |     );
[INFO] [stdout]      | |_____- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1660:13
[INFO] [stdout]      |
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1660 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout] 1661 | |             $crate::GetDynCastConfig<dyn $target_trait>
[INFO] [stdout]      | |             ------------------------ `GetDynCastConfig` is not local
[INFO] [stdout] 1662 | |             for
[INFO] [stdout] 1663 | |             dyn $source_trait
[INFO] [stdout]      | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1685 | /     create_dyn_cast_config!(
[INFO] [stdout] 1686 | |         /// Can have attributes on the generated config struct.
[INFO] [stdout] 1687 | |         #[derive(Clone)]
[INFO] [stdout] 1688 | |         SuperConfig = Super => Sub
[INFO] [stdout]      | |                       -----    --- `Sub` is not local
[INFO] [stdout]      | |                       |
[INFO] [stdout]      | |                       `Super` is not local
[INFO] [stdout] 1689 | |     );
[INFO] [stdout]      | |_____- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stdout]      |
[INFO] [stdout] 1454 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stdout]      |             --------------- `DynCast` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stdout]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              `__SelfType` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1695 |     impl_dyn_cast!(TestSuper => SuperConfig, UpcastConfig);
[INFO] [stdout]      |     ------------------------------------------------------ in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stdout]      |
[INFO] [stdout] 1454 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stdout]      |             --------------- `DynCast` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stdout]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              `__SelfType` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1695 |     impl_dyn_cast!(TestSuper => SuperConfig, UpcastConfig);
[INFO] [stdout]      |     ------------------------------------------------------ in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stdout]      |
[INFO] [stdout] 1454 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stdout]      |             --------------- `DynCast` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stdout]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              `__SelfType` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1700 |     impl_dyn_cast! {TestSub as Super => Sub, Super}
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stdout]      |
[INFO] [stdout] 1454 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stdout]      |             --------------- `DynCast` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stdout]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              `__SelfType` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1700 |     impl_dyn_cast! {TestSub as Super => Sub, Super}
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stdout]      |
[INFO] [stdout] 1454 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stdout]      |             --------------- `DynCast` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stdout]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              `__SelfType` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1706 |     impl_dyn_cast! {TestSubMixed as Super => Sub}
[INFO] [stdout]      |     --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stdout]      |
[INFO] [stdout] 1454 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stdout]      |             --------------- `DynCast` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stdout]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              `__SelfType` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1707 |     impl_dyn_cast! {TestSubMixed => UpcastConfig}
[INFO] [stdout]      |     --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1336 |             $crate::DerivedDynCast<
[INFO] [stdout]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stdout] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stdout]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stdout]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1725 |     impl_dyn_cast!(for<T> TestGeneric<T> as Super where {T: 'static} => Sub);
[INFO] [stdout]      |     ------------------------------------------------------------------------
[INFO] [stdout]      |     |                     |                 |                           |
[INFO] [stdout]      |     |                     |                 |                           `Sub` is not local
[INFO] [stdout]      |     |                     |                 |                           `Sub` is not local
[INFO] [stdout]      |     |                     |                 `Super` is not local
[INFO] [stdout]      |     |                     |                 `Super` is not local
[INFO] [stdout]      |     |                     `TestGeneric` is not local
[INFO] [stdout]      |     in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1336 |             $crate::DerivedDynCast<
[INFO] [stdout]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stdout] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stdout]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stdout]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1726 |     impl_dyn_cast!(for<T> TestGeneric<T> as Super where {T: 'static} => Super);
[INFO] [stdout]      |     --------------------------------------------------------------------------
[INFO] [stdout]      |     |                     |                 |                           |
[INFO] [stdout]      |     |                     |                 |                           `Super` is not local
[INFO] [stdout]      |     |                     |                 |                           `Super` is not local
[INFO] [stdout]      |     |                     |                 `Super` is not local
[INFO] [stdout]      |     |                     |                 `Super` is not local
[INFO] [stdout]      |     |                     `TestGeneric` is not local
[INFO] [stdout]      |     in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1336 |             $crate::DerivedDynCast<
[INFO] [stdout]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stdout] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stdout]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stdout]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1732 |     impl_dyn_cast!(for<T> TestGenericMixed<T> as Super where {T: 'static} => Sub);
[INFO] [stdout]      |     -----------------------------------------------------------------------------
[INFO] [stdout]      |     |                     |                      |                           |
[INFO] [stdout]      |     |                     |                      |                           `Sub` is not local
[INFO] [stdout]      |     |                     |                      |                           `Sub` is not local
[INFO] [stdout]      |     |                     |                      `Super` is not local
[INFO] [stdout]      |     |                     |                      `Super` is not local
[INFO] [stdout]      |     |                     `TestGenericMixed` is not local
[INFO] [stdout]      |     in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stdout]      |
[INFO] [stdout] 1454 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stdout]      |             --------------- `DynCast` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1733 |     impl_dyn_cast!(for<T> TestGenericMixed<T> where {T: 'static} => UpcastConfig);
[INFO] [stdout]      |     -----------------------------------------------------------------------------
[INFO] [stdout]      |     |                     |                                         |
[INFO] [stdout]      |     |                     |                                         `UpcastConfig` is not local
[INFO] [stdout]      |     |                     `TestGenericMixed` is not local
[INFO] [stdout]      |     in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1336 |             $crate::DerivedDynCast<
[INFO] [stdout]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stdout] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stdout]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stdout]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1740 |     impl_dyn_cast!(for<T> OnlyDisplayGeneric<T> as Super where {T: 'static} => Sub);
[INFO] [stdout]      |     -------------------------------------------------------------------------------
[INFO] [stdout]      |     |                     |                        |                           |
[INFO] [stdout]      |     |                     |                        |                           `Sub` is not local
[INFO] [stdout]      |     |                     |                        |                           `Sub` is not local
[INFO] [stdout]      |     |                     |                        `Super` is not local
[INFO] [stdout]      |     |                     |                        `Super` is not local
[INFO] [stdout]      |     |                     `OnlyDisplayGeneric` is not local
[INFO] [stdout]      |     in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1336 |             $crate::DerivedDynCast<
[INFO] [stdout]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stdout] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stdout]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stdout]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1741 |     impl_dyn_cast!(for<T> OnlyDisplayGeneric<T> as Super where {T: 'static} => Super);
[INFO] [stdout]      |     ---------------------------------------------------------------------------------
[INFO] [stdout]      |     |                     |                        |                           |
[INFO] [stdout]      |     |                     |                        |                           `Super` is not local
[INFO] [stdout]      |     |                     |                        |                           `Super` is not local
[INFO] [stdout]      |     |                     |                        `Super` is not local
[INFO] [stdout]      |     |                     |                        `Super` is not local
[INFO] [stdout]      |     |                     `OnlyDisplayGeneric` is not local
[INFO] [stdout]      |     in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1641:13
[INFO] [stdout]      |
[INFO] [stdout] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stdout]      |               ------------ `SuperConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 1641 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout] 1642 | |             $crate::DynCastConfig
[INFO] [stdout]      | |             --------------------- `DynCastConfig` is not local
[INFO] [stdout] 1643 | |             for
[INFO] [stdout] 1644 | |             $config_type
[INFO] [stdout]      | |________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1769 | /         create_dyn_cast_config!(
[INFO] [stdout] 1770 | |             /// Can have attributes on the generated config struct.
[INFO] [stdout] 1771 | |             #[derive(Clone)]
[INFO] [stdout] 1772 | |             SuperConfig<T, U> = Super<T> => Sub<U>
[INFO] [stdout] 1773 | |         );
[INFO] [stdout]      | |_________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1651:13
[INFO] [stdout]      |
[INFO] [stdout] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stdout]      |               ------------ `SuperConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1651 | /             impl< $($lifetime,)* $($generics,)*  __T>
[INFO] [stdout] 1652 | |             $crate::DynCastConfigTargetTest<__T>
[INFO] [stdout]      | |             ------------------------------- `DynCastConfigTargetTest` is not local
[INFO] [stdout] 1653 | |             for
[INFO] [stdout] 1654 | |             $config_type
[INFO] [stdout]      | |________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1769 | /         create_dyn_cast_config!(
[INFO] [stdout] 1770 | |             /// Can have attributes on the generated config struct.
[INFO] [stdout] 1771 | |             #[derive(Clone)]
[INFO] [stdout] 1772 | |             SuperConfig<T, U> = Super<T> => Sub<U>
[INFO] [stdout] 1773 | |         );
[INFO] [stdout]      | |_________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1660:13
[INFO] [stdout]      |
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1660 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout] 1661 | |             $crate::GetDynCastConfig<dyn $target_trait>
[INFO] [stdout]      | |             ------------------------ `GetDynCastConfig` is not local
[INFO] [stdout] 1662 | |             for
[INFO] [stdout] 1663 | |             dyn $source_trait
[INFO] [stdout]      | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1769 | /         create_dyn_cast_config!(
[INFO] [stdout] 1770 | |             /// Can have attributes on the generated config struct.
[INFO] [stdout] 1771 | |             #[derive(Clone)]
[INFO] [stdout] 1772 | |             SuperConfig<T, U> = Super<T> => Sub<U>
[INFO] [stdout]      | |                                 -----       --- `Sub` is not local
[INFO] [stdout]      | |                                 |
[INFO] [stdout]      | |                                 `Super` is not local
[INFO] [stdout] 1773 | |         );
[INFO] [stdout]      | |_________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stdout]      |
[INFO] [stdout] 1454 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stdout]      |             --------------- `DynCast` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1776 |         impl_dyn_cast!(for<T> () => SuperConfig<T, T>);
[INFO] [stdout]      |         ----------------------------------------------
[INFO] [stdout]      |         |                           |
[INFO] [stdout]      |         |                           `SuperConfig` is not local
[INFO] [stdout]      |         in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stdout]      |
[INFO] [stdout] 1454 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stdout]      |             --------------- `DynCast` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1780 |         impl_dyn_cast!(for<T> TestSuper => SuperConfig<T, T>);
[INFO] [stdout]      |         -----------------------------------------------------
[INFO] [stdout]      |         |                     |            |
[INFO] [stdout]      |         |                     |            `SuperConfig` is not local
[INFO] [stdout]      |         |                     `TestSuper` is not local
[INFO] [stdout]      |         in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1336 |             $crate::DerivedDynCast<
[INFO] [stdout]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stdout] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stdout]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stdout]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1785 |         impl_dyn_cast! {for<T> TestSub as Super<T> where {T: core::fmt::Display} => Sub<T>}
[INFO] [stdout]      |         -----------------------------------------------------------------------------------
[INFO] [stdout]      |         |                      |          |                                         |
[INFO] [stdout]      |         |                      |          |                                         `Sub` is not local
[INFO] [stdout]      |         |                      |          |                                         `Sub` is not local
[INFO] [stdout]      |         |                      |          `Super` is not local
[INFO] [stdout]      |         |                      |          `Super` is not local
[INFO] [stdout]      |         |                      `TestSub` is not local
[INFO] [stdout]      |         in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1641:13
[INFO] [stdout]      |
[INFO] [stdout] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stdout]      |               ------------ `__SuperToSubDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 1641 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout] 1642 | |             $crate::DynCastConfig
[INFO] [stdout]      | |             --------------------- `DynCastConfig` is not local
[INFO] [stdout] 1643 | |             for
[INFO] [stdout] 1644 | |             $config_type
[INFO] [stdout]      | |________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1815 |           #[dyn_cast(Sub)]
[INFO] [stdout]      |           ---------------- in this procedural macro expansion
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1651:13
[INFO] [stdout]      |
[INFO] [stdout] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stdout]      |               ------------ `__SuperToSubDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1651 | /             impl< $($lifetime,)* $($generics,)*  __T>
[INFO] [stdout] 1652 | |             $crate::DynCastConfigTargetTest<__T>
[INFO] [stdout]      | |             ------------------------------- `DynCastConfigTargetTest` is not local
[INFO] [stdout] 1653 | |             for
[INFO] [stdout] 1654 | |             $config_type
[INFO] [stdout]      | |________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1815 |           #[dyn_cast(Sub)]
[INFO] [stdout]      |           ---------------- in this procedural macro expansion
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1660:13
[INFO] [stdout]      |
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1660 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout] 1661 | |             $crate::GetDynCastConfig<dyn $target_trait>
[INFO] [stdout]      | |             ------------------------ `GetDynCastConfig` is not local
[INFO] [stdout] 1662 | |             for
[INFO] [stdout] 1663 | |             dyn $source_trait
[INFO] [stdout]      | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1815 |           #[dyn_cast(Sub)]
[INFO] [stdout]      |           ----------------
[INFO] [stdout]      |           |          |
[INFO] [stdout]      |           |          `Sub` is not local
[INFO] [stdout]      |           `Super` is not local
[INFO] [stdout]      |           in this procedural macro expansion
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1641:13
[INFO] [stdout]      |
[INFO] [stdout] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stdout]      |               ------------ `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 1641 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout] 1642 | |             $crate::DynCastConfig
[INFO] [stdout]      | |             --------------------- `DynCastConfig` is not local
[INFO] [stdout] 1643 | |             for
[INFO] [stdout] 1644 | |             $config_type
[INFO] [stdout]      | |________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1816 |           #[dyn_upcast]
[INFO] [stdout]      |           ------------- in this procedural macro expansion
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1651:13
[INFO] [stdout]      |
[INFO] [stdout] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stdout]      |               ------------ `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1651 | /             impl< $($lifetime,)* $($generics,)*  __T>
[INFO] [stdout] 1652 | |             $crate::DynCastConfigTargetTest<__T>
[INFO] [stdout]      | |             ------------------------------- `DynCastConfigTargetTest` is not local
[INFO] [stdout] 1653 | |             for
[INFO] [stdout] 1654 | |             $config_type
[INFO] [stdout]      | |________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1816 |           #[dyn_upcast]
[INFO] [stdout]      |           ------------- in this procedural macro expansion
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1660:13
[INFO] [stdout]      |
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1660 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout] 1661 | |             $crate::GetDynCastConfig<dyn $target_trait>
[INFO] [stdout]      | |             ------------------------ `GetDynCastConfig` is not local
[INFO] [stdout] 1662 | |             for
[INFO] [stdout] 1663 | |             dyn $source_trait
[INFO] [stdout]      | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1816 |           #[dyn_upcast]
[INFO] [stdout]      |           -------------
[INFO] [stdout]      |           |
[INFO] [stdout]      |           `Super` is not local
[INFO] [stdout]      |           in this procedural macro expansion
[INFO] [stdout] 1817 |           trait Super {}
[INFO] [stdout]      |                 ----- `Super` is not local
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stdout]      |
[INFO] [stdout] 1454 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stdout]      |             --------------- `DynCast` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stdout]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              `__SelfType` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1821 |         #[dyn_upcast(Super)]
[INFO] [stdout]      |         -------------------- in this procedural macro expansion
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stdout]      |
[INFO] [stdout] 1454 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stdout]      |             --------------- `DynCast` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stdout]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              `__SelfType` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1820 |         #[dyn_cast(Super => Sub)]
[INFO] [stdout]      |         ------------------------- in this procedural macro expansion
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stdout]      |
[INFO] [stdout] 1454 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stdout]      |             --------------- `DynCast` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stdout]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              `__SelfType` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1826 |         #[dyn_upcast(Super)]
[INFO] [stdout]      |         -------------------- in this procedural macro expansion
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stdout]      |
[INFO] [stdout] 1454 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stdout]      |             --------------- `DynCast` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stdout]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              `__SelfType` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1825 |         #[dyn_cast(Super => Sub)]
[INFO] [stdout]      |         ------------------------- in this procedural macro expansion
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1641:13
[INFO] [stdout]      |
[INFO] [stdout] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stdout]      |               ------------ `__SuperToSuper_853e9f102bbb9075_DynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 1641 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout] 1642 | |             $crate::DynCastConfig
[INFO] [stdout]      | |             --------------------- `DynCastConfig` is not local
[INFO] [stdout] 1643 | |             for
[INFO] [stdout] 1644 | |             $config_type
[INFO] [stdout]      | |________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1834 |               #[dyn_upcast]
[INFO] [stdout]      |               ------------- in this procedural macro expansion
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1651:13
[INFO] [stdout]      |
[INFO] [stdout] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stdout]      |               ------------ `__SuperToSuper_853e9f102bbb9075_DynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1651 | /             impl< $($lifetime,)* $($generics,)*  __T>
[INFO] [stdout] 1652 | |             $crate::DynCastConfigTargetTest<__T>
[INFO] [stdout]      | |             ------------------------------- `DynCastConfigTargetTest` is not local
[INFO] [stdout] 1653 | |             for
[INFO] [stdout] 1654 | |             $config_type
[INFO] [stdout]      | |________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1834 |               #[dyn_upcast]
[INFO] [stdout]      |               ------------- in this procedural macro expansion
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1660:13
[INFO] [stdout]      |
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1660 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout] 1661 | |             $crate::GetDynCastConfig<dyn $target_trait>
[INFO] [stdout]      | |             ------------------------ `GetDynCastConfig` is not local
[INFO] [stdout] 1662 | |             for
[INFO] [stdout] 1663 | |             dyn $source_trait
[INFO] [stdout]      | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1834 |               #[dyn_upcast]
[INFO] [stdout]      |               -------------
[INFO] [stdout]      |               |
[INFO] [stdout]      |               `Super` is not local
[INFO] [stdout]      |               in this procedural macro expansion
[INFO] [stdout] 1835 |               #[dyn_cast(Sub<T>)]
[INFO] [stdout] 1836 |               trait Super<T> {}
[INFO] [stdout]      |                     ----- `Super` is not local
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1641:13
[INFO] [stdout]      |
[INFO] [stdout] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stdout]      |               ------------ `__SuperToSub_1d08e4229f0c4a3_DynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 1641 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout] 1642 | |             $crate::DynCastConfig
[INFO] [stdout]      | |             --------------------- `DynCastConfig` is not local
[INFO] [stdout] 1643 | |             for
[INFO] [stdout] 1644 | |             $config_type
[INFO] [stdout]      | |________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1835 |               #[dyn_cast(Sub<T>)]
[INFO] [stdout]      |               ------------------- in this procedural macro expansion
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1651:13
[INFO] [stdout]      |
[INFO] [stdout] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stdout]      |               ------------ `__SuperToSub_1d08e4229f0c4a3_DynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1651 | /             impl< $($lifetime,)* $($generics,)*  __T>
[INFO] [stdout] 1652 | |             $crate::DynCastConfigTargetTest<__T>
[INFO] [stdout]      | |             ------------------------------- `DynCastConfigTargetTest` is not local
[INFO] [stdout] 1653 | |             for
[INFO] [stdout] 1654 | |             $config_type
[INFO] [stdout]      | |________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1835 |               #[dyn_cast(Sub<T>)]
[INFO] [stdout]      |               ------------------- in this procedural macro expansion
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1660:13
[INFO] [stdout]      |
[INFO] [stdout] 1640 |           const _: fn() = || {
[INFO] [stdout]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1660 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout] 1661 | |             $crate::GetDynCastConfig<dyn $target_trait>
[INFO] [stdout]      | |             ------------------------ `GetDynCastConfig` is not local
[INFO] [stdout] 1662 | |             for
[INFO] [stdout] 1663 | |             dyn $source_trait
[INFO] [stdout]      | |_____________________________^
[INFO] [stdout] ...
[INFO] [stdout] 1835 |               #[dyn_cast(Sub<T>)]
[INFO] [stdout]      |               -------------------
[INFO] [stdout]      |               |          |
[INFO] [stdout]      |               |          `Sub` is not local
[INFO] [stdout]      |               `Super` is not local
[INFO] [stdout]      |               in this procedural macro expansion
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1336 |             $crate::DerivedDynCast<
[INFO] [stdout]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stdout] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stdout]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stdout]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1840 |             #[dyn_upcast]
[INFO] [stdout]      |             ------------- in this procedural macro expansion
[INFO] [stdout] 1841 |             impl<T> Super<T> for (i32,) {}
[INFO] [stdout]      |                     -----
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `Super` is not local
[INFO] [stdout]      |                     `Super` is not local
[INFO] [stdout]      |                     `Super` is not local
[INFO] [stdout]      |                     `Super` is not local
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1336 |             $crate::DerivedDynCast<
[INFO] [stdout]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stdout] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stdout]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stdout]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1839 |             #[dyn_cast(Sub<T>)]
[INFO] [stdout]      |             -------------------
[INFO] [stdout]      |             |          |
[INFO] [stdout]      |             |          `Sub` is not local
[INFO] [stdout]      |             |          `Sub` is not local
[INFO] [stdout]      |             in this procedural macro expansion
[INFO] [stdout] 1840 |             #[dyn_upcast]
[INFO] [stdout] 1841 |             impl<T> Super<T> for (i32,) {}
[INFO] [stdout]      |                     -----
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `Super` is not local
[INFO] [stdout]      |                     `Super` is not local
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1336 |             $crate::DerivedDynCast<
[INFO] [stdout]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stdout] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stdout]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stdout]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1846 |             #[dyn_cast(Sub<T>)]
[INFO] [stdout]      |             -------------------
[INFO] [stdout]      |             |          |
[INFO] [stdout]      |             |          `Sub` is not local
[INFO] [stdout]      |             |          `Sub` is not local
[INFO] [stdout]      |             in this procedural macro expansion
[INFO] [stdout] 1847 |             impl<T: Clone> Super<T> for TestSuper where T: core::fmt::Display {}
[INFO] [stdout]      |                            -----        --------- `TestSuper` is not local
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            `Super` is not local
[INFO] [stdout]      |                            `Super` is not local
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1336 |             $crate::DerivedDynCast<
[INFO] [stdout]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stdout] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stdout]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stdout]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1845 |             #[dyn_upcast]
[INFO] [stdout]      |             ------------- in this procedural macro expansion
[INFO] [stdout] 1846 |             #[dyn_cast(Sub<T>)]
[INFO] [stdout] 1847 |             impl<T: Clone> Super<T> for TestSuper where T: core::fmt::Display {}
[INFO] [stdout]      |                            -----        --------- `TestSuper` is not local
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            `Super` is not local
[INFO] [stdout]      |                            `Super` is not local
[INFO] [stdout]      |                            `Super` is not local
[INFO] [stdout]      |                            `Super` is not local
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1336 |             $crate::DerivedDynCast<
[INFO] [stdout]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stdout] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stdout]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stdout]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1851 |             #[dyn_cast(Sub<T>)]
[INFO] [stdout]      |             -------------------
[INFO] [stdout]      |             |          |
[INFO] [stdout]      |             |          `Sub` is not local
[INFO] [stdout]      |             |          `Sub` is not local
[INFO] [stdout]      |             in this procedural macro expansion
[INFO] [stdout] 1852 |             impl<T> Super<T> for TestSub {}
[INFO] [stdout]      |                     -----        ------- `TestSub` is not local
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `Super` is not local
[INFO] [stdout]      |                     `Super` is not local
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         const _: fn() = || {
[INFO] [stdout]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] ...
[INFO] [stdout] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stdout]      |             ^
[INFO] [stdout] 1336 |             $crate::DerivedDynCast<
[INFO] [stdout]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stdout] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stdout]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stdout]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stdout] ...
[INFO] [stdout] 1850 |             #[dyn_upcast]
[INFO] [stdout]      |             ------------- in this procedural macro expansion
[INFO] [stdout] 1851 |             #[dyn_cast(Sub<T>)]
[INFO] [stdout] 1852 |             impl<T> Super<T> for TestSub {}
[INFO] [stdout]      |                     -----        ------- `TestSub` is not local
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `Super` is not local
[INFO] [stdout]      |                     `Super` is not local
[INFO] [stdout]      |                     `Super` is not local
[INFO] [stdout]      |                     `Super` is not local
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^---^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |          |
[INFO] [stdout]    |     |          `Sub` is not local
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^----^^^^^^^^^^
[INFO] [stdout]    |     |               |
[INFO] [stdout]    |     |               `Sub2` is not local
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^------^^
[INFO] [stdout]    |     |                     |
[INFO] [stdout]    |     |                     `SubSub` is not local
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     #[dyn_upcast]
[INFO] [stdout]    |     -^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     #[dyn_upcast]
[INFO] [stdout]    |     -^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     #[dyn_upcast]
[INFO] [stdout]    |     -^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 27 |     pub trait Super {}
[INFO] [stdout]    |               ----- `Super` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     #[cfg_attr(feature = "proc-macros", dyn_upcast)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:47:41
[INFO] [stdout]    |
[INFO] [stdout] 47 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:47:41
[INFO] [stdout]    |
[INFO] [stdout] 47 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:47:41
[INFO] [stdout]    |
[INFO] [stdout] 47 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:54:41
[INFO] [stdout]    |
[INFO] [stdout] 54 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:54:41
[INFO] [stdout]    |
[INFO] [stdout] 54 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:54:41
[INFO] [stdout]    |
[INFO] [stdout] 54 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:54:41
[INFO] [stdout]    |
[INFO] [stdout] 54 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     #[cfg_attr(feature = "proc-macros", dyn_upcast(Super))]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^---^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |          |
[INFO] [stdout]    |     |          `Sub` is not local
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:60:41
[INFO] [stdout]    |
[INFO] [stdout] 60 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:60:41
[INFO] [stdout]    |
[INFO] [stdout] 60 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:60:41
[INFO] [stdout]    |
[INFO] [stdout] 60 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:69:41
[INFO] [stdout]    |
[INFO] [stdout] 69 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^----^^^^^^^^^^
[INFO] [stdout]    |     |               |
[INFO] [stdout]    |     |               `Sub2` is not local
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:69:41
[INFO] [stdout]    |
[INFO] [stdout] 69 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stdout]    |     -^^^^^^^^^^^^^^^^^^^^^------^^
[INFO] [stdout]    |     |                     |
[INFO] [stdout]    |     |                     `SubSub` is not local
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     #[dyn_upcast]
[INFO] [stdout]    |     -^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     #[dyn_upcast]
[INFO] [stdout]    |     -^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Config` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     #[dyn_upcast]
[INFO] [stdout]    |     -^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 27 |     pub trait Super {}
[INFO] [stdout]    |               ----- `Super` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:69:41
[INFO] [stdout]    |
[INFO] [stdout] 69 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     #[cfg_attr(feature = "proc-macros", dyn_upcast)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:69:41
[INFO] [stdout]    |
[INFO] [stdout] 69 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:47:41
[INFO] [stdout]    |
[INFO] [stdout] 47 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     #[dyn_cast(Sub)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SuperToSubDynCastConfig` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     #[dyn_cast(Sub)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SuperToSubDynCastConfig` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:47:41
[INFO] [stdout]    |
[INFO] [stdout] 47 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     #[dyn_cast(Sub)]
[INFO] [stdout]    |     -^^^^^^^^^^---^^
[INFO] [stdout]    |     |          |
[INFO] [stdout]    |     |          `Sub` is not local
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:47:41
[INFO] [stdout]    |
[INFO] [stdout] 47 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     #[dyn_upcast]
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:54:41
[INFO] [stdout]    |
[INFO] [stdout] 54 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     #[dyn_upcast]
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     #[dyn_upcast]
[INFO] [stdout]    |     -^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 85 |     trait Super {}
[INFO] [stdout]    |           ----- `Super` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:54:41
[INFO] [stdout]    |
[INFO] [stdout] 54 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:54:41
[INFO] [stdout]    |
[INFO] [stdout] 54 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:54:41
[INFO] [stdout]    |
[INFO] [stdout] 54 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     #[cfg_attr(feature = "proc-macros", dyn_upcast(Super))]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:60:41
[INFO] [stdout]    |
[INFO] [stdout] 60 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 89 |     #[dyn_upcast(Super)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 88 |     #[dyn_cast(Super => Sub)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:60:41
[INFO] [stdout]    |
[INFO] [stdout] 60 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     #[dyn_upcast(Super)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:60:41
[INFO] [stdout]    |
[INFO] [stdout] 60 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 93 |     #[dyn_cast(Super => Sub)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:69:41
[INFO] [stdout]    |
[INFO] [stdout] 69 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         #[dyn_upcast]
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSuper_853e9f102bbb9075_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         #[dyn_upcast]
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSuper_853e9f102bbb9075_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfigTargetTest` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:69:41
[INFO] [stdout]    |
[INFO] [stdout] 69 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:69:41
[INFO] [stdout]    |
[INFO] [stdout] 69 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         #[dyn_upcast]
[INFO] [stdout]     |         -^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `Super` is not local
[INFO] [stdout]     |         `GetDynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout] 112 |         trait Super<T> {}
[INFO] [stdout]     |               ----- `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_1d08e4229f0c4a3_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:69:41
[INFO] [stdout]    |
[INFO] [stdout] 69 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub, Super))]
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `__SelfType` is not local
[INFO] [stdout]    |                                         `DynCast` is not local
[INFO] [stdout]    |                                         `__ConfigType` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_1d08e4229f0c4a3_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfigTargetTest` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     #[dyn_cast(Sub)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SuperToSubDynCastConfig` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         -^^^^^^^^^^---^^^^^
[INFO] [stdout]     |         |          |
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `Super` is not local
[INFO] [stdout]     |         `GetDynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     #[dyn_cast(Sub)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SuperToSubDynCastConfig` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:125:9
[INFO] [stdout]     |
[INFO] [stdout] 125 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         ^^^^^^^^^^^---^^^^^
[INFO] [stdout]     |         |          |
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `DerivedDynCast` is not local
[INFO] [stdout]     |         `ConcreteDynCastConfig` is not local
[INFO] [stdout]     |         `Config` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 126 |         impl<T: Clone> Super<T> for TestSuper where T: core::fmt::Display {}
[INFO] [stdout]     |                        -----        --------- `TestSuper` is not local
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     #[dyn_cast(Sub)]
[INFO] [stdout]    |     -^^^^^^^^^^---^^
[INFO] [stdout]    |     |          |
[INFO] [stdout]    |     |          `Sub` is not local
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:124:9
[INFO] [stdout]     |
[INFO] [stdout] 124 |         #[dyn_upcast]
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `DerivedDynCast` is not local
[INFO] [stdout]     |         `ConcreteDynCastConfig` is not local
[INFO] [stdout]     |         `Config` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 125 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout] 126 |         impl<T: Clone> Super<T> for TestSuper where T: core::fmt::Display {}
[INFO] [stdout]     |                        -----        --------- `TestSuper` is not local
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     #[dyn_upcast]
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout]    |     `DynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:130:9
[INFO] [stdout]     |
[INFO] [stdout] 130 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         ^^^^^^^^^^^---^^^^^
[INFO] [stdout]     |         |          |
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `DerivedDynCast` is not local
[INFO] [stdout]     |         `ConcreteDynCastConfig` is not local
[INFO] [stdout]     |         `Config` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 131 |         impl<T> Super<T> for TestSub {}
[INFO] [stdout]     |                 -----        ------- `TestSub` is not local
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     #[dyn_upcast]
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout]    |     `DynCastConfigTargetTest` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     #[dyn_upcast]
[INFO] [stdout]    |     -^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `Super` is not local
[INFO] [stdout]    |     `GetDynCastConfig` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 85 |     trait Super {}
[INFO] [stdout]    |           ----- `Super` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |         #[dyn_upcast]
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `DerivedDynCast` is not local
[INFO] [stdout]     |         `ConcreteDynCastConfig` is not local
[INFO] [stdout]     |         `Config` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 130 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout] 131 |         impl<T> Super<T> for TestSub {}
[INFO] [stdout]     |                 -----        ------- `TestSub` is not local
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 139 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_b44d5e6e48c20758_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 89 |     #[dyn_upcast(Super)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 139 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_b44d5e6e48c20758_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfigTargetTest` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 88 |     #[dyn_cast(Super => Sub)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 139 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stdout]     |         -^^^^^^^^^^---^^^^^^^^----^^^
[INFO] [stdout]     |         |          |          |
[INFO] [stdout]     |         |          |          `Test` is not local
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `Super` is not local
[INFO] [stdout]     |         `GetDynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     #[dyn_upcast(Super)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> external_tests/src/lib.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 93 |     #[dyn_cast(Super => Sub)]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `__SelfType` is not local
[INFO] [stdout]    |     `DynCast` is not local
[INFO] [stdout]    |     `__ConfigType` is not local
[INFO] [stdout]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         #[dyn_upcast]
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSuper_853e9f102bbb9075_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         #[dyn_upcast]
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSuper_853e9f102bbb9075_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfigTargetTest` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         #[dyn_upcast]
[INFO] [stdout]     |         -^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `Super` is not local
[INFO] [stdout]     |         `GetDynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout] 112 |         trait Super<T> {}
[INFO] [stdout]     |               ----- `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_1d08e4229f0c4a3_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_1d08e4229f0c4a3_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfigTargetTest` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         -^^^^^^^^^^---^^^^^
[INFO] [stdout]     |         |          |
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `Super` is not local
[INFO] [stdout]     |         `GetDynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:125:9
[INFO] [stdout]     |
[INFO] [stdout] 125 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         ^^^^^^^^^^^---^^^^^
[INFO] [stdout]     |         |          |
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `DerivedDynCast` is not local
[INFO] [stdout]     |         `ConcreteDynCastConfig` is not local
[INFO] [stdout]     |         `Config` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 126 |         impl<T: Clone> Super<T> for TestSuper where T: core::fmt::Display {}
[INFO] [stdout]     |                        -----        --------- `TestSuper` is not local
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:124:9
[INFO] [stdout]     |
[INFO] [stdout] 124 |         #[dyn_upcast]
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `DerivedDynCast` is not local
[INFO] [stdout]     |         `ConcreteDynCastConfig` is not local
[INFO] [stdout]     |         `Config` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 125 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout] 126 |         impl<T: Clone> Super<T> for TestSuper where T: core::fmt::Display {}
[INFO] [stdout]     |                        -----        --------- `TestSuper` is not local
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |                        `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:130:9
[INFO] [stdout]     |
[INFO] [stdout] 130 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout]     |         ^^^^^^^^^^^---^^^^^
[INFO] [stdout]     |         |          |
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `DerivedDynCast` is not local
[INFO] [stdout]     |         `ConcreteDynCastConfig` is not local
[INFO] [stdout]     |         `Config` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 131 |         impl<T> Super<T> for TestSub {}
[INFO] [stdout]     |                 -----        ------- `TestSub` is not local
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_b55641dd2f27bd22_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |         #[dyn_upcast]
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `DerivedDynCast` is not local
[INFO] [stdout]     |         `ConcreteDynCastConfig` is not local
[INFO] [stdout]     |         `Config` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout] 130 |         #[dyn_cast(Sub<T>)]
[INFO] [stdout] 131 |         impl<T> Super<T> for TestSub {}
[INFO] [stdout]     |                 -----        ------- `TestSub` is not local
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |                 `Super` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 139 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_b44d5e6e48c20758_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 139 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_b44d5e6e48c20758_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfigTargetTest` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 139 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stdout]     |         -^^^^^^^^^^---^^^^^^^^----^^^
[INFO] [stdout]     |         |          |          |
[INFO] [stdout]     |         |          |          `Test` is not local
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `Super` is not local
[INFO] [stdout]     |         `GetDynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_b55641dd2f27bd22_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfigTargetTest` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_b55641dd2f27bd22_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stdout]     |         -^^^^^^^^^^---^^^^^^^^^^^^^
[INFO] [stdout]     |         |          |
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `Super` is not local
[INFO] [stdout]     |         `GetDynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SuperToSub_b55641dd2f27bd22_DynCastConfig` is not local
[INFO] [stdout]     |         `DynCastConfigTargetTest` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:143:9
[INFO] [stdout]     |
[INFO] [stdout] 143 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SelfType` is not local
[INFO] [stdout]     |         `DynCast` is not local
[INFO] [stdout]     |         `__ConfigType` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stdout]     |         -^^^^^^^^^^---^^^^^^^^^^^^^
[INFO] [stdout]     |         |          |
[INFO] [stdout]     |         |          `Sub` is not local
[INFO] [stdout]     |         `Super` is not local
[INFO] [stdout]     |         `GetDynCastConfig` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:142:9
[INFO] [stdout]     |
[INFO] [stdout] 142 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SelfType` is not local
[INFO] [stdout]     |         `DynCast` is not local
[INFO] [stdout]     |         `__ConfigType` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:143:9
[INFO] [stdout]     |
[INFO] [stdout] 143 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SelfType` is not local
[INFO] [stdout]     |         `DynCast` is not local
[INFO] [stdout]     |         `__ConfigType` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> external_tests/src/lib.rs:142:9
[INFO] [stdout]     |
[INFO] [stdout] 142 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__SelfType` is not local
[INFO] [stdout]     |         `DynCast` is not local
[INFO] [stdout]     |         `__ConfigType` is not local
[INFO] [stdout]     |         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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 0.93s
[INFO] running `Command { std: "docker" "inspect" "a92a72a212a75c5daf0086f4295a649a1dbb3fdce45ac620db15ac9b84731208", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a92a72a212a75c5daf0086f4295a649a1dbb3fdce45ac620db15ac9b84731208", kill_on_drop: false }`
[INFO] [stdout] a92a72a212a75c5daf0086f4295a649a1dbb3fdce45ac620db15ac9b84731208
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Zrandomize-layout" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] cb716d57fba738fb9ed7c9d2d2815e1c2ac0983bacfd3c3c951c177700876e5e
[INFO] running `Command { std: "docker" "start" "-a" "cb716d57fba738fb9ed7c9d2d2815e1c2ac0983bacfd3c3c951c177700876e5e", kill_on_drop: false }`
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> cast_trait_object/src/lib.rs:1641:13
[INFO] [stderr]      |
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr] 1641 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr] 1642 | |             $crate::DynCastConfig
[INFO] [stderr]      | |             --------------------- `DynCastConfig` is not local
[INFO] [stderr] 1643 | |             for
[INFO] [stderr] 1644 | |             $config_type
[INFO] [stderr]      | |________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1673 |               $crate::impl_dyn_cast_config!(for<> __ConfigType = $source_trait => $target_trait);
[INFO] [stderr]      |                                                   ------------ `__ConfigType` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1680 | /     create_dyn_cast_config!(
[INFO] [stderr] 1681 | |         /// Can have attributes on the generated config struct.
[INFO] [stderr] 1682 | |         #[derive(Clone)]
[INFO] [stderr] 1683 | |         UpcastConfig = Super => Super
[INFO] [stderr] 1684 | |     );
[INFO] [stderr]      | |_____- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]      = note: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (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]     --> cast_trait_object/src/lib.rs:1651:13
[INFO] [stderr]      |
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1651 | /             impl< $($lifetime,)* $($generics,)*  __T>
[INFO] [stderr] 1652 | |             $crate::DynCastConfigTargetTest<__T>
[INFO] [stderr]      | |             ------------------------------- `DynCastConfigTargetTest` is not local
[INFO] [stderr] 1653 | |             for
[INFO] [stderr] 1654 | |             $config_type
[INFO] [stderr]      | |________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1673 |               $crate::impl_dyn_cast_config!(for<> __ConfigType = $source_trait => $target_trait);
[INFO] [stderr]      |                                                   ------------ `__ConfigType` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1680 | /     create_dyn_cast_config!(
[INFO] [stderr] 1681 | |         /// Can have attributes on the generated config struct.
[INFO] [stderr] 1682 | |         #[derive(Clone)]
[INFO] [stderr] 1683 | |         UpcastConfig = Super => Super
[INFO] [stderr] 1684 | |     );
[INFO] [stderr]      | |_____- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (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]     --> cast_trait_object/src/lib.rs:1660:13
[INFO] [stderr]      |
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1660 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr] 1661 | |             $crate::GetDynCastConfig<dyn $target_trait>
[INFO] [stderr]      | |             ------------------------ `GetDynCastConfig` is not local
[INFO] [stderr] 1662 | |             for
[INFO] [stderr] 1663 | |             dyn $source_trait
[INFO] [stderr]      | |_____________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1680 | /     create_dyn_cast_config!(
[INFO] [stderr] 1681 | |         /// Can have attributes on the generated config struct.
[INFO] [stderr] 1682 | |         #[derive(Clone)]
[INFO] [stderr] 1683 | |         UpcastConfig = Super => Super
[INFO] [stderr]      | |                        -----    ----- `Super` is not local
[INFO] [stderr]      | |                        |
[INFO] [stderr]      | |                        `Super` is not local
[INFO] [stderr] 1684 | |     );
[INFO] [stderr]      | |_____- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (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]     --> cast_trait_object/src/lib.rs:1641:13
[INFO] [stderr]      |
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr] 1641 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr] 1642 | |             $crate::DynCastConfig
[INFO] [stderr]      | |             --------------------- `DynCastConfig` is not local
[INFO] [stderr] 1643 | |             for
[INFO] [stderr] 1644 | |             $config_type
[INFO] [stderr]      | |________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1673 |               $crate::impl_dyn_cast_config!(for<> __ConfigType = $source_trait => $target_trait);
[INFO] [stderr]      |                                                   ------------ `__ConfigType` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1685 | /     create_dyn_cast_config!(
[INFO] [stderr] 1686 | |         /// Can have attributes on the generated config struct.
[INFO] [stderr] 1687 | |         #[derive(Clone)]
[INFO] [stderr] 1688 | |         SuperConfig = Super => Sub
[INFO] [stderr] 1689 | |     );
[INFO] [stderr]      | |_____- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (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]     --> cast_trait_object/src/lib.rs:1651:13
[INFO] [stderr]      |
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1651 | /             impl< $($lifetime,)* $($generics,)*  __T>
[INFO] [stderr] 1652 | |             $crate::DynCastConfigTargetTest<__T>
[INFO] [stderr]      | |             ------------------------------- `DynCastConfigTargetTest` is not local
[INFO] [stderr] 1653 | |             for
[INFO] [stderr] 1654 | |             $config_type
[INFO] [stderr]      | |________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1673 |               $crate::impl_dyn_cast_config!(for<> __ConfigType = $source_trait => $target_trait);
[INFO] [stderr]      |                                                   ------------ `__ConfigType` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1685 | /     create_dyn_cast_config!(
[INFO] [stderr] 1686 | |         /// Can have attributes on the generated config struct.
[INFO] [stderr] 1687 | |         #[derive(Clone)]
[INFO] [stderr] 1688 | |         SuperConfig = Super => Sub
[INFO] [stderr] 1689 | |     );
[INFO] [stderr]      | |_____- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (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]     --> cast_trait_object/src/lib.rs:1660:13
[INFO] [stderr]      |
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1660 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr] 1661 | |             $crate::GetDynCastConfig<dyn $target_trait>
[INFO] [stderr]      | |             ------------------------ `GetDynCastConfig` is not local
[INFO] [stderr] 1662 | |             for
[INFO] [stderr] 1663 | |             dyn $source_trait
[INFO] [stderr]      | |_____________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1685 | /     create_dyn_cast_config!(
[INFO] [stderr] 1686 | |         /// Can have attributes on the generated config struct.
[INFO] [stderr] 1687 | |         #[derive(Clone)]
[INFO] [stderr] 1688 | |         SuperConfig = Super => Sub
[INFO] [stderr]      | |                       -----    --- `Sub` is not local
[INFO] [stderr]      | |                       |
[INFO] [stderr]      | |                       `Super` is not local
[INFO] [stderr] 1689 | |     );
[INFO] [stderr]      | |_____- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (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]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stderr]      |
[INFO] [stderr] 1454 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stderr]      |             --------------- `DynCast` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stderr]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stderr]      |                                              |
[INFO] [stderr]      |                                              `__SelfType` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1695 |     impl_dyn_cast!(TestSuper => SuperConfig, UpcastConfig);
[INFO] [stderr]      |     ------------------------------------------------------ in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stderr]      |
[INFO] [stderr] 1454 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stderr]      |             --------------- `DynCast` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stderr]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stderr]      |                                              |
[INFO] [stderr]      |                                              `__SelfType` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1700 |     impl_dyn_cast! {TestSub as Super => Sub, Super}
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stderr]      |
[INFO] [stderr] 1454 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stderr]      |             --------------- `DynCast` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stderr]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stderr]      |                                              |
[INFO] [stderr]      |                                              `__SelfType` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1706 |     impl_dyn_cast! {TestSubMixed as Super => Sub}
[INFO] [stderr]      |     --------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stderr]      |
[INFO] [stderr] 1454 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stderr]      |             --------------- `DynCast` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stderr]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stderr]      |                                              |
[INFO] [stderr]      |                                              `__SelfType` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1707 |     impl_dyn_cast! {TestSubMixed => UpcastConfig}
[INFO] [stderr]      |     --------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stderr]      |
[INFO] [stderr] 1331 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1336 |             $crate::DerivedDynCast<
[INFO] [stderr]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stderr] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stderr]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stderr]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1725 |     impl_dyn_cast!(for<T> TestGeneric<T> as Super where {T: 'static} => Sub);
[INFO] [stderr]      |     ------------------------------------------------------------------------
[INFO] [stderr]      |     |                     |                 |                           |
[INFO] [stderr]      |     |                     |                 |                           `Sub` is not local
[INFO] [stderr]      |     |                     |                 |                           `Sub` is not local
[INFO] [stderr]      |     |                     |                 `Super` is not local
[INFO] [stderr]      |     |                     |                 `Super` is not local
[INFO] [stderr]      |     |                     `TestGeneric` is not local
[INFO] [stderr]      |     in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `impl_dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stderr]      |
[INFO] [stderr] 1331 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1336 |             $crate::DerivedDynCast<
[INFO] [stderr]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stderr] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stderr]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stderr]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1726 |     impl_dyn_cast!(for<T> TestGeneric<T> as Super where {T: 'static} => Super);
[INFO] [stderr]      |     --------------------------------------------------------------------------
[INFO] [stderr]      |     |                     |                 |                           |
[INFO] [stderr]      |     |                     |                 |                           `Super` is not local
[INFO] [stderr]      |     |                     |                 |                           `Super` is not local
[INFO] [stderr]      |     |                     |                 `Super` is not local
[INFO] [stderr]      |     |                     |                 `Super` is not local
[INFO] [stderr]      |     |                     `TestGeneric` is not local
[INFO] [stderr]      |     in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `impl_dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stderr]      |
[INFO] [stderr] 1331 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1336 |             $crate::DerivedDynCast<
[INFO] [stderr]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stderr] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stderr]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stderr]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1732 |     impl_dyn_cast!(for<T> TestGenericMixed<T> as Super where {T: 'static} => Sub);
[INFO] [stderr]      |     -----------------------------------------------------------------------------
[INFO] [stderr]      |     |                     |                      |                           |
[INFO] [stderr]      |     |                     |                      |                           `Sub` is not local
[INFO] [stderr]      |     |                     |                      |                           `Sub` is not local
[INFO] [stderr]      |     |                     |                      `Super` is not local
[INFO] [stderr]      |     |                     |                      `Super` is not local
[INFO] [stderr]      |     |                     `TestGenericMixed` is not local
[INFO] [stderr]      |     in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `impl_dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stderr]      |
[INFO] [stderr] 1454 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stderr]      |             --------------- `DynCast` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1733 |     impl_dyn_cast!(for<T> TestGenericMixed<T> where {T: 'static} => UpcastConfig);
[INFO] [stderr]      |     -----------------------------------------------------------------------------
[INFO] [stderr]      |     |                     |                                         |
[INFO] [stderr]      |     |                     |                                         `UpcastConfig` is not local
[INFO] [stderr]      |     |                     `TestGenericMixed` is not local
[INFO] [stderr]      |     in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `impl_dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stderr]      |
[INFO] [stderr] 1331 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1336 |             $crate::DerivedDynCast<
[INFO] [stderr]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stderr] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stderr]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stderr]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1740 |     impl_dyn_cast!(for<T> OnlyDisplayGeneric<T> as Super where {T: 'static} => Sub);
[INFO] [stderr]      |     -------------------------------------------------------------------------------
[INFO] [stderr]      |     |                     |                        |                           |
[INFO] [stderr]      |     |                     |                        |                           `Sub` is not local
[INFO] [stderr]      |     |                     |                        |                           `Sub` is not local
[INFO] [stderr]      |     |                     |                        `Super` is not local
[INFO] [stderr]      |     |                     |                        `Super` is not local
[INFO] [stderr]      |     |                     `OnlyDisplayGeneric` is not local
[INFO] [stderr]      |     in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `impl_dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stderr]      |
[INFO] [stderr] 1331 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1336 |             $crate::DerivedDynCast<
[INFO] [stderr]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stderr] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stderr]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stderr]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1741 |     impl_dyn_cast!(for<T> OnlyDisplayGeneric<T> as Super where {T: 'static} => Super);
[INFO] [stderr]      |     ---------------------------------------------------------------------------------
[INFO] [stderr]      |     |                     |                        |                           |
[INFO] [stderr]      |     |                     |                        |                           `Super` is not local
[INFO] [stderr]      |     |                     |                        |                           `Super` is not local
[INFO] [stderr]      |     |                     |                        `Super` is not local
[INFO] [stderr]      |     |                     |                        `Super` is not local
[INFO] [stderr]      |     |                     `OnlyDisplayGeneric` is not local
[INFO] [stderr]      |     in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `impl_dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1641:13
[INFO] [stderr]      |
[INFO] [stderr] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stderr]      |               ------------ `SuperConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] 1641 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr] 1642 | |             $crate::DynCastConfig
[INFO] [stderr]      | |             --------------------- `DynCastConfig` is not local
[INFO] [stderr] 1643 | |             for
[INFO] [stderr] 1644 | |             $config_type
[INFO] [stderr]      | |________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1769 | /         create_dyn_cast_config!(
[INFO] [stderr] 1770 | |             /// Can have attributes on the generated config struct.
[INFO] [stderr] 1771 | |             #[derive(Clone)]
[INFO] [stderr] 1772 | |             SuperConfig<T, U> = Super<T> => Sub<U>
[INFO] [stderr] 1773 | |         );
[INFO] [stderr]      | |_________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (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]     --> cast_trait_object/src/lib.rs:1651:13
[INFO] [stderr]      |
[INFO] [stderr] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stderr]      |               ------------ `SuperConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1651 | /             impl< $($lifetime,)* $($generics,)*  __T>
[INFO] [stderr] 1652 | |             $crate::DynCastConfigTargetTest<__T>
[INFO] [stderr]      | |             ------------------------------- `DynCastConfigTargetTest` is not local
[INFO] [stderr] 1653 | |             for
[INFO] [stderr] 1654 | |             $config_type
[INFO] [stderr]      | |________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1769 | /         create_dyn_cast_config!(
[INFO] [stderr] 1770 | |             /// Can have attributes on the generated config struct.
[INFO] [stderr] 1771 | |             #[derive(Clone)]
[INFO] [stderr] 1772 | |             SuperConfig<T, U> = Super<T> => Sub<U>
[INFO] [stderr] 1773 | |         );
[INFO] [stderr]      | |_________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (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]     --> cast_trait_object/src/lib.rs:1660:13
[INFO] [stderr]      |
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1660 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr] 1661 | |             $crate::GetDynCastConfig<dyn $target_trait>
[INFO] [stderr]      | |             ------------------------ `GetDynCastConfig` is not local
[INFO] [stderr] 1662 | |             for
[INFO] [stderr] 1663 | |             dyn $source_trait
[INFO] [stderr]      | |_____________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1769 | /         create_dyn_cast_config!(
[INFO] [stderr] 1770 | |             /// Can have attributes on the generated config struct.
[INFO] [stderr] 1771 | |             #[derive(Clone)]
[INFO] [stderr] 1772 | |             SuperConfig<T, U> = Super<T> => Sub<U>
[INFO] [stderr]      | |                                 -----       --- `Sub` is not local
[INFO] [stderr]      | |                                 |
[INFO] [stderr]      | |                                 `Super` is not local
[INFO] [stderr] 1773 | |         );
[INFO] [stderr]      | |_________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (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]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stderr]      |
[INFO] [stderr] 1454 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stderr]      |             --------------- `DynCast` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1776 |         impl_dyn_cast!(for<T> () => SuperConfig<T, T>);
[INFO] [stderr]      |         ----------------------------------------------
[INFO] [stderr]      |         |                           |
[INFO] [stderr]      |         |                           `SuperConfig` is not local
[INFO] [stderr]      |         in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `impl_dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stderr]      |
[INFO] [stderr] 1454 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stderr]      |             --------------- `DynCast` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1780 |         impl_dyn_cast!(for<T> TestSuper => SuperConfig<T, T>);
[INFO] [stderr]      |         -----------------------------------------------------
[INFO] [stderr]      |         |                     |            |
[INFO] [stderr]      |         |                     |            `SuperConfig` is not local
[INFO] [stderr]      |         |                     `TestSuper` is not local
[INFO] [stderr]      |         in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `impl_dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stderr]      |
[INFO] [stderr] 1331 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1336 |             $crate::DerivedDynCast<
[INFO] [stderr]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stderr] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stderr]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stderr]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1785 |         impl_dyn_cast! {for<T> TestSub as Super<T> where {T: core::fmt::Display} => Sub<T>}
[INFO] [stderr]      |         -----------------------------------------------------------------------------------
[INFO] [stderr]      |         |                      |          |                                         |
[INFO] [stderr]      |         |                      |          |                                         `Sub` is not local
[INFO] [stderr]      |         |                      |          |                                         `Sub` is not local
[INFO] [stderr]      |         |                      |          `Super` is not local
[INFO] [stderr]      |         |                      |          `Super` is not local
[INFO] [stderr]      |         |                      `TestSub` is not local
[INFO] [stderr]      |         in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `impl_dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1641:13
[INFO] [stderr]      |
[INFO] [stderr] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stderr]      |               ------------ `__SuperToSubDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] 1641 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr] 1642 | |             $crate::DynCastConfig
[INFO] [stderr]      | |             --------------------- `DynCastConfig` is not local
[INFO] [stderr] 1643 | |             for
[INFO] [stderr] 1644 | |             $config_type
[INFO] [stderr]      | |________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1815 |           #[dyn_cast(Sub)]
[INFO] [stderr]      |           ---------------- in this procedural macro expansion
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1651:13
[INFO] [stderr]      |
[INFO] [stderr] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stderr]      |               ------------ `__SuperToSubDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1651 | /             impl< $($lifetime,)* $($generics,)*  __T>
[INFO] [stderr] 1652 | |             $crate::DynCastConfigTargetTest<__T>
[INFO] [stderr]      | |             ------------------------------- `DynCastConfigTargetTest` is not local
[INFO] [stderr] 1653 | |             for
[INFO] [stderr] 1654 | |             $config_type
[INFO] [stderr]      | |________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1815 |           #[dyn_cast(Sub)]
[INFO] [stderr]      |           ---------------- in this procedural macro expansion
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1660:13
[INFO] [stderr]      |
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1660 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr] 1661 | |             $crate::GetDynCastConfig<dyn $target_trait>
[INFO] [stderr]      | |             ------------------------ `GetDynCastConfig` is not local
[INFO] [stderr] 1662 | |             for
[INFO] [stderr] 1663 | |             dyn $source_trait
[INFO] [stderr]      | |_____________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1815 |           #[dyn_cast(Sub)]
[INFO] [stderr]      |           ----------------
[INFO] [stderr]      |           |          |
[INFO] [stderr]      |           |          `Sub` is not local
[INFO] [stderr]      |           `Super` is not local
[INFO] [stderr]      |           in this procedural macro expansion
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1641:13
[INFO] [stderr]      |
[INFO] [stderr] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stderr]      |               ------------ `__SuperToSuperDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] 1641 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr] 1642 | |             $crate::DynCastConfig
[INFO] [stderr]      | |             --------------------- `DynCastConfig` is not local
[INFO] [stderr] 1643 | |             for
[INFO] [stderr] 1644 | |             $config_type
[INFO] [stderr]      | |________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1816 |           #[dyn_upcast]
[INFO] [stderr]      |           ------------- in this procedural macro expansion
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]     --> cast_trait_object/src/lib.rs:1651:13
[INFO] [stderr]      |
[INFO] [stderr] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stderr]      |               ------------ `__SuperToSuperDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1651 | /             impl< $($lifetime,)* $($generics,)*  __T>
[INFO] [stderr] 1652 | |             $crate::DynCastConfigTargetTest<__T>
[INFO] [stderr]      | |             ------------------------------- `DynCastConfigTargetTest` is not local
[INFO] [stderr] 1653 | |             for
[INFO] [stderr] 1654 | |             $config_type
[INFO] [stderr]      | |________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1816 |           #[dyn_upcast]
[INFO] [stderr]      |           ------------- in this procedural macro expansion
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]     --> cast_trait_object/src/lib.rs:1660:13
[INFO] [stderr]      |
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1660 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr] 1661 | |             $crate::GetDynCastConfig<dyn $target_trait>
[INFO] [stderr]      | |             ------------------------ `GetDynCastConfig` is not local
[INFO] [stderr] 1662 | |             for
[INFO] [stderr] 1663 | |             dyn $source_trait
[INFO] [stderr]      | |_____________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1816 |           #[dyn_upcast]
[INFO] [stderr]      |           -------------
[INFO] [stderr]      |           |
[INFO] [stderr]      |           `Super` is not local
[INFO] [stderr]      |           in this procedural macro expansion
[INFO] [stderr] 1817 |           trait Super {}
[INFO] [stderr]      |                 ----- `Super` is not local
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stderr]      |
[INFO] [stderr] 1454 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stderr]      |             --------------- `DynCast` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stderr]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stderr]      |                                              |
[INFO] [stderr]      |                                              `__SelfType` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1821 |         #[dyn_upcast(Super)]
[INFO] [stderr]      |         -------------------- in this procedural macro expansion
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (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]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stderr]      |
[INFO] [stderr] 1454 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stderr]      |             --------------- `DynCast` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stderr]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stderr]      |                                              |
[INFO] [stderr]      |                                              `__SelfType` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1820 |         #[dyn_cast(Super => Sub)]
[INFO] [stderr]      |         ------------------------- in this procedural macro expansion
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stderr]      |
[INFO] [stderr] 1454 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stderr]      |             --------------- `DynCast` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stderr]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stderr]      |                                              |
[INFO] [stderr]      |                                              `__SelfType` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1826 |         #[dyn_upcast(Super)]
[INFO] [stderr]      |         -------------------- in this procedural macro expansion
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (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]     --> cast_trait_object/src/lib.rs:1458:13
[INFO] [stderr]      |
[INFO] [stderr] 1454 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1458 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1459 |             $crate::DynCast<  $config_type  >
[INFO] [stderr]      |             --------------- `DynCast` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1573 |                 $crate::impl_dyn_cast!(for<> __SelfType => __ConfigType);
[INFO] [stderr]      |                                              ----------    ------------ `__ConfigType` is not local
[INFO] [stderr]      |                                              |
[INFO] [stderr]      |                                              `__SelfType` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1825 |         #[dyn_cast(Super => Sub)]
[INFO] [stderr]      |         ------------------------- in this procedural macro expansion
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1641:13
[INFO] [stderr]      |
[INFO] [stderr] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stderr]      |               ------------ `__SuperToSuper_853e9f102bbb9075_DynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] 1641 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr] 1642 | |             $crate::DynCastConfig
[INFO] [stderr]      | |             --------------------- `DynCastConfig` is not local
[INFO] [stderr] 1643 | |             for
[INFO] [stderr] 1644 | |             $config_type
[INFO] [stderr]      | |________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1834 |               #[dyn_upcast]
[INFO] [stderr]      |               ------------- in this procedural macro expansion
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]     --> cast_trait_object/src/lib.rs:1651:13
[INFO] [stderr]      |
[INFO] [stderr] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stderr]      |               ------------ `__SuperToSuper_853e9f102bbb9075_DynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1651 | /             impl< $($lifetime,)* $($generics,)*  __T>
[INFO] [stderr] 1652 | |             $crate::DynCastConfigTargetTest<__T>
[INFO] [stderr]      | |             ------------------------------- `DynCastConfigTargetTest` is not local
[INFO] [stderr] 1653 | |             for
[INFO] [stderr] 1654 | |             $config_type
[INFO] [stderr]      | |________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1834 |               #[dyn_upcast]
[INFO] [stderr]      |               ------------- in this procedural macro expansion
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]     --> cast_trait_object/src/lib.rs:1660:13
[INFO] [stderr]      |
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1660 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr] 1661 | |             $crate::GetDynCastConfig<dyn $target_trait>
[INFO] [stderr]      | |             ------------------------ `GetDynCastConfig` is not local
[INFO] [stderr] 1662 | |             for
[INFO] [stderr] 1663 | |             dyn $source_trait
[INFO] [stderr]      | |_____________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1834 |               #[dyn_upcast]
[INFO] [stderr]      |               -------------
[INFO] [stderr]      |               |
[INFO] [stderr]      |               `Super` is not local
[INFO] [stderr]      |               in this procedural macro expansion
[INFO] [stderr] 1835 |               #[dyn_cast(Sub<T>)]
[INFO] [stderr] 1836 |               trait Super<T> {}
[INFO] [stderr]      |                     ----- `Super` is not local
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]     --> cast_trait_object/src/lib.rs:1641:13
[INFO] [stderr]      |
[INFO] [stderr] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stderr]      |               ------------ `__SuperToSub_1d08e4229f0c4a3_DynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] 1641 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr] 1642 | |             $crate::DynCastConfig
[INFO] [stderr]      | |             --------------------- `DynCastConfig` is not local
[INFO] [stderr] 1643 | |             for
[INFO] [stderr] 1644 | |             $config_type
[INFO] [stderr]      | |________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1835 |               #[dyn_cast(Sub<T>)]
[INFO] [stderr]      |               ------------------- in this procedural macro expansion
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1651:13
[INFO] [stderr]      |
[INFO] [stderr] 1607 |               $config_name<$($lifetime,)* $($generics,)*>
[INFO] [stderr]      |               ------------ `__SuperToSub_1d08e4229f0c4a3_DynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1651 | /             impl< $($lifetime,)* $($generics,)*  __T>
[INFO] [stderr] 1652 | |             $crate::DynCastConfigTargetTest<__T>
[INFO] [stderr]      | |             ------------------------------- `DynCastConfigTargetTest` is not local
[INFO] [stderr] 1653 | |             for
[INFO] [stderr] 1654 | |             $config_type
[INFO] [stderr]      | |________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1835 |               #[dyn_cast(Sub<T>)]
[INFO] [stderr]      |               ------------------- in this procedural macro expansion
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1660:13
[INFO] [stderr]      |
[INFO] [stderr] 1640 |           const _: fn() = || {
[INFO] [stderr]      |                           -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1660 | /             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr] 1661 | |             $crate::GetDynCastConfig<dyn $target_trait>
[INFO] [stderr]      | |             ------------------------ `GetDynCastConfig` is not local
[INFO] [stderr] 1662 | |             for
[INFO] [stderr] 1663 | |             dyn $source_trait
[INFO] [stderr]      | |_____________________________^
[INFO] [stderr] ...
[INFO] [stderr] 1835 |               #[dyn_cast(Sub<T>)]
[INFO] [stderr]      |               -------------------
[INFO] [stderr]      |               |          |
[INFO] [stderr]      |               |          `Sub` is not local
[INFO] [stderr]      |               `Super` is not local
[INFO] [stderr]      |               in this procedural macro expansion
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stderr]      |
[INFO] [stderr] 1331 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1336 |             $crate::DerivedDynCast<
[INFO] [stderr]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stderr] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stderr]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stderr]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1840 |             #[dyn_upcast]
[INFO] [stderr]      |             ------------- in this procedural macro expansion
[INFO] [stderr] 1841 |             impl<T> Super<T> for (i32,) {}
[INFO] [stderr]      |                     -----
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     `Super` is not local
[INFO] [stderr]      |                     `Super` is not local
[INFO] [stderr]      |                     `Super` is not local
[INFO] [stderr]      |                     `Super` is not local
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (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]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stderr]      |
[INFO] [stderr] 1331 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1336 |             $crate::DerivedDynCast<
[INFO] [stderr]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stderr] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stderr]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stderr]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1839 |             #[dyn_cast(Sub<T>)]
[INFO] [stderr]      |             -------------------
[INFO] [stderr]      |             |          |
[INFO] [stderr]      |             |          `Sub` is not local
[INFO] [stderr]      |             |          `Sub` is not local
[INFO] [stderr]      |             in this procedural macro expansion
[INFO] [stderr] 1840 |             #[dyn_upcast]
[INFO] [stderr] 1841 |             impl<T> Super<T> for (i32,) {}
[INFO] [stderr]      |                     -----
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     `Super` is not local
[INFO] [stderr]      |                     `Super` is not local
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stderr]      |
[INFO] [stderr] 1331 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1336 |             $crate::DerivedDynCast<
[INFO] [stderr]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stderr] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stderr]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stderr]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1846 |             #[dyn_cast(Sub<T>)]
[INFO] [stderr]      |             -------------------
[INFO] [stderr]      |             |          |
[INFO] [stderr]      |             |          `Sub` is not local
[INFO] [stderr]      |             |          `Sub` is not local
[INFO] [stderr]      |             in this procedural macro expansion
[INFO] [stderr] 1847 |             impl<T: Clone> Super<T> for TestSuper where T: core::fmt::Display {}
[INFO] [stderr]      |                            -----        --------- `TestSuper` is not local
[INFO] [stderr]      |                            |
[INFO] [stderr]      |                            `Super` is not local
[INFO] [stderr]      |                            `Super` is not local
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stderr]      |
[INFO] [stderr] 1331 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1336 |             $crate::DerivedDynCast<
[INFO] [stderr]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stderr] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stderr]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stderr]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1845 |             #[dyn_upcast]
[INFO] [stderr]      |             ------------- in this procedural macro expansion
[INFO] [stderr] 1846 |             #[dyn_cast(Sub<T>)]
[INFO] [stderr] 1847 |             impl<T: Clone> Super<T> for TestSuper where T: core::fmt::Display {}
[INFO] [stderr]      |                            -----        --------- `TestSuper` is not local
[INFO] [stderr]      |                            |
[INFO] [stderr]      |                            `Super` is not local
[INFO] [stderr]      |                            `Super` is not local
[INFO] [stderr]      |                            `Super` is not local
[INFO] [stderr]      |                            `Super` is not local
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (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]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stderr]      |
[INFO] [stderr] 1331 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1336 |             $crate::DerivedDynCast<
[INFO] [stderr]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stderr] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stderr]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stderr]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1851 |             #[dyn_cast(Sub<T>)]
[INFO] [stderr]      |             -------------------
[INFO] [stderr]      |             |          |
[INFO] [stderr]      |             |          `Sub` is not local
[INFO] [stderr]      |             |          `Sub` is not local
[INFO] [stderr]      |             in this procedural macro expansion
[INFO] [stderr] 1852 |             impl<T> Super<T> for TestSub {}
[INFO] [stderr]      |                     -----        ------- `TestSub` is not local
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     `Super` is not local
[INFO] [stderr]      |                     `Super` is not local
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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]     --> cast_trait_object/src/lib.rs:1335:13
[INFO] [stderr]      |
[INFO] [stderr] 1331 |         const _: fn() = || {
[INFO] [stderr]      |                         -- move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] ...
[INFO] [stderr] 1335 |             impl< $($lifetime,)* $($generics,)* >
[INFO] [stderr]      |             ^
[INFO] [stderr] 1336 |             $crate::DerivedDynCast<
[INFO] [stderr]      |             ---------------------- `DerivedDynCast` is not local
[INFO] [stderr] 1337 |                 $crate::ConcreteDynCastConfig<
[INFO] [stderr]      |                 ----------------------------- `ConcreteDynCastConfig` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1341 |                 <dyn $source_trait as $crate::GetDynCastConfig<dyn $target_trait>>::Config
[INFO] [stderr]      |                 -------------------------------------------------------------------------- `Config` is not local
[INFO] [stderr] ...
[INFO] [stderr] 1850 |             #[dyn_upcast]
[INFO] [stderr]      |             ------------- in this procedural macro expansion
[INFO] [stderr] 1851 |             #[dyn_cast(Sub<T>)]
[INFO] [stderr] 1852 |             impl<T> Super<T> for TestSub {}
[INFO] [stderr]      |                     -----        ------- `TestSub` is not local
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     `Super` is not local
[INFO] [stderr]      |                     `Super` is not local
[INFO] [stderr]      |                     `Super` is not local
[INFO] [stderr]      |                     `Super` is not local
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[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: this warning originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `cast_trait_object` (lib test) generated 46 warnings (2 duplicates)
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> external_tests/src/lib.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stderr]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `Config` is not local
[INFO] [stderr]    |     `DynCastConfig` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]    = note: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]   --> external_tests/src/lib.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stderr]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `Config` is not local
[INFO] [stderr]    |     `DynCastConfigTargetTest` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]   --> external_tests/src/lib.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stderr]    |     -^^^^^^^^^^---^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |          |
[INFO] [stderr]    |     |          `Sub` is not local
[INFO] [stderr]    |     `Super` is not local
[INFO] [stderr]    |     `GetDynCastConfig` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]   --> external_tests/src/lib.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stderr]    |     -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `Config` is not local
[INFO] [stderr]    |     `DynCastConfig` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]   --> external_tests/src/lib.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stderr]    |     -^^^^^^^^^^^^^^^----^^^^^^^^^^
[INFO] [stderr]    |     |               |
[INFO] [stderr]    |     |               `Sub2` is not local
[INFO] [stderr]    |     `Super` is not local
[INFO] [stderr]    |     `GetDynCastConfig` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]   --> external_tests/src/lib.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 |     #[dyn_cast(Sub, Sub2, SubSub)]
[INFO] [stderr]    |     -^^^^^^^^^^^^^^^^^^^^^------^^
[INFO] [stderr]    |     |                     |
[INFO] [stderr]    |     |                     `SubSub` is not local
[INFO] [stderr]    |     `Super` is not local
[INFO] [stderr]    |     `GetDynCastConfig` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]   --> external_tests/src/lib.rs:26:5
[INFO] [stderr]    |
[INFO] [stderr] 26 |     #[dyn_upcast]
[INFO] [stderr]    |     -^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `Config` is not local
[INFO] [stderr]    |     `DynCastConfig` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]   --> external_tests/src/lib.rs:26:5
[INFO] [stderr]    |
[INFO] [stderr] 26 |     #[dyn_upcast]
[INFO] [stderr]    |     -^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `Config` is not local
[INFO] [stderr]    |     `DynCastConfigTargetTest` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]   --> external_tests/src/lib.rs:26:5
[INFO] [stderr]    |
[INFO] [stderr] 26 |     #[dyn_upcast]
[INFO] [stderr]    |     -^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `Super` is not local
[INFO] [stderr]    |     `GetDynCastConfig` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] 27 |     pub trait Super {}
[INFO] [stderr]    |               ----- `Super` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `::cast_trait_object::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `::cast_trait_object::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]   --> external_tests/src/lib.rs:48:5
[INFO] [stderr]    |
[INFO] [stderr] 48 |     #[cfg_attr(feature = "proc-macros", dyn_upcast)]
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `__SelfType` is not local
[INFO] [stderr]    |     `DynCast` is not local
[INFO] [stderr]    |     `__ConfigType` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (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]   --> external_tests/src/lib.rs:47:41
[INFO] [stderr]    |
[INFO] [stderr] 47 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub))]
[INFO] [stderr]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                         |
[INFO] [stderr]    |                                         `__SelfType` is not local
[INFO] [stderr]    |                                         `DynCast` is not local
[INFO] [stderr]    |                                         `__ConfigType` is not local
[INFO] [stderr]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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]   --> external_tests/src/lib.rs:54:41
[INFO] [stderr]    |
[INFO] [stderr] 54 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Sub, Sub2, SubSub, Super))]
[INFO] [stderr]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                         |
[INFO] [stderr]    |                                         `__SelfType` is not local
[INFO] [stderr]    |                                         `DynCast` is not local
[INFO] [stderr]    |                                         `__ConfigType` is not local
[INFO] [stderr]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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]   --> external_tests/src/lib.rs:61:5
[INFO] [stderr]    |
[INFO] [stderr] 61 |     #[cfg_attr(feature = "proc-macros", dyn_upcast(Super))]
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `__SelfType` is not local
[INFO] [stderr]    |     `DynCast` is not local
[INFO] [stderr]    |     `__ConfigType` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (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]   --> external_tests/src/lib.rs:60:41
[INFO] [stderr]    |
[INFO] [stderr] 60 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub))]
[INFO] [stderr]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                         |
[INFO] [stderr]    |                                         `__SelfType` is not local
[INFO] [stderr]    |                                         `DynCast` is not local
[INFO] [stderr]    |                                         `__ConfigType` is not local
[INFO] [stderr]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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]   --> external_tests/src/lib.rs:69:41
[INFO] [stderr]    |
[INFO] [stderr] 69 |     #[cfg_attr(feature = "proc-macros", dyn_cast(Super => Sub, Sub2, SubSub, Super))]
[INFO] [stderr]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                         |
[INFO] [stderr]    |                                         `__SelfType` is not local
[INFO] [stderr]    |                                         `DynCast` is not local
[INFO] [stderr]    |                                         `__ConfigType` is not local
[INFO] [stderr]    |                                         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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]   --> external_tests/src/lib.rs:83:5
[INFO] [stderr]    |
[INFO] [stderr] 83 |     #[dyn_cast(Sub)]
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `__SuperToSubDynCastConfig` is not local
[INFO] [stderr]    |     `DynCastConfig` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]   --> external_tests/src/lib.rs:83:5
[INFO] [stderr]    |
[INFO] [stderr] 83 |     #[dyn_cast(Sub)]
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `__SuperToSubDynCastConfig` is not local
[INFO] [stderr]    |     `DynCastConfigTargetTest` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]   --> external_tests/src/lib.rs:83:5
[INFO] [stderr]    |
[INFO] [stderr] 83 |     #[dyn_cast(Sub)]
[INFO] [stderr]    |     -^^^^^^^^^^---^^
[INFO] [stderr]    |     |          |
[INFO] [stderr]    |     |          `Sub` is not local
[INFO] [stderr]    |     `Super` is not local
[INFO] [stderr]    |     `GetDynCastConfig` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]   --> external_tests/src/lib.rs:84:5
[INFO] [stderr]    |
[INFO] [stderr] 84 |     #[dyn_upcast]
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `__SuperToSuperDynCastConfig` is not local
[INFO] [stderr]    |     `DynCastConfig` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]   --> external_tests/src/lib.rs:84:5
[INFO] [stderr]    |
[INFO] [stderr] 84 |     #[dyn_upcast]
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `__SuperToSuperDynCastConfig` is not local
[INFO] [stderr]    |     `DynCastConfigTargetTest` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]   --> external_tests/src/lib.rs:84:5
[INFO] [stderr]    |
[INFO] [stderr] 84 |     #[dyn_upcast]
[INFO] [stderr]    |     -^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `Super` is not local
[INFO] [stderr]    |     `GetDynCastConfig` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] 85 |     trait Super {}
[INFO] [stderr]    |           ----- `Super` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]   --> external_tests/src/lib.rs:89:5
[INFO] [stderr]    |
[INFO] [stderr] 89 |     #[dyn_upcast(Super)]
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `__SelfType` is not local
[INFO] [stderr]    |     `DynCast` is not local
[INFO] [stderr]    |     `__ConfigType` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (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]   --> external_tests/src/lib.rs:88:5
[INFO] [stderr]    |
[INFO] [stderr] 88 |     #[dyn_cast(Super => Sub)]
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `__SelfType` is not local
[INFO] [stderr]    |     `DynCast` is not local
[INFO] [stderr]    |     `__ConfigType` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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]   --> external_tests/src/lib.rs:94:5
[INFO] [stderr]    |
[INFO] [stderr] 94 |     #[dyn_upcast(Super)]
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `__SelfType` is not local
[INFO] [stderr]    |     `DynCast` is not local
[INFO] [stderr]    |     `__ConfigType` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (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]   --> external_tests/src/lib.rs:93:5
[INFO] [stderr]    |
[INFO] [stderr] 93 |     #[dyn_cast(Super => Sub)]
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     `__SelfType` is not local
[INFO] [stderr]    |     `DynCast` is not local
[INFO] [stderr]    |     `__ConfigType` is not local
[INFO] [stderr]    |     move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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]    --> external_tests/src/lib.rs:110:9
[INFO] [stderr]     |
[INFO] [stderr] 110 |         #[dyn_upcast]
[INFO] [stderr]     |         ^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         `__SuperToSuper_853e9f102bbb9075_DynCastConfig` is not local
[INFO] [stderr]     |         `DynCastConfig` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]    --> external_tests/src/lib.rs:110:9
[INFO] [stderr]     |
[INFO] [stderr] 110 |         #[dyn_upcast]
[INFO] [stderr]     |         ^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         `__SuperToSuper_853e9f102bbb9075_DynCastConfig` is not local
[INFO] [stderr]     |         `DynCastConfigTargetTest` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]    --> external_tests/src/lib.rs:110:9
[INFO] [stderr]     |
[INFO] [stderr] 110 |         #[dyn_upcast]
[INFO] [stderr]     |         -^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         `Super` is not local
[INFO] [stderr]     |         `GetDynCastConfig` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stderr] 112 |         trait Super<T> {}
[INFO] [stderr]     |               ----- `Super` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (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]    --> external_tests/src/lib.rs:111:9
[INFO] [stderr]     |
[INFO] [stderr] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         `__SuperToSub_1d08e4229f0c4a3_DynCastConfig` is not local
[INFO] [stderr]     |         `DynCastConfig` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]    --> external_tests/src/lib.rs:111:9
[INFO] [stderr]     |
[INFO] [stderr] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         `__SuperToSub_1d08e4229f0c4a3_DynCastConfig` is not local
[INFO] [stderr]     |         `DynCastConfigTargetTest` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]    --> external_tests/src/lib.rs:111:9
[INFO] [stderr]     |
[INFO] [stderr] 111 |         #[dyn_cast(Sub<T>)]
[INFO] [stderr]     |         -^^^^^^^^^^---^^^^^
[INFO] [stderr]     |         |          |
[INFO] [stderr]     |         |          `Sub` is not local
[INFO] [stderr]     |         `Super` is not local
[INFO] [stderr]     |         `GetDynCastConfig` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]    --> external_tests/src/lib.rs:125:9
[INFO] [stderr]     |
[INFO] [stderr] 125 |         #[dyn_cast(Sub<T>)]
[INFO] [stderr]     |         ^^^^^^^^^^^---^^^^^
[INFO] [stderr]     |         |          |
[INFO] [stderr]     |         |          `Sub` is not local
[INFO] [stderr]     |         |          `Sub` is not local
[INFO] [stderr]     |         `DerivedDynCast` is not local
[INFO] [stderr]     |         `ConcreteDynCastConfig` is not local
[INFO] [stderr]     |         `Config` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] 126 |         impl<T: Clone> Super<T> for TestSuper where T: core::fmt::Display {}
[INFO] [stderr]     |                        -----        --------- `TestSuper` is not local
[INFO] [stderr]     |                        |
[INFO] [stderr]     |                        `Super` is not local
[INFO] [stderr]     |                        `Super` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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]    --> external_tests/src/lib.rs:124:9
[INFO] [stderr]     |
[INFO] [stderr] 124 |         #[dyn_upcast]
[INFO] [stderr]     |         ^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         `DerivedDynCast` is not local
[INFO] [stderr]     |         `ConcreteDynCastConfig` is not local
[INFO] [stderr]     |         `Config` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] 125 |         #[dyn_cast(Sub<T>)]
[INFO] [stderr] 126 |         impl<T: Clone> Super<T> for TestSuper where T: core::fmt::Display {}
[INFO] [stderr]     |                        -----        --------- `TestSuper` is not local
[INFO] [stderr]     |                        |
[INFO] [stderr]     |                        `Super` is not local
[INFO] [stderr]     |                        `Super` is not local
[INFO] [stderr]     |                        `Super` is not local
[INFO] [stderr]     |                        `Super` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (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]    --> external_tests/src/lib.rs:130:9
[INFO] [stderr]     |
[INFO] [stderr] 130 |         #[dyn_cast(Sub<T>)]
[INFO] [stderr]     |         ^^^^^^^^^^^---^^^^^
[INFO] [stderr]     |         |          |
[INFO] [stderr]     |         |          `Sub` is not local
[INFO] [stderr]     |         |          `Sub` is not local
[INFO] [stderr]     |         `DerivedDynCast` is not local
[INFO] [stderr]     |         `ConcreteDynCastConfig` is not local
[INFO] [stderr]     |         `Config` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] 131 |         impl<T> Super<T> for TestSub {}
[INFO] [stderr]     |                 -----        ------- `TestSub` is not local
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 `Super` is not local
[INFO] [stderr]     |                 `Super` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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]    --> external_tests/src/lib.rs:129:9
[INFO] [stderr]     |
[INFO] [stderr] 129 |         #[dyn_upcast]
[INFO] [stderr]     |         ^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         `DerivedDynCast` is not local
[INFO] [stderr]     |         `ConcreteDynCastConfig` is not local
[INFO] [stderr]     |         `Config` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr] 130 |         #[dyn_cast(Sub<T>)]
[INFO] [stderr] 131 |         impl<T> Super<T> for TestSub {}
[INFO] [stderr]     |                 -----        ------- `TestSub` is not local
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 `Super` is not local
[INFO] [stderr]     |                 `Super` is not local
[INFO] [stderr]     |                 `Super` is not local
[INFO] [stderr]     |                 `Super` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `::cast_trait_object::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `::cast_trait_object::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `::cast_trait_object::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (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]    --> external_tests/src/lib.rs:139:9
[INFO] [stderr]     |
[INFO] [stderr] 139 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         `__SuperToSub_b44d5e6e48c20758_DynCastConfig` is not local
[INFO] [stderr]     |         `DynCastConfig` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]    --> external_tests/src/lib.rs:139:9
[INFO] [stderr]     |
[INFO] [stderr] 139 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         `__SuperToSub_b44d5e6e48c20758_DynCastConfig` is not local
[INFO] [stderr]     |         `DynCastConfigTargetTest` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]    --> external_tests/src/lib.rs:139:9
[INFO] [stderr]     |
[INFO] [stderr] 139 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stderr]     |         -^^^^^^^^^^---^^^^^^^^----^^^
[INFO] [stderr]     |         |          |          |
[INFO] [stderr]     |         |          |          `Test` is not local
[INFO] [stderr]     |         |          `Sub` is not local
[INFO] [stderr]     |         `Super` is not local
[INFO] [stderr]     |         `GetDynCastConfig` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]    --> external_tests/src/lib.rs:140:9
[INFO] [stderr]     |
[INFO] [stderr] 140 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         `__SuperToSub_b55641dd2f27bd22_DynCastConfig` is not local
[INFO] [stderr]     |         `DynCastConfig` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]    --> external_tests/src/lib.rs:140:9
[INFO] [stderr]     |
[INFO] [stderr] 140 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         `__SuperToSub_b55641dd2f27bd22_DynCastConfig` is not local
[INFO] [stderr]     |         `DynCastConfigTargetTest` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]    --> external_tests/src/lib.rs:140:9
[INFO] [stderr]     |
[INFO] [stderr] 140 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stderr]     |         -^^^^^^^^^^---^^^^^^^^^^^^^
[INFO] [stderr]     |         |          |
[INFO] [stderr]     |         |          `Sub` is not local
[INFO] [stderr]     |         `Super` is not local
[INFO] [stderr]     |         `GetDynCastConfig` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 2 bodies
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (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]    --> external_tests/src/lib.rs:143:9
[INFO] [stderr]     |
[INFO] [stderr] 143 |         #[dyn_cast(Sub<Item = ()>)]
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         `__SelfType` is not local
[INFO] [stderr]     |         `DynCast` is not local
[INFO] [stderr]     |         `__ConfigType` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (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]    --> external_tests/src/lib.rs:142:9
[INFO] [stderr]     |
[INFO] [stderr] 142 |         #[dyn_cast(Sub<Item = Test>)]
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         `__SelfType` is not local
[INFO] [stderr]     |         `DynCast` is not local
[INFO] [stderr]     |         `__ConfigType` is not local
[INFO] [stderr]     |         move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[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: this warning originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `external_tests` (lib) generated 56 warnings (13 duplicates)
[INFO] [stderr] warning: `external_tests` (lib test) generated 56 warnings (56 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/cast_trait_object-d3c3c4f0479ffc5e)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test tests::cast_to_generic_trait_object ... ok
[INFO] [stdout] test tests::generic_impl ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/cast_trait_object_macros-9fb9bf338150a7dd)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/external_tests-2d4091e2fa281c3e)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test tests::sub_to_super ... ok
[INFO] [stdout] test tests::super_to_sub2 ... ok
[INFO] [stdout] test tests::super_to_sub2_fail ... ok
[INFO] [stdout] test tests::super_to_sub ... ok
[INFO] [stdout] test tests::super_to_sub_alloc ... ok
[INFO] [stdout] test tests::test_super_to_sub ... ok
[INFO] [stdout] test with_macros::associated_type::it_works ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests cast_trait_object
[INFO] [stderr] warning: lint `broken_intra_doc_links` has been renamed to `rustdoc::broken_intra_doc_links`
[INFO] [stderr]    --> cast_trait_object/src/lib.rs:408:9
[INFO] [stderr]     |
[INFO] [stderr] 408 | #![deny(broken_intra_doc_links)]
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^ help: use the new name: `rustdoc::broken_intra_doc_links`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 16 tests
[INFO] [stdout] test cast_trait_object/src/lib.rs - DynCastExt::dyn_upcast (line 765) ... FAILED
[INFO] [stdout] test cast_trait_object/src/lib.rs - DynCastExt::dyn_cast (line 734) ... FAILED
[INFO] [stdout] test cast_trait_object/src/lib.rs - dyn_cast (line 532) ... FAILED
[INFO] [stdout] test cast_trait_object/src/lib.rs - dyn_upcast (line 457) ... FAILED
[INFO] [stdout] test cast_trait_object/src/lib.rs - dyn_cast (line 509) ... FAILED
[INFO] [stdout] test cast_trait_object/src/lib.rs - DynCastExt::dyn_cast_with_config (line 837) ... FAILED
[INFO] [stdout] test cast_trait_object/src/lib.rs - (line 104) ... FAILED
[INFO] [stdout] test cast_trait_object/src/lib.rs - DynCastExt::dyn_cast_adv (line 796) ... FAILED
[INFO] [stdout] test cast_trait_object/src/lib.rs - dyn_upcast (line 480) ... FAILED
[INFO] [stdout] test cast_trait_object/src/lib.rs - (line 69) ... FAILED
[INFO] [stdout] test cast_trait_object/src/lib.rs - (line 193) ... FAILED
[INFO] [stdout] test cast_trait_object/src/lib.rs - (line 22) ... FAILED
[INFO] [stdout] test cast_trait_object/src/lib.rs - (line 48) ... FAILED
[INFO] [stdout] test cast_trait_object/src/lib.rs - (line 143) ... FAILED
[INFO] [stdout] test cast_trait_object/src/lib.rs - (line 297) ... ok
[INFO] [stdout] test cast_trait_object/src/lib.rs - (line 244) ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- cast_trait_object/src/lib.rs - DynCastExt::dyn_upcast (line 765) stdout ----
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:768:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperUpcast = Super => Super);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:763:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings, rust_2018_idioms)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:768:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperUpcast = Super => Super);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:768:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperUpcast = Super => Super);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----^^^^-----^
[INFO] [stdout]   | |                                     |        |
[INFO] [stdout]   | |                                     |        `Super` is not local
[INFO] [stdout]   | |                                     `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:775:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl_dyn_cast!(Foo as Super => Super);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- cast_trait_object/src/lib.rs - DynCastExt::dyn_cast (line 734) stdout ----
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:737:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSubCast = Super => Sub);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:732:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings, rust_2018_idioms)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:737:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSubCast = Super => Sub);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:737:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSubCast = Super => Sub);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----^^^^---^
[INFO] [stdout]   | |                                        |        |
[INFO] [stdout]   | |                                        |        `Sub` is not local
[INFO] [stdout]   | |                                        `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:744:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl_dyn_cast!(Foo as Super => Sub);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- cast_trait_object/src/lib.rs - dyn_cast (line 532) stdout ----
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:536:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[dyn_cast(Sub)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__SuperToSubDynCastConfig` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:531:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings, rust_2018_idioms)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:536:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[dyn_cast(Sub)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__SuperToSubDynCastConfig` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:536:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[dyn_cast(Sub)]
[INFO] [stdout]   | -^^^^^^^^^^---^^
[INFO] [stdout]   | |          |
[INFO] [stdout]   | |          `Sub` is not local
[INFO] [stdout]   | `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:542:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[dyn_cast(Sub)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 5 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- cast_trait_object/src/lib.rs - dyn_upcast (line 457) stdout ----
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:461:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[dyn_upcast]
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:456:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings, rust_2018_idioms)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:461:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[dyn_upcast]
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:461:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[dyn_upcast]
[INFO] [stdout]   | -^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout] 7 | trait Super {}
[INFO] [stdout]   |       ----- `Super` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:466:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[dyn_upcast(Super)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 5 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- cast_trait_object/src/lib.rs - dyn_cast (line 509) stdout ----
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:513:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[dyn_cast(Sub)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__SuperToSubDynCastConfig` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:508:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings, rust_2018_idioms)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:513:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[dyn_cast(Sub)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__SuperToSubDynCastConfig` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:513:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[dyn_cast(Sub)]
[INFO] [stdout]   | -^^^^^^^^^^---^^
[INFO] [stdout]   | |          |
[INFO] [stdout]   | |          `Sub` is not local
[INFO] [stdout]   | `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:518:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[dyn_cast(Super => Sub)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 5 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- cast_trait_object/src/lib.rs - DynCastExt::dyn_cast_with_config (line 837) stdout ----
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:840:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSub1Cast = Super => Sub1);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:835:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings, rust_2018_idioms)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:840:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSub1Cast = Super => Sub1);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:840:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSub1Cast = Super => Sub1);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----^^^^----^
[INFO] [stdout]   | |                                         |        |
[INFO] [stdout]   | |                                         |        `Sub1` is not local
[INFO] [stdout]   | |                                         `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:841:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(SuperToSub2Cast = Super => Sub2);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:841:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(SuperToSub2Cast = Super => Sub2);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:841:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(SuperToSub2Cast = Super => Sub2);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----^^^^----^
[INFO] [stdout]   | |                                         |        |
[INFO] [stdout]   | |                                         |        `Sub2` is not local
[INFO] [stdout]   | |                                         `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:850:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl_dyn_cast!(Foo as Super => Sub1, Sub2);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:850:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl_dyn_cast!(Foo as Super => Sub1, Sub2);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- cast_trait_object/src/lib.rs - (line 104) stdout ----
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:119:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[dyn_cast(Super, Sub)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout]    | `DynCastConfig` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:103:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings, rust_2018_idioms)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:119:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[dyn_cast(Super, Sub)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout]    | `DynCastConfigTargetTest` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:119:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[dyn_cast(Super, Sub)]
[INFO] [stdout]    | -^^^^^^^^^^-----^^^^^^^
[INFO] [stdout]    | |          |
[INFO] [stdout]    | |          `Super` is not local
[INFO] [stdout]    | `Super` is not local
[INFO] [stdout]    | `GetDynCastConfig` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:119:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[dyn_cast(Super, Sub)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SuperToSubDynCastConfig` is not local
[INFO] [stdout]    | `DynCastConfig` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:119:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[dyn_cast(Super, Sub)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SuperToSubDynCastConfig` is not local
[INFO] [stdout]    | `DynCastConfigTargetTest` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:119:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[dyn_cast(Super, Sub)]
[INFO] [stdout]    | -^^^^^^^^^^^^^^^^^---^^
[INFO] [stdout]    | |                 |
[INFO] [stdout]    | |                 `Sub` is not local
[INFO] [stdout]    | `Super` is not local
[INFO] [stdout]    | `GetDynCastConfig` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:124:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[dyn_cast(Super, Sub)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 5 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:124:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[dyn_cast(Super, Sub)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 5 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- cast_trait_object/src/lib.rs - DynCastExt::dyn_cast_adv (line 796) stdout ----
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:799:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSub1Cast = Super => Sub1);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:794:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings, rust_2018_idioms)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:799:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSub1Cast = Super => Sub1);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:799:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSub1Cast = Super => Sub1);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----^^^^----^
[INFO] [stdout]   | |                                         |        |
[INFO] [stdout]   | |                                         |        `Sub1` is not local
[INFO] [stdout]   | |                                         `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:800:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(SuperToSub2Cast = Super => Sub2);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:800:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(SuperToSub2Cast = Super => Sub2);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:800:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(SuperToSub2Cast = Super => Sub2);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----^^^^----^
[INFO] [stdout]   | |                                         |        |
[INFO] [stdout]   | |                                         |        `Sub2` is not local
[INFO] [stdout]   | |                                         `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:809:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl_dyn_cast!(Foo as Super => Sub1, Sub2);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:809:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl_dyn_cast!(Foo as Super => Sub1, Sub2);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- cast_trait_object/src/lib.rs - dyn_upcast (line 480) stdout ----
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:484:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[dyn_upcast]
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:479:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings, rust_2018_idioms)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:484:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[dyn_upcast]
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:484:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[dyn_upcast]
[INFO] [stdout]   | -^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout] 7 | trait Super {}
[INFO] [stdout]   |       ----- `Super` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:490:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[dyn_upcast]
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 5 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- cast_trait_object/src/lib.rs - (line 69) stdout ----
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:84:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[dyn_cast(Sub)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SuperToSubDynCastConfig` is not local
[INFO] [stdout]    | `DynCastConfig` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings, rust_2018_idioms)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:84:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[dyn_cast(Sub)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SuperToSubDynCastConfig` is not local
[INFO] [stdout]    | `DynCastConfigTargetTest` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:84:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[dyn_cast(Sub)]
[INFO] [stdout]    | -^^^^^^^^^^---^^
[INFO] [stdout]    | |          |
[INFO] [stdout]    | |          `Sub` is not local
[INFO] [stdout]    | `Super` is not local
[INFO] [stdout]    | `GetDynCastConfig` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[dyn_upcast]
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout]    | `DynCastConfig` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[dyn_upcast]
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SuperToSuperDynCastConfig` is not local
[INFO] [stdout]    | `DynCastConfigTargetTest` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[dyn_upcast]
[INFO] [stdout]    | -^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `Super` is not local
[INFO] [stdout]    | `GetDynCastConfig` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout] 19 | trait Super {}
[INFO] [stdout]    |       ----- `Super` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:91:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[dyn_upcast]
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 5 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:90:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[dyn_cast(Sub)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 5 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- cast_trait_object/src/lib.rs - (line 193) stdout ----
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:197:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(UpcastConfig = Super => Super);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:191:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings, rust_2018_idioms)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:197:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(UpcastConfig = Super => Super);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:197:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(UpcastConfig = Super => Super);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----^^^^-----^
[INFO] [stdout]   | |                                      |        |
[INFO] [stdout]   | |                                      |        `Super` is not local
[INFO] [stdout]   | |                                      `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:198:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | create_dyn_cast_config!(SuperConfig = Super => Sub);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:198:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | create_dyn_cast_config!(SuperConfig = Super => Sub);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:198:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | create_dyn_cast_config!(SuperConfig = Super => Sub);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----^^^^---^
[INFO] [stdout]   | |                                     |        |
[INFO] [stdout]   | |                                     |        `Sub` is not local
[INFO] [stdout]   | |                                     `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:208:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl_dyn_cast!(for<T> OnlyDisplayGeneric<T> as Super where {T: 'static} => Sub);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^------------------^^^^^^^-----^^^^^^^^^^^^^^^^^^^^^^^---^
[INFO] [stdout]    | |                     |                        |                           |
[INFO] [stdout]    | |                     |                        |                           `Sub` is not local
[INFO] [stdout]    | |                     |                        |                           `Sub` is not local
[INFO] [stdout]    | |                     |                        `Super` is not local
[INFO] [stdout]    | |                     |                        `Super` is not local
[INFO] [stdout]    | |                     `OnlyDisplayGeneric` is not local
[INFO] [stdout]    | `DerivedDynCast` is not local
[INFO] [stdout]    | `ConcreteDynCastConfig` is not local
[INFO] [stdout]    | `Config` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:209:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl_dyn_cast!(for<T> OnlyDisplayGeneric<T> as Super where {T: 'static} => Super);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^------------------^^^^^^^-----^^^^^^^^^^^^^^^^^^^^^^^-----^
[INFO] [stdout]    | |                     |                        |                           |
[INFO] [stdout]    | |                     |                        |                           `Super` is not local
[INFO] [stdout]    | |                     |                        |                           `Super` is not local
[INFO] [stdout]    | |                     |                        `Super` is not local
[INFO] [stdout]    | |                     |                        `Super` is not local
[INFO] [stdout]    | |                     `OnlyDisplayGeneric` is not local
[INFO] [stdout]    | `DerivedDynCast` is not local
[INFO] [stdout]    | `ConcreteDynCastConfig` is not local
[INFO] [stdout]    | `Config` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 4 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- cast_trait_object/src/lib.rs - (line 22) stdout ----
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:25:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSubCast = Super => Sub);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:20:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings, rust_2018_idioms)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:25:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSubCast = Super => Sub);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:25:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSubCast = Super => Sub);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----^^^^---^
[INFO] [stdout]   | |                                        |        |
[INFO] [stdout]   | |                                        |        `Sub` is not local
[INFO] [stdout]   | |                                        `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:26:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(SuperUpcast = Super => Super);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:26:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(SuperUpcast = Super => Super);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:26:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(SuperUpcast = Super => Super);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----^^^^-----^
[INFO] [stdout]   | |                                     |        |
[INFO] [stdout]   | |                                     |        `Super` is not local
[INFO] [stdout]   | |                                     `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:33:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl_dyn_cast!(Foo as Super => Sub, Super);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:33:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl_dyn_cast!(Foo as Super => Sub, Super);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- cast_trait_object/src/lib.rs - (line 48) stdout ----
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:51:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSubCast = Super => Sub);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:46:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings, rust_2018_idioms)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:51:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSubCast = Super => Sub);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:51:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | create_dyn_cast_config!(SuperToSubCast = Super => Sub);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----^^^^---^
[INFO] [stdout]   | |                                        |        |
[INFO] [stdout]   | |                                        |        `Sub` is not local
[INFO] [stdout]   | |                                        `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:52:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(SuperUpcast = Super => Super);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:52:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(SuperUpcast = Super => Super);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   | |
[INFO] [stdout]   | `__ConfigType` is not local
[INFO] [stdout]   | `DynCastConfigTargetTest` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> cast_trait_object/src/lib.rs:52:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | create_dyn_cast_config!(SuperUpcast = Super => Super);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----^^^^-----^
[INFO] [stdout]   | |                                     |        |
[INFO] [stdout]   | |                                     |        `Super` is not local
[INFO] [stdout]   | |                                     `Super` is not local
[INFO] [stdout]   | `GetDynCastConfig` is not local
[INFO] [stdout]   | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the macro `create_dyn_cast_config` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:59:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl_dyn_cast!(Foo => SuperToSubCast, SuperUpcast);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:59:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl_dyn_cast!(Foo => SuperToSubCast, SuperUpcast);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SelfType` is not local
[INFO] [stdout]    | `DynCast` is not local
[INFO] [stdout]    | `__ConfigType` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 6 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast` which comes from the expansion of the macro `impl_dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- cast_trait_object/src/lib.rs - (line 143) stdout ----
[INFO] [stdout] error: fields `0`, `1`, and `2` are never read
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:165:14
[INFO] [stdout]    |
[INFO] [stdout] 24 | struct Color(u8, u8, u8);
[INFO] [stdout]    |        ----- ^^  ^^  ^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        fields in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing these fields
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:142:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings, rust_2018_idioms)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[deny(dead_code)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:159:1
[INFO] [stderr] error: doctest failed, to rerun pass `-p cast_trait_object --doc`
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[dyn_cast(Sub<T>)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SuperToSub_1d08e4229f0c4a3_DynCastConfig` is not local
[INFO] [stdout]    | `DynCastConfig` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:159:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[dyn_cast(Sub<T>)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SuperToSub_1d08e4229f0c4a3_DynCastConfig` is not local
[INFO] [stdout]    | `DynCastConfigTargetTest` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:159:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[dyn_cast(Sub<T>)]
[INFO] [stdout]    | -^^^^^^^^^^---^^^^^
[INFO] [stdout]    | |          |
[INFO] [stdout]    | |          `Sub` is not local
[INFO] [stdout]    | `Super` is not local
[INFO] [stdout]    | `GetDynCastConfig` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:160:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[dyn_upcast]
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SuperToSuper_853e9f102bbb9075_DynCastConfig` is not local
[INFO] [stdout]    | `DynCastConfig` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:160:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[dyn_upcast]
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `__SuperToSuper_853e9f102bbb9075_DynCastConfig` is not local
[INFO] [stdout]    | `DynCastConfigTargetTest` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:160:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[dyn_upcast]
[INFO] [stdout]    | -^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `Super` is not local
[INFO] [stdout]    | `GetDynCastConfig` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout] 20 | trait Super<T> {}
[INFO] [stdout]    |       ----- `Super` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::impl_dyn_cast_config` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `$crate::impl_dyn_cast_config` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:167:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[dyn_upcast]
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `DerivedDynCast` is not local
[INFO] [stdout]    | `ConcreteDynCastConfig` is not local
[INFO] [stdout]    | `Config` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout] 27 | impl<T> Super<T> for Color {}
[INFO] [stdout]    |         -----        ----- `Color` is not local
[INFO] [stdout]    |         |
[INFO] [stdout]    |         `Super` is not local
[INFO] [stdout]    |         `Super` is not local
[INFO] [stdout]    |         `Super` is not local
[INFO] [stdout]    |         `Super` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:166:1
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[dyn_cast(Sub<T>)]
[INFO] [stdout]    | ^^^^^^^^^^^---^^^^^
[INFO] [stdout]    | |          |
[INFO] [stdout]    | |          `Sub` is not local
[INFO] [stdout]    | |          `Sub` is not local
[INFO] [stdout]    | `DerivedDynCast` is not local
[INFO] [stdout]    | `ConcreteDynCastConfig` is not local
[INFO] [stdout]    | `Config` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout] 26 | #[dyn_upcast]
[INFO] [stdout] 27 | impl<T> Super<T> for Color {}
[INFO] [stdout]    |         -----        ----- `Color` is not local
[INFO] [stdout]    |         |
[INFO] [stdout]    |         `Super` is not local
[INFO] [stdout]    |         `Super` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:173:1
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[dyn_upcast]
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `DerivedDynCast` is not local
[INFO] [stdout]    | `ConcreteDynCastConfig` is not local
[INFO] [stdout]    | `Config` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout] 33 | impl<T: 'static> Super<T> for Example<T> {}
[INFO] [stdout]    |                  -----        ------- `Example` is not local
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  `Super` is not local
[INFO] [stdout]    |                  `Super` is not local
[INFO] [stdout]    |                  `Super` is not local
[INFO] [stdout]    |                  `Super` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_upcast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> cast_trait_object/src/lib.rs:172:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[dyn_cast(Sub<T>)]
[INFO] [stdout]    | ^^^^^^^^^^^---^^^^^
[INFO] [stdout]    | |          |
[INFO] [stdout]    | |          `Sub` is not local
[INFO] [stdout]    | |          `Sub` is not local
[INFO] [stdout]    | `DerivedDynCast` is not local
[INFO] [stdout]    | `ConcreteDynCastConfig` is not local
[INFO] [stdout]    | `Config` is not local
[INFO] [stdout]    | move the `impl` block outside of this closure `<unnameable>` and up 3 bodies
[INFO] [stdout] 32 | #[dyn_upcast]
[INFO] [stdout] 33 | impl<T: 'static> Super<T> for Example<T> {}
[INFO] [stdout]    |                  -----        ------- `Example` is not local
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  `Super` is not local
[INFO] [stdout]    |                  `Super` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `crate::impl_dyn_cast` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `crate::impl_dyn_cast` may come from an old version of the `cast_trait_object` crate, try updating your dependency with `cargo update -p cast_trait_object`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this error originates in the macro `crate::impl_dyn_cast` which comes from the expansion of the attribute macro `dyn_cast` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 11 previous errors
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     cast_trait_object/src/lib.rs - (line 104)
[INFO] [stdout]     cast_trait_object/src/lib.rs - (line 143)
[INFO] [stdout]     cast_trait_object/src/lib.rs - (line 193)
[INFO] [stdout]     cast_trait_object/src/lib.rs - (line 22)
[INFO] [stdout]     cast_trait_object/src/lib.rs - (line 48)
[INFO] [stdout]     cast_trait_object/src/lib.rs - (line 69)
[INFO] [stdout]     cast_trait_object/src/lib.rs - DynCastExt::dyn_cast (line 734)
[INFO] [stdout]     cast_trait_object/src/lib.rs - DynCastExt::dyn_cast_adv (line 796)
[INFO] [stdout]     cast_trait_object/src/lib.rs - DynCastExt::dyn_cast_with_config (line 837)
[INFO] [stdout]     cast_trait_object/src/lib.rs - DynCastExt::dyn_upcast (line 765)
[INFO] [stdout]     cast_trait_object/src/lib.rs - dyn_cast (line 509)
[INFO] [stdout]     cast_trait_object/src/lib.rs - dyn_cast (line 532)
[INFO] [stdout]     cast_trait_object/src/lib.rs - dyn_upcast (line 457)
[INFO] [stdout]     cast_trait_object/src/lib.rs - dyn_upcast (line 480)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 2 passed; 14 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "cb716d57fba738fb9ed7c9d2d2815e1c2ac0983bacfd3c3c951c177700876e5e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cb716d57fba738fb9ed7c9d2d2815e1c2ac0983bacfd3c3c951c177700876e5e", kill_on_drop: false }`
[INFO] [stdout] cb716d57fba738fb9ed7c9d2d2815e1c2ac0983bacfd3c3c951c177700876e5e
