[INFO] fetching crate cartesi-solana 0.3.2...
[INFO] checking cartesi-solana-0.3.2 against 4fcf39725a9c99bd495d8c73af83628a256ff9a9 for pr-162233-crater-rollup
[INFO] extracting crate cartesi-solana 0.3.2 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate cartesi-solana 0.3.2
[INFO] finished tweaking crates.io crate cartesi-solana 0.3.2
[INFO] tweaked toml for crates.io crate cartesi-solana 0.3.2 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate cartesi-solana 0.3.2 on toolchain 4fcf39725a9c99bd495d8c73af83628a256ff9a9
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4fcf39725a9c99bd495d8c73af83628a256ff9a9" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4fcf39725a9c99bd495d8c73af83628a256ff9a9" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 221 packages to highest compatible versions
[INFO] [stderr]       Adding base64 v0.13.1 (available: v0.23.1)
[INFO] [stderr]       Adding bincode v1.3.3 (available: v3.0.0)
[INFO] [stderr]       Adding borsh v0.9.3 (available: v1.8.1)
[INFO] [stderr]       Adding crypto-common v0.1.6 (available: v0.1.7)
[INFO] [stderr]       Adding generic-array v0.14.9 (available: v1.4.5)
[INFO] [stderr]       Adding solana-program v1.18.26 (available: v4.1.0)
[INFO] [stderr]       Adding solana-sdk v1.18.26 (available: v4.1.0)
[INFO] [stderr]       Adding zeroize v1.3.0 (available: v1.9.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4fcf39725a9c99bd495d8c73af83628a256ff9a9" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]   --> Cargo.toml:41:1
[INFO] [stderr]    |
[INFO] [stderr] 41 | readme = "README.md"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:38:12
[INFO] [stderr]    |
[INFO] [stderr] 38 | homepage = "https://github.com/Calindra/cartesi-solana"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 42 | repository = "https://github.com/Calindra/cartesi-solana"
[INFO] [stderr]    |              --------------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `cartesi-solana` (manifest) generated 2 warnings
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded solana-sdk-macro v1.18.26
[INFO] [stderr]   Downloaded pbkdf2 v0.4.0
[INFO] [stderr]   Downloaded solana-frozen-abi v1.18.26
[INFO] [stderr]   Downloaded libsecp256k1-gen-ecmult v0.2.1
[INFO] [stderr]   Downloaded zeroize v1.3.0
[INFO] [stderr]   Downloaded libsecp256k1-gen-genmult v0.2.1
[INFO] [stderr]   Downloaded solana-frozen-abi-macro v1.18.26
[INFO] [stderr]   Downloaded borsh-derive v0.10.4
[INFO] [stderr]   Downloaded borsh-schema-derive-internal v0.10.4
[INFO] [stderr]   Downloaded borsh-derive-internal v0.10.4
[INFO] [stderr]   Downloaded console_log v0.2.2
[INFO] [stderr]   Downloaded libsecp256k1-core v0.2.2
[INFO] [stderr]   Downloaded borsh v0.10.4
[INFO] [stderr]   Downloaded solana-logger v1.18.26
[INFO] [stderr]   Downloaded solana-program v1.18.26
[INFO] [stderr]   Downloaded libsecp256k1 v0.6.0
[INFO] [stderr]   Downloaded ed25519-dalek-bip32 v0.2.0
[INFO] [stderr]   Downloaded serde_with_macros v2.3.3
[INFO] [stderr]   Downloaded ed25519-dalek v1.0.1
[INFO] [stderr]   Downloaded ed25519 v1.5.3
[INFO] [stderr]   Downloaded tiny-bip39 v0.8.2
[INFO] [stderr]   Downloaded serde_with v2.3.3
[INFO] [stderr]   Downloaded solana-sdk v1.18.26
[INFO] [stderr]   Downloaded light-poseidon v0.2.0
[INFO] [stderr]   Downloaded curve25519-dalek v3.2.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 5639f271c726e66833dfc09a2cfcc339fed7d5a0091627a5657b039e5fc8d109
[INFO] running `Command { std: "docker" "start" "5639f271c726e66833dfc09a2cfcc339fed7d5a0091627a5657b039e5fc8d109", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5639f271c726e66833dfc09a2cfcc339fed7d5a0091627a5657b039e5fc8d109", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5639f271c726e66833dfc09a2cfcc339fed7d5a0091627a5657b039e5fc8d109" "/opt/rustwide/cargo-home/bin/cargo" "+4fcf39725a9c99bd495d8c73af83628a256ff9a9" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5639f271c726e66833dfc09a2cfcc339fed7d5a0091627a5657b039e5fc8d109", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5639f271c726e66833dfc09a2cfcc339fed7d5a0091627a5657b039e5fc8d109" "/opt/rustwide/cargo-home/bin/cargo" "+4fcf39725a9c99bd495d8c73af83628a256ff9a9" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]   --> Cargo.toml:41:1
[INFO] [stderr]    |
[INFO] [stderr] 41 | readme = "README.md"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:38:12
[INFO] [stderr]    |
[INFO] [stderr] 38 | homepage = "https://github.com/Calindra/cartesi-solana"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 42 | repository = "https://github.com/Calindra/cartesi-solana"
[INFO] [stderr]    |              --------------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `cartesi-solana` (manifest) generated 2 warnings
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling libc v0.2.189
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling syn v3.0.5
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking either v1.18.0
[INFO] [stderr]    Compiling typenum v1.20.1
[INFO] [stderr]    Compiling num-integer v0.1.47
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.128
[INFO] [stderr]    Compiling digest v0.9.0
[INFO] [stderr]     Checking num-bigint v0.4.8
[INFO] [stderr]    Compiling jobserver v0.1.35
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking getrandom v0.1.16
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking rand v0.8.8
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling cc v1.4.5
[INFO] [stderr]    Compiling libsecp256k1-core v0.2.2
[INFO] [stderr]     Checking ark-std v0.4.0
[INFO] [stderr]     Checking hashbrown v0.13.2
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]    Compiling feature-probe v0.1.1
[INFO] [stderr]    Compiling bv v0.11.1
[INFO] [stderr]    Compiling libsecp256k1-gen-ecmult v0.2.1
[INFO] [stderr]    Compiling libsecp256k1-gen-genmult v0.2.1
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling solana-frozen-abi-macro v1.18.26
[INFO] [stderr]     Checking bitmaps v2.1.0
[INFO] [stderr]    Compiling im v15.1.0
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling cfg_aliases v0.2.2
[INFO] [stderr]    Compiling bumpalo v3.20.3
[INFO] [stderr]    Compiling borsh-schema-derive-internal v0.10.4
[INFO] [stderr]    Compiling borsh-derive-internal v0.10.4
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.128
[INFO] [stderr]     Checking sized-chunks v0.6.5
[INFO] [stderr]    Compiling zeroize_derive v1.5.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling borsh-schema-derive-internal v0.9.3
[INFO] [stderr]    Compiling borsh-derive-internal v0.9.3
[INFO] [stderr]    Compiling borsh v1.8.1
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]     Checking zeroize v1.3.0
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]     Checking tinyvec v1.13.2
[INFO] [stderr]    Compiling blake3 v1.8.7
[INFO] [stderr]    Compiling libsecp256k1 v0.6.0
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking ahash v0.7.8
[INFO] [stderr]    Compiling wasm-bindgen v0.2.128
[INFO] [stderr]     Checking rand_xoshiro v0.6.0
[INFO] [stderr]    Compiling solana-frozen-abi v1.18.26
[INFO] [stderr]    Compiling ark-serialize-derive v0.4.2
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling ark-ff-asm v0.4.2
[INFO] [stderr]    Compiling ark-ff-macros v0.4.2
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]     Checking regex-automata v0.4.18
[INFO] [stderr]    Compiling borsh-derive v1.8.1
[INFO] [stderr]    Compiling borsh-derive v0.9.3
[INFO] [stderr]    Compiling borsh-derive v0.10.4
[INFO] [stderr]     Checking hashbrown v0.11.2
[INFO] [stderr]     Checking digest v0.11.3
[INFO] [stderr]     Checking unicode-normalization v0.1.25
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling bytemuck_derive v1.12.0
[INFO] [stderr]    Compiling solana-program v1.18.26
[INFO] [stderr]     Checking serde_bytes v0.11.19
[INFO] [stderr]     Checking memmap2 v0.5.10
[INFO] [stderr]     Checking signature v1.6.4
[INFO] [stderr]     Checking keccak v0.1.6
[INFO] [stderr]     Checking base64 v0.12.3
[INFO] [stderr]    Compiling bs58 v0.4.0
[INFO] [stderr]     Checking serde_json v1.0.151
[INFO] [stderr]     Checking regex v1.13.1
[INFO] [stderr]    Compiling solana-sdk-macro v1.18.26
[INFO] [stderr]     Checking ed25519 v1.5.3
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]     Checking bytemuck v1.25.2
[INFO] [stderr]     Checking borsh v0.9.3
[INFO] [stderr]     Checking borsh v0.10.4
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]     Checking bitflags v2.13.1
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]    Compiling serde_with_macros v2.3.3
[INFO] [stderr]     Checking env_logger v0.9.3
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.128
[INFO] [stderr]    Compiling num_enum_derive v0.7.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking crypto-mac v0.8.0
[INFO] [stderr]     Checking block-buffer v0.9.0
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking pbkdf2 v0.4.0
[INFO] [stderr]     Checking hmac v0.8.1
[INFO] [stderr]     Checking sha2 v0.9.9
[INFO] [stderr]     Checking curve25519-dalek v3.2.1
[INFO] [stderr]     Checking hmac-drbg v0.3.0
[INFO] [stderr]    Compiling solana-sdk v1.18.26
[INFO] [stderr]     Checking ark-serialize v0.4.2
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking ark-ff v0.4.2
[INFO] [stderr]     Checking tiny-bip39 v0.8.2
[INFO] [stderr]     Checking sha3 v0.10.9
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking derivation-path v0.2.0
[INFO] [stderr]     Checking qstring v0.7.2
[INFO] [stderr]     Checking num_enum v0.7.6
[INFO] [stderr]     Checking uriparse v0.6.4
[INFO] [stderr]     Checking pbkdf2 v0.11.0
[INFO] [stderr]     Checking serde_with v2.3.3
[INFO] [stderr]     Checking solana-logger v1.18.26
[INFO] [stderr]    Compiling qualifier_attr v0.2.2
[INFO] [stderr]     Checking ed25519-dalek v1.0.1
[INFO] [stderr]     Checking chrono v0.4.45
[INFO] [stderr]     Checking ed25519-dalek-bip32 v0.2.0
[INFO] [stderr]     Checking siphasher v0.3.11
[INFO] [stderr]     Checking assert_matches v1.5.0
[INFO] [stderr]     Checking ark-poly v0.4.2
[INFO] [stderr]     Checking ark-ec v0.4.2
[INFO] [stderr]     Checking ark-bn254 v0.4.0
[INFO] [stderr]     Checking light-poseidon v0.2.0
[INFO] [stderr]     Checking cartesi-solana v0.3.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated struct `generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stdout]  --> src/transaction.rs:4:35
[INFO] [stdout]   |
[INFO] [stdout] 4 | use generic_array::{typenum::U64, GenericArray};
[INFO] [stdout]   |                                   ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/transaction.rs:11:22
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Signature(GenericArray<u8, U64>);
[INFO] [stdout]    |                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `solana_program::pubkey::Pubkey::new`: Please use 'Pubkey::from' or 'Pubkey::try_from' instead
[INFO] [stdout]   --> src/adapter.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |     Pubkey::new(&bytes)
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `solana_program::pubkey::Pubkey::new`: Please use 'Pubkey::from' or 'Pubkey::try_from' instead
[INFO] [stdout]   --> src/adapter.rs:74:37
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let caller_program_id = Pubkey::new(&caller_program_id);
[INFO] [stdout]    |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `solana_program::pubkey::Pubkey::new`: Please use 'Pubkey::from' or 'Pubkey::try_from' instead
[INFO] [stdout]    --> src/executor.rs:160:41
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let caller_program_id = Pubkey::new(&caller_program_id);
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]  --> src/owner_manager.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |         OWNERS.clear();
[INFO] [stdout]   |         ^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]   |
[INFO] [stdout]   = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]   = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]   = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/owner_manager.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |         POINTERS.clear();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/owner_manager.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         POINTERS.push((p as *mut &Pubkey, key));
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/owner_manager.rs:22:19
[INFO] [stdout]    |
[INFO] [stdout] 22 |         let tot = OWNERS.len();
[INFO] [stdout]    |                   ^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/owner_manager.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |         OWNERS.push(new_owner);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/owner_manager.rs:24:24
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let pointers = &POINTERS;
[INFO] [stdout]    |                        ^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let pointers = &raw const POINTERS;
[INFO] [stdout]    |                         +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         MEM_DATA.clear();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         ACCOUNT_INFO_DATA.clear();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         HASH_INFO_DATA.clear();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:64:23
[INFO] [stdout]    |
[INFO] [stdout] 64 |             let tot = ACCOUNT_INFO_DATA.len();
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             ACCOUNT_INFO_DATA.push(data);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             HASH_INFO_DATA.insert(account_info.key.to_owned(), tot);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:74:19
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let res = HASH_INFO_DATA.get(key);
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable when borrowed with a shared reference
[INFO] [stdout]    |
[INFO] [stdout] 15 - static mut HASH_INFO_DATA: Lazy<HashMap<Pubkey, usize>> = Lazy::new(|| HashMap::new());
[INFO] [stdout] 15 + static HASH_INFO_DATA: Lazy<HashMap<Pubkey, usize>> = Lazy::new(|| HashMap::new());
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:90:23
[INFO] [stdout]    |
[INFO] [stdout] 90 |             let tot = ACCOUNT_INFO_DATA.len();
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:92:13
[INFO] [stdout]    |
[INFO] [stdout] 92 |             ACCOUNT_INFO_DATA.push(data);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:94:13
[INFO] [stdout]    |
[INFO] [stdout] 94 |             HASH_INFO_DATA.insert(account_info.key.to_owned(), tot);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/account_manager.rs:111:28
[INFO] [stdout]     |
[INFO] [stdout] 111 |         let tot_mem_data = MEM_DATA.len();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/account_manager.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 | /         MEM_DATA.push(AccountMemData {
[INFO] [stdout] 113 | |             key: key.to_owned(),
[INFO] [stdout] 114 | |             owner,
[INFO] [stdout] 115 | |             lamports,
[INFO] [stdout] 116 | |             data: data.as_slice().into(),
[INFO] [stdout] 117 | |         });
[INFO] [stdout]     | |__________^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> src/cartesi_stub.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 163 |         drop(child_stdin);
[INFO] [stdout]     |         ^^^^^-----------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&mut ChildStdin`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dropping_references)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 163 -         drop(child_stdin);
[INFO] [stdout] 163 +         let _ = child_stdin;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stdout]  --> src/transaction.rs:4:35
[INFO] [stdout]   |
[INFO] [stdout] 4 | use generic_array::{typenum::U64, GenericArray};
[INFO] [stdout]   |                                   ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/transaction.rs:11:22
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Signature(GenericArray<u8, U64>);
[INFO] [stdout]    |                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `solana_program::pubkey::Pubkey::new`: Please use 'Pubkey::from' or 'Pubkey::try_from' instead
[INFO] [stdout]   --> src/adapter.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |     Pubkey::new(&bytes)
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `solana_program::pubkey::Pubkey::new`: Please use 'Pubkey::from' or 'Pubkey::try_from' instead
[INFO] [stdout]   --> src/adapter.rs:74:37
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let caller_program_id = Pubkey::new(&caller_program_id);
[INFO] [stdout]    |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `solana_program::pubkey::Pubkey::new`: Please use 'Pubkey::from' or 'Pubkey::try_from' instead
[INFO] [stdout]    --> src/executor.rs:160:41
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let caller_program_id = Pubkey::new(&caller_program_id);
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]  --> src/owner_manager.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |         OWNERS.clear();
[INFO] [stdout]   |         ^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]   |
[INFO] [stdout]   = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]   = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]   = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/owner_manager.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |         POINTERS.clear();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/owner_manager.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         POINTERS.push((p as *mut &Pubkey, key));
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/owner_manager.rs:22:19
[INFO] [stdout]    |
[INFO] [stdout] 22 |         let tot = OWNERS.len();
[INFO] [stdout]    |                   ^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/owner_manager.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |         OWNERS.push(new_owner);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/owner_manager.rs:24:24
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let pointers = &POINTERS;
[INFO] [stdout]    |                        ^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let pointers = &raw const POINTERS;
[INFO] [stdout]    |                         +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         MEM_DATA.clear();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         ACCOUNT_INFO_DATA.clear();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         HASH_INFO_DATA.clear();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:64:23
[INFO] [stdout]    |
[INFO] [stdout] 64 |             let tot = ACCOUNT_INFO_DATA.len();
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             ACCOUNT_INFO_DATA.push(data);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             HASH_INFO_DATA.insert(account_info.key.to_owned(), tot);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:74:19
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let res = HASH_INFO_DATA.get(key);
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable when borrowed with a shared reference
[INFO] [stdout]    |
[INFO] [stdout] 15 - static mut HASH_INFO_DATA: Lazy<HashMap<Pubkey, usize>> = Lazy::new(|| HashMap::new());
[INFO] [stdout] 15 + static HASH_INFO_DATA: Lazy<HashMap<Pubkey, usize>> = Lazy::new(|| HashMap::new());
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:90:23
[INFO] [stdout]    |
[INFO] [stdout] 90 |             let tot = ACCOUNT_INFO_DATA.len();
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:92:13
[INFO] [stdout]    |
[INFO] [stdout] 92 |             ACCOUNT_INFO_DATA.push(data);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/account_manager.rs:94:13
[INFO] [stdout]    |
[INFO] [stdout] 94 |             HASH_INFO_DATA.insert(account_info.key.to_owned(), tot);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/account_manager.rs:111:28
[INFO] [stdout]     |
[INFO] [stdout] 111 |         let tot_mem_data = MEM_DATA.len();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/account_manager.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 | /         MEM_DATA.push(AccountMemData {
[INFO] [stdout] 113 | |             key: key.to_owned(),
[INFO] [stdout] 114 | |             owner,
[INFO] [stdout] 115 | |             lamports,
[INFO] [stdout] 116 | |             data: data.as_slice().into(),
[INFO] [stdout] 117 | |         });
[INFO] [stdout]     | |__________^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> src/cartesi_stub.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 163 |         drop(child_stdin);
[INFO] [stdout]     |         ^^^^^-----------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&mut ChildStdin`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dropping_references)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 163 -         drop(child_stdin);
[INFO] [stdout] 163 +         let _ = child_stdin;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 01s
[INFO] running `Command { std: "docker" "inspect" "5639f271c726e66833dfc09a2cfcc339fed7d5a0091627a5657b039e5fc8d109", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5639f271c726e66833dfc09a2cfcc339fed7d5a0091627a5657b039e5fc8d109", kill_on_drop: false }`
[INFO] [stdout] 5639f271c726e66833dfc09a2cfcc339fed7d5a0091627a5657b039e5fc8d109
