[INFO] fetching crate gemachain-program-runtime 1.8.2...
[INFO] checking gemachain-program-runtime-1.8.2 against try#31561a63598a0f21fc74c024747ef1310fdd2eb2 for pr-133536
[INFO] extracting crate gemachain-program-runtime 1.8.2 into /workspace/builds/worker-3-tc2/source
[INFO] validating manifest of crates.io crate gemachain-program-runtime 1.8.2 on toolchain 31561a63598a0f21fc74c024747ef1310fdd2eb2
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate gemachain-program-runtime 1.8.2
[INFO] finished tweaking crates.io crate gemachain-program-runtime 1.8.2
[INFO] tweaked toml for crates.io crate gemachain-program-runtime 1.8.2 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 263 packages to latest compatible versions
[INFO] [stderr]       Adding libloading v0.7.4 (available: v0.8.6)
[INFO] [stderr]       Adding num-derive v0.3.3 (available: v0.4.2)
[INFO] [stderr]       Adding subtle v2.4.1 (available: v2.6.1)
[INFO] [stderr]       Adding thiserror v1.0.69 (available: v2.0.3)
[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" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 670be2a2cd4e97885dbecd49c5ca0d3fbde52d99130c7fb6935dc3a3aacdece4
[INFO] running `Command { std: "docker" "start" "-a" "670be2a2cd4e97885dbecd49c5ca0d3fbde52d99130c7fb6935dc3a3aacdece4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "670be2a2cd4e97885dbecd49c5ca0d3fbde52d99130c7fb6935dc3a3aacdece4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "670be2a2cd4e97885dbecd49c5ca0d3fbde52d99130c7fb6935dc3a3aacdece4", kill_on_drop: false }`
[INFO] [stdout] 670be2a2cd4e97885dbecd49c5ca0d3fbde52d99130c7fb6935dc3a3aacdece4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9e797dfb8a33561d648c3514c49bbb368192218f6b6f971fdd02d3fc875ed0d1
[INFO] running `Command { std: "docker" "start" "-a" "9e797dfb8a33561d648c3514c49bbb368192218f6b6f971fdd02d3fc875ed0d1", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.215
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking subtle v2.4.1
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling syn v2.0.90
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling crunchy v0.2.2
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]     Checking block-padding v0.2.1
[INFO] [stderr]     Checking ring v0.17.8
[INFO] [stderr]     Checking tokio v1.41.1
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]    Compiling feature-probe v0.1.1
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling bv v0.11.1
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]    Compiling gemachain-frozen-abi-macro v1.8.2
[INFO] [stderr]     Checking signature v1.6.4
[INFO] [stderr]     Checking unicode-xid v0.1.0
[INFO] [stderr]     Checking either v1.13.0
[INFO] [stderr]    Compiling digest v0.9.0
[INFO] [stderr]     Checking env_logger v0.9.3
[INFO] [stderr]    Compiling libsecp256k1-core v0.2.2
[INFO] [stderr]     Checking sct v0.7.1
[INFO] [stderr]     Checking rustls-webpki v0.101.7
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]     Checking rustls v0.21.12
[INFO] [stderr]    Compiling gemachain-frozen-abi v1.8.2
[INFO] [stderr]    Compiling blake3 v1.5.5
[INFO] [stderr]    Compiling winapi v0.3.9
[INFO] [stderr]    Compiling libsecp256k1-gen-ecmult v0.2.1
[INFO] [stderr]    Compiling libsecp256k1-gen-genmult v0.2.1
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling libsecp256k1 v0.6.0
[INFO] [stderr]     Checking hashbrown v0.11.2
[INFO] [stderr]     Checking quote v0.6.13
[INFO] [stderr]     Checking gemachain-logger v1.8.2
[INFO] [stderr]     Checking quote v1.0.37
[INFO] [stderr]    Compiling gemachain-program v1.8.2
[INFO] [stderr]     Checking jobserver v0.1.32
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking memmap2 v0.5.10
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking bs58 v0.4.0
[INFO] [stderr]     Checking base64 v0.12.3
[INFO] [stderr]     Checking ring v0.16.20
[INFO] [stderr]     Checking cc v1.2.2
[INFO] [stderr]     Checking bytes v0.4.12
[INFO] [stderr]     Checking tokio-util v0.7.12
[INFO] [stderr]     Checking tokio-rustls v0.24.1
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking h2 v0.3.26
[INFO] [stderr]    Compiling gemachain-sdk v1.8.2
[INFO] [stderr]     Checking chrono v0.4.38
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling borsh-derive-internal v0.9.3
[INFO] [stderr]    Compiling borsh-schema-derive-internal v0.9.3
[INFO] [stderr]     Checking uriparse v0.6.4
[INFO] [stderr]     Checking qstring v0.7.2
[INFO] [stderr]    Compiling gemachain-program-runtime v1.8.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking assert_matches v1.5.0
[INFO] [stderr]     Checking libloading v0.7.4
[INFO] [stderr]    Compiling serde_derive v1.0.215
[INFO] [stderr]    Compiling zerofrom-derive v0.1.5
[INFO] [stderr]    Compiling yoke-derive v0.7.5
[INFO] [stderr]    Compiling zerovec-derive v0.10.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling icu_provider_macros v1.5.0
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]     Checking hyper v0.14.31
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]     Checking zeroize v1.3.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling borsh-derive v0.9.3
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]    Compiling num-derive v0.3.3
[INFO] [stderr]     Checking borsh v0.9.3
[INFO] [stderr]     Checking zerofrom v0.1.5
[INFO] [stderr]     Checking yoke v0.7.5
[INFO] [stderr]    Compiling gemachain-sdk-macro v1.8.2
[INFO] [stderr]     Checking zerovec v0.10.4
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling bytemuck_derive v1.8.0
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking tinystr v0.7.6
[INFO] [stderr]     Checking icu_collections v1.5.0
[INFO] [stderr]     Checking icu_locid v1.5.0
[INFO] [stderr]     Checking hyper-rustls v0.24.2
[INFO] [stderr]     Checking bytemuck v1.20.0
[INFO] [stderr]     Checking icu_provider v1.5.0
[INFO] [stderr]     Checking icu_locid_transform v1.5.0
[INFO] [stderr]     Checking icu_properties v1.5.1
[INFO] [stderr]     Checking serde_bytes v0.11.15
[INFO] [stderr]     Checking backtrace v0.3.74
[INFO] [stderr]     Checking ed25519 v1.5.3
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking serde_json v1.0.133
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking icu_normalizer v1.5.0
[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 failure v0.1.8
[INFO] [stderr]     Checking crypto-mac v0.9.1
[INFO] [stderr]     Checking sha2 v0.9.9
[INFO] [stderr]     Checking curve25519-dalek v3.2.1
[INFO] [stderr]     Checking hmac v0.8.1
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking hmac-drbg v0.3.0
[INFO] [stderr]     Checking crypto-mac v0.11.1
[INFO] [stderr]     Checking derivation-path v0.1.3
[INFO] [stderr]     Checking hmac v0.9.0
[INFO] [stderr]     Checking sha3 v0.9.1
[INFO] [stderr]     Checking idna_adapter v1.2.0
[INFO] [stderr]     Checking pbkdf2 v0.9.0
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]     Checking hmac v0.11.0
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking ed25519-dalek v1.0.1
[INFO] [stderr]     Checking ed25519-dalek-bip32 v0.1.1
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking gemachain-crate-features v1.8.2
[INFO] [stdout] warning: unexpected `cfg` condition name: `RUSTC_WITH_SPECIALIZATION`
[INFO] [stdout]  --> src/lib.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![cfg_attr(RUSTC_WITH_SPECIALIZATION, feature(min_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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `RUSTC_WITH_SPECIALIZATION`
[INFO] [stdout]    --> src/instruction_processor.rs:312:7
[INFO] [stdout]     |
[INFO] [stdout] 312 | #[cfg(RUSTC_WITH_SPECIALIZATION)]
[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_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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `RUSTC_WITH_SPECIALIZATION`
[INFO] [stdout]  --> src/lib.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![cfg_attr(RUSTC_WITH_SPECIALIZATION, feature(min_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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `RUSTC_WITH_SPECIALIZATION`
[INFO] [stdout]    --> src/instruction_processor.rs:312:7
[INFO] [stdout]     |
[INFO] [stdout] 312 | #[cfg(RUSTC_WITH_SPECIALIZATION)]
[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_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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `programs` and `native_loader` are never read
[INFO] [stdout]    --> src/instruction_processor.rs:265:13
[INFO] [stdout]     |
[INFO] [stdout] 264 |         struct MessageProcessor<'a> {
[INFO] [stdout]     |                ---------------- fields in this struct
[INFO] [stdout] 265 |             programs: Vec<String>,
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout] 266 |             native_loader: &'a NativeLoader,
[INFO] [stdout]     |             ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MessageProcessor` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[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/native_loader.rs:28:53
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[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_NativeLoaderError`
[INFO] [stdout] 29 | pub enum NativeLoaderError {
[INFO] [stdout]    |          ----------------- `NativeLoaderError` 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: `#[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/native_loader.rs:28:68
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[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_NativeLoaderError`
[INFO] [stdout] 29 | pub enum NativeLoaderError {
[INFO] [stdout]    |          ----------------- `NativeLoaderError` 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 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: fields `programs` and `native_loader` are never read
[INFO] [stdout]    --> src/instruction_processor.rs:265:13
[INFO] [stdout]     |
[INFO] [stdout] 264 |         struct MessageProcessor<'a> {
[INFO] [stdout]     |                ---------------- fields in this struct
[INFO] [stdout] 265 |             programs: Vec<String>,
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout] 266 |             native_loader: &'a NativeLoader,
[INFO] [stdout]     |             ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MessageProcessor` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[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/native_loader.rs:28:53
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[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_NativeLoaderError`
[INFO] [stdout] 29 | pub enum NativeLoaderError {
[INFO] [stdout]    |          ----------------- `NativeLoaderError` 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: `#[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/native_loader.rs:28:68
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[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_NativeLoaderError`
[INFO] [stdout] 29 | pub enum NativeLoaderError {
[INFO] [stdout]    |          ----------------- `NativeLoaderError` 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 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[E0308]: mismatched types
[INFO] [stdout]   --> benches/instruction_processor.rs:45:44
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let summary = bencher.bench(|_bencher| {}).unwrap();
[INFO] [stdout]    |                                            ^^ expected `Result<(), String>`, found `()`
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `Result<(), String>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `median` on type `Option<Summary>`
[INFO] [stdout]   --> benches/instruction_processor.rs:46:58
[INFO] [stdout]    |
[INFO] [stdout] 46 |     info!("data no change by owner: {} ns/iter", summary.median);
[INFO] [stdout]    |                                                          ^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]    |
[INFO] [stdout] 46 |     info!("data no change by owner: {} ns/iter", summary.unwrap().median);
[INFO] [stdout]    |                                                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> benches/instruction_processor.rs:51:44
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let summary = bencher.bench(|_bencher| {}).unwrap();
[INFO] [stdout]    |                                            ^^ expected `Result<(), String>`, found `()`
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `Result<(), String>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `median` on type `Option<Summary>`
[INFO] [stdout]   --> benches/instruction_processor.rs:52:46
[INFO] [stdout]    |
[INFO] [stdout] 52 |     info!("data compare {} ns/iter", summary.median);
[INFO] [stdout]    |                                              ^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]    |
[INFO] [stdout] 52 |     info!("data compare {} ns/iter", summary.unwrap().median);
[INFO] [stdout]    |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> benches/instruction_processor.rs:69:44
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let summary = bencher.bench(|_bencher| {}).unwrap();
[INFO] [stdout]    |                                            ^^ expected `Result<(), String>`, found `()`
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `Result<(), String>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `median` on type `Option<Summary>`
[INFO] [stdout]   --> benches/instruction_processor.rs:70:62
[INFO] [stdout]    |
[INFO] [stdout] 70 |     info!("data no change by non owner: {} ns/iter", summary.median);
[INFO] [stdout]    |                                                              ^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]    |
[INFO] [stdout] 70 |     info!("data no change by non owner: {} ns/iter", summary.unwrap().median);
[INFO] [stdout]    |                                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `gemachain-program-runtime` (bench "instruction_processor") due to 6 previous errors
[INFO] running `Command { std: "docker" "inspect" "9e797dfb8a33561d648c3514c49bbb368192218f6b6f971fdd02d3fc875ed0d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9e797dfb8a33561d648c3514c49bbb368192218f6b6f971fdd02d3fc875ed0d1", kill_on_drop: false }`
[INFO] [stdout] 9e797dfb8a33561d648c3514c49bbb368192218f6b6f971fdd02d3fc875ed0d1
