[INFO] fetching crate gemachain-program 1.8.2... [INFO] checking gemachain-program-1.8.2 against try#c387b04bf028733cd561d62128c8a5eee4bc1458+rustflags=-Dtail_expr_drop_order for pr-130930 [INFO] extracting crate gemachain-program 1.8.2 into /workspace/builds/worker-5-tc2/source [INFO] validating manifest of crates.io crate gemachain-program 1.8.2 on toolchain c387b04bf028733cd561d62128c8a5eee4bc1458 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate gemachain-program 1.8.2 [INFO] finished tweaking crates.io crate gemachain-program 1.8.2 [INFO] tweaked toml for crates.io crate gemachain-program 1.8.2 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 116 packages to latest compatible versions [INFO] [stderr] Adding ahash v0.7.8 (available: v0.8.11) [INFO] [stderr] Adding base64 v0.12.3 (available: v0.22.1) [INFO] [stderr] Adding base64 v0.13.1 (available: v0.22.1) [INFO] [stderr] Adding bitflags v1.3.2 (available: v2.6.0) [INFO] [stderr] Adding block-buffer v0.9.0 (available: v0.10.4) [INFO] [stderr] Adding block-padding v0.2.1 (available: v0.3.3) [INFO] [stderr] Adding borsh v0.9.3 (available: v1.5.1) [INFO] [stderr] Adding borsh-derive v0.9.3 (available: v1.5.1) [INFO] [stderr] Adding borsh-derive-internal v0.9.3 (available: v0.10.4) [INFO] [stderr] Adding borsh-schema-derive-internal v0.9.3 (available: v0.10.4) [INFO] [stderr] Adding bs58 v0.4.0 (available: v0.5.1) [INFO] [stderr] Adding crypto-mac v0.8.0 (available: v0.11.1) [INFO] [stderr] Adding curve25519-dalek v3.2.1 (available: v4.1.3) [INFO] [stderr] Adding digest v0.9.0 (available: v0.10.7) [INFO] [stderr] Adding env_logger v0.9.3 (available: v0.11.5) [INFO] [stderr] Adding generic-array v0.14.7 (available: v1.1.0) [INFO] [stderr] Adding getrandom v0.1.16 (available: v0.2.15) [INFO] [stderr] Adding hashbrown v0.11.2 (available: v0.14.5) [INFO] [stderr] Adding hermit-abi v0.1.19 (available: v0.4.0) [INFO] [stderr] Adding hmac v0.8.1 (available: v0.12.1) [INFO] [stderr] Adding itertools v0.10.5 (available: v0.13.0) [INFO] [stderr] Adding libsecp256k1 v0.6.0 (available: v0.7.1) [INFO] [stderr] Adding libsecp256k1-core v0.2.2 (available: v0.3.0) [INFO] [stderr] Adding libsecp256k1-gen-ecmult v0.2.1 (available: v0.3.0) [INFO] [stderr] Adding libsecp256k1-gen-genmult v0.2.1 (available: v0.3.0) [INFO] [stderr] Adding memmap2 v0.5.10 (available: v0.9.5) [INFO] [stderr] Adding num-derive v0.3.3 (available: v0.4.2) [INFO] [stderr] Adding proc-macro-crate v0.1.5 (available: v3.2.0) [INFO] [stderr] Adding rand v0.7.3 (available: v0.8.5) [INFO] [stderr] Adding rand_chacha v0.2.2 (available: v0.3.1) [INFO] [stderr] Adding rand_core v0.5.1 (available: v0.6.4) [INFO] [stderr] Adding rand_hc v0.2.0 (available: v0.3.2) [INFO] [stderr] Adding sha2 v0.9.9 (available: v0.10.8) [INFO] [stderr] Adding sha3 v0.9.1 (available: v0.10.8) [INFO] [stderr] Adding syn v1.0.109 (available: v2.0.79) [INFO] [stderr] Adding toml v0.5.11 (available: v0.8.19) [INFO] [stderr] Adding wasi v0.9.0+wasi-snapshot-preview1 (available: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (available: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding zeroize v1.3.0 (available: v1.8.1) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6f0c9919532979267b50177b702c0edc047442d0461862896672d9b7f3affa56 [INFO] running `Command { std: "docker" "start" "-a" "6f0c9919532979267b50177b702c0edc047442d0461862896672d9b7f3affa56", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6f0c9919532979267b50177b702c0edc047442d0461862896672d9b7f3affa56", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6f0c9919532979267b50177b702c0edc047442d0461862896672d9b7f3affa56", kill_on_drop: false }` [INFO] [stdout] 6f0c9919532979267b50177b702c0edc047442d0461862896672d9b7f3affa56 [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 -Dtail_expr_drop_order" "-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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 41c9352ed8d4602c22891dead9940ca2b499d7cf93103e3dfcbe023e5db81289 [INFO] running `Command { std: "docker" "start" "-a" "41c9352ed8d4602c22891dead9940ca2b499d7cf93103e3dfcbe023e5db81289", kill_on_drop: false }` [INFO] [stderr] Compiling serde_derive v1.0.210 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling semver v1.0.23 [INFO] [stderr] Compiling crunchy v0.2.2 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Checking subtle v2.6.1 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Compiling serde v1.0.210 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Checking regex-syntax v0.8.4 [INFO] [stderr] Checking block-padding v0.2.1 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling ahash v0.7.8 [INFO] [stderr] Compiling feature-probe v0.1.1 [INFO] [stderr] Compiling digest v0.9.0 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Compiling gemachain-frozen-abi-macro v1.8.2 [INFO] [stderr] Compiling libsecp256k1-core v0.2.2 [INFO] [stderr] Compiling bv v0.11.1 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking once_cell v1.19.0 [INFO] [stderr] Checking humantime v2.1.0 [INFO] [stderr] Checking log v0.4.22 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling libsecp256k1-gen-genmult v0.2.1 [INFO] [stderr] Compiling libsecp256k1-gen-ecmult v0.2.1 [INFO] [stderr] Compiling blake3 v1.5.4 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Compiling gemachain-frozen-abi v1.8.2 [INFO] [stderr] Compiling libsecp256k1 v0.6.0 [INFO] [stderr] Checking regex-automata v0.4.7 [INFO] [stderr] Compiling thiserror-impl v1.0.64 [INFO] [stderr] Checking arrayref v0.3.9 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking hashbrown v0.11.2 [INFO] [stderr] Compiling gemachain-program v1.8.2 (/opt/rustwide/workdir) [INFO] [stderr] Checking memmap2 v0.5.10 [INFO] [stderr] Checking thiserror v1.0.64 [INFO] [stderr] Compiling bs58 v0.4.0 [INFO] [stderr] Checking keccak v0.1.5 [INFO] [stderr] Checking arrayvec v0.7.6 [INFO] [stderr] Checking zeroize v1.3.0 [INFO] [stderr] Checking either v1.13.0 [INFO] [stderr] Checking constant_time_eq v0.3.1 [INFO] [stderr] Checking base64 v0.12.3 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Compiling toml v0.5.11 [INFO] [stderr] Checking base64 v0.13.1 [INFO] [stderr] Checking static_assertions v1.1.0 [INFO] [stderr] Checking regex v1.10.6 [INFO] [stderr] Compiling borsh-derive-internal v0.9.3 [INFO] [stderr] Compiling borsh-schema-derive-internal v0.9.3 [INFO] [stderr] Checking env_logger v0.9.3 [INFO] [stderr] Compiling proc-macro-crate v0.1.5 [INFO] [stderr] Checking gemachain-logger v1.8.2 [INFO] [stderr] Compiling borsh-derive v0.9.3 [INFO] [stderr] Compiling gemachain-sdk-macro v1.8.2 [INFO] [stderr] Compiling num-derive v0.3.3 [INFO] [stderr] Checking borsh v0.9.3 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking serde_bytes v0.11.15 [INFO] [stderr] Checking serde_json v1.0.128 [INFO] [stderr] Checking block-buffer v0.9.0 [INFO] [stderr] Checking crypto-mac v0.8.0 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking curve25519-dalek v3.2.1 [INFO] [stderr] Checking hmac v0.8.1 [INFO] [stderr] Checking sha2 v0.9.9 [INFO] [stderr] Checking sha3 v0.9.1 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking hmac-drbg v0.3.0 [INFO] [stdout] warning: unexpected `cfg` condition name: `RUSTC_WITH_SPECIALIZATION` [INFO] [stdout] --> src/lib.rs:2:13 [INFO] [stdout] | [INFO] [stdout] 2 | #![cfg_attr(RUSTC_WITH_SPECIALIZATION, feature(specialization))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `clippy`, `debug_assertions`, `doc`, `docsrs`, `doctest`, `feature`, `fmt_debug`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `rustfmt`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `ub_checks`, `unix`, and `windows` [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(RUSTC_WITH_SPECIALIZATION)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(RUSTC_WITH_SPECIALIZATION)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `RUSTC_NEEDS_PROC_MACRO_HYGIENE` [INFO] [stdout] --> src/lib.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | #![cfg_attr(RUSTC_NEEDS_PROC_MACRO_HYGIENE, feature(proc_macro_hygiene))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(RUSTC_NEEDS_PROC_MACRO_HYGIENE)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(RUSTC_NEEDS_PROC_MACRO_HYGIENE)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `RUSTC_WITH_SPECIALIZATION` [INFO] [stdout] --> src/lib.rs:2:13 [INFO] [stdout] | [INFO] [stdout] 2 | #![cfg_attr(RUSTC_WITH_SPECIALIZATION, feature(specialization))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `clippy`, `debug_assertions`, `doc`, `docsrs`, `doctest`, `feature`, `fmt_debug`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `rustfmt`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `ub_checks`, `unix`, and `windows` [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(RUSTC_WITH_SPECIALIZATION)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(RUSTC_WITH_SPECIALIZATION)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `RUSTC_NEEDS_PROC_MACRO_HYGIENE` [INFO] [stdout] --> src/lib.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | #![cfg_attr(RUSTC_NEEDS_PROC_MACRO_HYGIENE, feature(proc_macro_hygiene))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(RUSTC_NEEDS_PROC_MACRO_HYGIENE)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(RUSTC_NEEDS_PROC_MACRO_HYGIENE)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `impl Iterator` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/message/mapped.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 58 | let mut uniq = HashSet::new(); [INFO] [stdout] | -------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 59 | self.account_keys_iter().any(|x| !uniq.insert(x)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/pubkey.rs:24:53 [INFO] [stdout] | [INFO] [stdout] 24 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_PubkeyError` [INFO] [stdout] 25 | pub enum PubkeyError { [INFO] [stdout] | ----------- `PubkeyError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/pubkey.rs:24:68 [INFO] [stdout] | [INFO] [stdout] 24 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_PubkeyError` [INFO] [stdout] 25 | pub enum PubkeyError { [INFO] [stdout] | ----------- `PubkeyError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/pubkey.rs:70:53 [INFO] [stdout] | [INFO] [stdout] 70 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_ParsePubkeyError` [INFO] [stdout] 71 | pub enum ParsePubkeyError { [INFO] [stdout] | ---------------- `ParsePubkeyError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/pubkey.rs:70:68 [INFO] [stdout] | [INFO] [stdout] 70 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_ParsePubkeyError` [INFO] [stdout] 71 | pub enum ParsePubkeyError { [INFO] [stdout] | ---------------- `ParsePubkeyError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/stake/instruction.rs:21:42 [INFO] [stdout] | [INFO] [stdout] 21 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_StakeError` [INFO] [stdout] 22 | pub enum StakeError { [INFO] [stdout] | ---------- `StakeError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/stake/instruction.rs:21:57 [INFO] [stdout] | [INFO] [stdout] 21 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_StakeError` [INFO] [stdout] 22 | pub enum StakeError { [INFO] [stdout] | ---------- `StakeError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `impl Iterator` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/message/mapped.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 58 | let mut uniq = HashSet::new(); [INFO] [stdout] | -------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 59 | self.account_keys_iter().any(|x| !uniq.insert(x)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/system_instruction.rs:14:53 [INFO] [stdout] | [INFO] [stdout] 14 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_SystemError` [INFO] [stdout] 15 | pub enum SystemError { [INFO] [stdout] | ----------- `SystemError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/system_instruction.rs:14:68 [INFO] [stdout] | [INFO] [stdout] 14 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_SystemError` [INFO] [stdout] 15 | pub enum SystemError { [INFO] [stdout] | ----------- `SystemError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/system_instruction.rs:42:42 [INFO] [stdout] | [INFO] [stdout] 42 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_NonceError` [INFO] [stdout] 43 | pub enum NonceError { [INFO] [stdout] | ---------- `NonceError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/system_instruction.rs:42:57 [INFO] [stdout] | [INFO] [stdout] 42 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_NonceError` [INFO] [stdout] 43 | pub enum NonceError { [INFO] [stdout] | ---------- `NonceError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/system_instruction.rs:60:42 [INFO] [stdout] | [INFO] [stdout] 60 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_NonceErrorAdapter` [INFO] [stdout] 61 | enum NonceErrorAdapter { [INFO] [stdout] | ----------------- `NonceErrorAdapter` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/system_instruction.rs:60:57 [INFO] [stdout] | [INFO] [stdout] 60 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_NonceErrorAdapter` [INFO] [stdout] 61 | enum NonceErrorAdapter { [INFO] [stdout] | ----------------- `NonceErrorAdapter` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error; 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `gemachain-program` (lib) due to 2 previous errors; 14 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/borsh.rs:123:15 [INFO] [stdout] | [INFO] [stdout] 120 | #[derive(PartialEq, Clone, Debug, BorshSerialize, BorshDeserialize, BorshSchema)] [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 123 | Value(u32), [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/decode_error.rs:21:25 [INFO] [stdout] | [INFO] [stdout] 21 | #[derive(Debug, FromPrimitive, PartialEq)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_TestEnum` and up 2 bodies [INFO] [stdout] 22 | enum TestEnum { [INFO] [stdout] | -------- `TestEnum` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/pubkey.rs:24:53 [INFO] [stdout] | [INFO] [stdout] 24 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_PubkeyError` [INFO] [stdout] 25 | pub enum PubkeyError { [INFO] [stdout] | ----------- `PubkeyError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/pubkey.rs:24:68 [INFO] [stdout] | [INFO] [stdout] 24 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_PubkeyError` [INFO] [stdout] 25 | pub enum PubkeyError { [INFO] [stdout] | ----------- `PubkeyError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/pubkey.rs:70:53 [INFO] [stdout] | [INFO] [stdout] 70 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_ParsePubkeyError` [INFO] [stdout] 71 | pub enum ParsePubkeyError { [INFO] [stdout] | ---------------- `ParsePubkeyError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/pubkey.rs:70:68 [INFO] [stdout] | [INFO] [stdout] 70 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_ParsePubkeyError` [INFO] [stdout] 71 | pub enum ParsePubkeyError { [INFO] [stdout] | ---------------- `ParsePubkeyError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/stake/instruction.rs:21:42 [INFO] [stdout] | [INFO] [stdout] 21 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_StakeError` [INFO] [stdout] 22 | pub enum StakeError { [INFO] [stdout] | ---------- `StakeError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/stake/instruction.rs:21:57 [INFO] [stdout] | [INFO] [stdout] 21 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_StakeError` [INFO] [stdout] 22 | pub enum StakeError { [INFO] [stdout] | ---------- `StakeError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/system_instruction.rs:14:53 [INFO] [stdout] | [INFO] [stdout] 14 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_SystemError` [INFO] [stdout] 15 | pub enum SystemError { [INFO] [stdout] | ----------- `SystemError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/system_instruction.rs:14:68 [INFO] [stdout] | [INFO] [stdout] 14 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_SystemError` [INFO] [stdout] 15 | pub enum SystemError { [INFO] [stdout] | ----------- `SystemError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/system_instruction.rs:42:42 [INFO] [stdout] | [INFO] [stdout] 42 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_NonceError` [INFO] [stdout] 43 | pub enum NonceError { [INFO] [stdout] | ---------- `NonceError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/system_instruction.rs:42:57 [INFO] [stdout] | [INFO] [stdout] 42 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_NonceError` [INFO] [stdout] 43 | pub enum NonceError { [INFO] [stdout] | ---------- `NonceError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/system_instruction.rs:60:42 [INFO] [stdout] | [INFO] [stdout] 60 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_NonceErrorAdapter` [INFO] [stdout] 61 | enum NonceErrorAdapter { [INFO] [stdout] | ----------------- `NonceErrorAdapter` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/system_instruction.rs:60:57 [INFO] [stdout] | [INFO] [stdout] 60 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_NonceErrorAdapter` [INFO] [stdout] 61 | enum NonceErrorAdapter { [INFO] [stdout] | ----------------- `NonceErrorAdapter` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error; 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `gemachain-program` (lib test) due to 2 previous errors; 16 warnings emitted [INFO] running `Command { std: "docker" "inspect" "41c9352ed8d4602c22891dead9940ca2b499d7cf93103e3dfcbe023e5db81289", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "41c9352ed8d4602c22891dead9940ca2b499d7cf93103e3dfcbe023e5db81289", kill_on_drop: false }` [INFO] [stdout] 41c9352ed8d4602c22891dead9940ca2b499d7cf93103e3dfcbe023e5db81289