[INFO] fetching crate ertrace 0.2.1... [INFO] checking ertrace-0.2.1 against master#5518eaa946291f00471af8b254b2a1715f234882 for pr-120393-1 [INFO] extracting crate ertrace 0.2.1 into /workspace/builds/worker-5-tc1/source [INFO] validating manifest of crates.io crate ertrace 0.2.1 on toolchain 5518eaa946291f00471af8b254b2a1715f234882 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate ertrace 0.2.1 [INFO] finished tweaking crates.io crate ertrace 0.2.1 [INFO] tweaked toml for crates.io crate ertrace 0.2.1 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] crate crates.io crate ertrace 0.2.1 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" "+5518eaa946291f00471af8b254b2a1715f234882" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 58e788e68bde593ee49e1f6289fb5eb5ae6441f534da17eeae2d7508b0421608 [INFO] running `Command { std: "docker" "start" "-a" "58e788e68bde593ee49e1f6289fb5eb5ae6441f534da17eeae2d7508b0421608", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "58e788e68bde593ee49e1f6289fb5eb5ae6441f534da17eeae2d7508b0421608", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "58e788e68bde593ee49e1f6289fb5eb5ae6441f534da17eeae2d7508b0421608", kill_on_drop: false }` [INFO] [stdout] 58e788e68bde593ee49e1f6289fb5eb5ae6441f534da17eeae2d7508b0421608 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] dad4f3154f22eceadc1f2f778b1136e34f25d4042244d23668f261fcc7f7e5bb [INFO] running `Command { std: "docker" "start" "-a" "dad4f3154f22eceadc1f2f778b1136e34f25d4042244d23668f261fcc7f7e5bb", kill_on_drop: false }` [INFO] [stderr] Checking ertrace v0.2.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::ertrace_macro::*` [INFO] [stdout] --> src/lib.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 146 | pub use crate::ertrace_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::new_error_enum_macro::*` [INFO] [stdout] --> src/lib.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 147 | pub use crate::new_error_enum_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::new_error_struct_macro::*` [INFO] [stdout] --> src/lib.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | pub use crate::new_error_struct_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::new_error_types_macro::*` [INFO] [stdout] --> src/lib.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 149 | pub use crate::new_error_types_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ertrace_macro::*` [INFO] [stdout] --> src/lib.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 146 | pub use crate::ertrace_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::new_error_enum_macro::*` [INFO] [stdout] --> src/lib.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 147 | pub use crate::new_error_enum_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::new_error_struct_macro::*` [INFO] [stdout] --> src/lib.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | pub use crate::new_error_struct_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::new_error_types_macro::*` [INFO] [stdout] --> src/lib.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 149 | pub use crate::new_error_types_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> src/ertrace.rs:23:22 [INFO] [stdout] | [INFO] [stdout] 23 | if FREE_LIST.compare_and_swap(current_ptr, new_ptr, Ordering::Release) == current_ptr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> src/ertrace.rs:23:22 [INFO] [stdout] | [INFO] [stdout] 23 | if FREE_LIST.compare_and_swap(current_ptr, new_ptr, Ordering::Release) == current_ptr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> src/ertrace.rs:141:26 [INFO] [stdout] | [INFO] [stdout] 141 | if FREE_LIST.compare_and_swap(old_next, self.head.as_ptr(), Ordering::Release) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> src/ertrace.rs:141:26 [INFO] [stdout] | [INFO] [stdout] 141 | if FREE_LIST.compare_and_swap(old_next, self.head.as_ptr(), Ordering::Release) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.13s [INFO] running `Command { std: "docker" "inspect" "dad4f3154f22eceadc1f2f778b1136e34f25d4042244d23668f261fcc7f7e5bb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dad4f3154f22eceadc1f2f778b1136e34f25d4042244d23668f261fcc7f7e5bb", kill_on_drop: false }` [INFO] [stdout] dad4f3154f22eceadc1f2f778b1136e34f25d4042244d23668f261fcc7f7e5bb [INFO] checking ertrace-0.2.1 against try#7622c0f807a4e13c4db886a1681bf343795692df+rustflags=-Dnon_local_definitions for pr-120393-1 [INFO] extracting crate ertrace 0.2.1 into /workspace/builds/worker-5-tc2/source [INFO] validating manifest of crates.io crate ertrace 0.2.1 on toolchain 7622c0f807a4e13c4db886a1681bf343795692df [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate ertrace 0.2.1 [INFO] finished tweaking crates.io crate ertrace 0.2.1 [INFO] tweaked toml for crates.io crate ertrace 0.2.1 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] crate crates.io crate ertrace 0.2.1 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" "+7622c0f807a4e13c4db886a1681bf343795692df" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] cb19b9858f46fe9ab0d9ac1ed66c4e9a70094e080e6d3c18d18f69165f058699 [INFO] running `Command { std: "docker" "start" "-a" "cb19b9858f46fe9ab0d9ac1ed66c4e9a70094e080e6d3c18d18f69165f058699", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "cb19b9858f46fe9ab0d9ac1ed66c4e9a70094e080e6d3c18d18f69165f058699", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cb19b9858f46fe9ab0d9ac1ed66c4e9a70094e080e6d3c18d18f69165f058699", kill_on_drop: false }` [INFO] [stdout] cb19b9858f46fe9ab0d9ac1ed66c4e9a70094e080e6d3c18d18f69165f058699 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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 -Dnon_local_definitions" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1abd4969d332d94d6e8524ab1df3d595627ffa951b7c513e25d0903c5f8a439a [INFO] running `Command { std: "docker" "start" "-a" "1abd4969d332d94d6e8524ab1df3d595627ffa951b7c513e25d0903c5f8a439a", kill_on_drop: false }` [INFO] [stderr] Checking ertrace v0.2.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::ertrace_macro::*` [INFO] [stdout] --> src/lib.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 146 | pub use crate::ertrace_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::new_error_enum_macro::*` [INFO] [stdout] --> src/lib.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 147 | pub use crate::new_error_enum_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::new_error_struct_macro::*` [INFO] [stdout] --> src/lib.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | pub use crate::new_error_struct_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::new_error_types_macro::*` [INFO] [stdout] --> src/lib.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 149 | pub use crate::new_error_types_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ertrace_macro::*` [INFO] [stdout] --> src/lib.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 146 | pub use crate::ertrace_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::new_error_enum_macro::*` [INFO] [stdout] --> src/lib.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 147 | pub use crate::new_error_enum_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::new_error_struct_macro::*` [INFO] [stdout] --> src/lib.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | pub use crate::new_error_struct_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::new_error_types_macro::*` [INFO] [stdout] --> src/lib.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 149 | pub use crate::new_error_types_macro::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> src/ertrace.rs:23:22 [INFO] [stdout] | [INFO] [stdout] 23 | if FREE_LIST.compare_and_swap(current_ptr, new_ptr, Ordering::Release) == current_ptr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> src/ertrace.rs:141:26 [INFO] [stdout] | [INFO] [stdout] 141 | if FREE_LIST.compare_and_swap(old_next, self.head.as_ptr(), Ordering::Release) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> src/ertrace.rs:23:22 [INFO] [stdout] | [INFO] [stdout] 23 | if FREE_LIST.compare_and_swap(current_ptr, new_ptr, Ordering::Release) == current_ptr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> src/ertrace.rs:141:26 [INFO] [stdout] | [INFO] [stdout] 141 | if FREE_LIST.compare_and_swap(old_next, self.head.as_ptr(), Ordering::Release) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> src/new_error_struct_macro.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | / impl core::convert::From<$name> for $crate::Ertrace { [INFO] [stdout] 16 | | fn from(v: $name) -> $crate::Ertrace { [INFO] [stdout] 17 | | v.0 [INFO] [stdout] 18 | | } [INFO] [stdout] 19 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] ::: src/tests.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | / crate::new_error_types! { [INFO] [stdout] 23 | | pub struct AError(Ertrace); [INFO] [stdout] 24 | | pub struct BError1(Ertrace); [INFO] [stdout] 25 | | pub struct BError2(Ertrace); [INFO] [stdout] ... | [INFO] [stdout] 29 | | } [INFO] [stdout] 30 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current function `basics` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: requested on the command line with `-D non-local-definitions` [INFO] [stdout] = note: this error originates in the macro `$crate::new_error_struct` which comes from the expansion of the macro `crate::new_error_types` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> src/new_error_struct_macro.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | / impl core::convert::From<$name> for $crate::Ertrace { [INFO] [stdout] 16 | | fn from(v: $name) -> $crate::Ertrace { [INFO] [stdout] 17 | | v.0 [INFO] [stdout] 18 | | } [INFO] [stdout] 19 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] ::: src/tests.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | / crate::new_error_types! { [INFO] [stdout] 23 | | pub struct AError(Ertrace); [INFO] [stdout] 24 | | pub struct BError1(Ertrace); [INFO] [stdout] 25 | | pub struct BError2(Ertrace); [INFO] [stdout] ... | [INFO] [stdout] 29 | | } [INFO] [stdout] 30 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current function `basics` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this error originates in the macro `$crate::new_error_struct` which comes from the expansion of the macro `crate::new_error_types` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> src/new_error_struct_macro.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | / impl core::convert::From<$name> for $crate::Ertrace { [INFO] [stdout] 16 | | fn from(v: $name) -> $crate::Ertrace { [INFO] [stdout] 17 | | v.0 [INFO] [stdout] 18 | | } [INFO] [stdout] 19 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] ::: src/tests.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | / crate::new_error_types! { [INFO] [stdout] 23 | | pub struct AError(Ertrace); [INFO] [stdout] 24 | | pub struct BError1(Ertrace); [INFO] [stdout] 25 | | pub struct BError2(Ertrace); [INFO] [stdout] ... | [INFO] [stdout] 29 | | } [INFO] [stdout] 30 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current function `basics` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this error originates in the macro `$crate::new_error_struct` which comes from the expansion of the macro `crate::new_error_types` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> src/new_error_enum_macro.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | / impl core::convert::From<$name> for $crate::Ertrace { [INFO] [stdout] 12 | | fn from(v: $name) -> $crate::Ertrace { [INFO] [stdout] 13 | | match v { [INFO] [stdout] 14 | | $( [INFO] [stdout] ... | [INFO] [stdout] 20 | | } [INFO] [stdout] 21 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] ::: src/tests.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | / crate::new_error_types! { [INFO] [stdout] 23 | | pub struct AError(Ertrace); [INFO] [stdout] 24 | | pub struct BError1(Ertrace); [INFO] [stdout] 25 | | pub struct BError2(Ertrace); [INFO] [stdout] ... | [INFO] [stdout] 29 | | } [INFO] [stdout] 30 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current function `basics` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this error originates in the macro `$crate::new_error_enum` which comes from the expansion of the macro `crate::new_error_types` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors; 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `ertrace` (lib test) due to 5 previous errors; 6 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "1abd4969d332d94d6e8524ab1df3d595627ffa951b7c513e25d0903c5f8a439a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1abd4969d332d94d6e8524ab1df3d595627ffa951b7c513e25d0903c5f8a439a", kill_on_drop: false }` [INFO] [stdout] 1abd4969d332d94d6e8524ab1df3d595627ffa951b7c513e25d0903c5f8a439a