[INFO] cloning repository https://github.com/sasiyaluba/firewall_exp [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sasiyaluba/firewall_exp" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsasiyaluba%2Ffirewall_exp", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsasiyaluba%2Ffirewall_exp'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a8b6cd5ec81fb5fdbbfff13c35c12729f7eecbef [INFO] checking sasiyaluba/firewall_exp against master#0ef0dd24510b52da980889546fcd15254dc56a23 for pr-126452 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsasiyaluba%2Ffirewall_exp" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/sasiyaluba/firewall_exp on toolchain 0ef0dd24510b52da980889546fcd15254dc56a23 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0ef0dd24510b52da980889546fcd15254dc56a23" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/sasiyaluba/firewall_exp [INFO] finished tweaking git repo https://github.com/sasiyaluba/firewall_exp [INFO] tweaked toml for git repo https://github.com/sasiyaluba/firewall_exp written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/sasiyaluba/firewall_exp already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0ef0dd24510b52da980889546fcd15254dc56a23" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded clang-sys v1.8.1 [INFO] [stderr] Downloaded backtrace v0.3.72 [INFO] [stderr] Downloaded strum v0.26.2 [INFO] [stderr] Downloaded ark-ff-macros v0.3.0 [INFO] [stderr] Downloaded frunk_derives v0.4.2 [INFO] [stderr] Downloaded tokio-macros v2.3.0 [INFO] [stderr] Downloaded nias v0.5.0 [INFO] [stderr] Downloaded darling_macro v0.20.9 [INFO] [stderr] Downloaded frunk_proc_macros v0.1.2 [INFO] [stderr] Downloaded parity-scale-codec-derive v3.6.12 [INFO] [stderr] Downloaded instant v0.1.13 [INFO] [stderr] Downloaded io-enum v1.1.3 [INFO] [stderr] Downloaded strsim v0.11.1 [INFO] [stderr] Downloaded pem v1.1.1 [INFO] [stderr] Downloaded zstd-safe v7.1.0 [INFO] [stderr] Downloaded winreg v0.50.0 [INFO] [stderr] Downloaded futures-timer v3.0.3 [INFO] [stderr] Downloaded jsonwebtoken v8.3.0 [INFO] [stderr] Downloaded ethers-addressbook v2.0.14 [INFO] [stderr] Downloaded serde_spanned v0.6.6 [INFO] [stderr] Downloaded ethers-contract v2.0.14 [INFO] [stderr] Downloaded prettyplease v0.2.20 [INFO] [stderr] Downloaded toml_edit v0.22.14 [INFO] [stderr] Downloaded winnow v0.6.11 [INFO] [stderr] Downloaded libz-sys v1.1.18 [INFO] [stderr] Downloaded c-kzg v1.0.2 [INFO] [stderr] Downloaded zstd-sys v2.0.10+zstd.1.5.6 [INFO] [stderr] Downloaded fsio v0.1.3 [INFO] [stderr] Downloaded envmnt v0.8.4 [INFO] [stderr] Downloaded ci_info v0.10.2 [INFO] [stderr] Downloaded tokio v1.38.0 [INFO] [stderr] Downloaded lalrpop v0.20.2 [INFO] [stderr] Downloaded chrono v0.4.38 [INFO] [stderr] Downloaded toml v0.8.14 [INFO] [stderr] Downloaded coins-bip39 v0.8.7 [INFO] [stderr] Downloaded solang-parser v0.3.3 [INFO] [stderr] Downloaded aes v0.8.4 [INFO] [stderr] Downloaded ethers-solc v2.0.14 [INFO] [stderr] Downloaded revm-primitives v4.0.0 [INFO] [stderr] Downloaded ethers-contract-abigen v2.0.14 [INFO] [stderr] Downloaded svm-rs v0.3.5 [INFO] [stderr] Downloaded strum_macros v0.26.4 [INFO] [stderr] Downloaded ethers-core v2.0.14 [INFO] [stderr] Downloaded rayon v1.10.0 [INFO] [stderr] Downloaded rustls v0.21.12 [INFO] [stderr] Downloaded sha3-asm v0.1.1 [INFO] [stderr] Downloaded blst v0.3.12 [INFO] [stderr] Downloaded gimli v0.29.0 [INFO] [stderr] Downloaded object v0.35.0 [INFO] [stderr] Downloaded ethers-middleware v2.0.14 [INFO] [stderr] Downloaded enr v0.10.0 [INFO] [stderr] Downloaded z3-sys v0.8.1 [INFO] [stderr] Downloaded camino v1.1.7 [INFO] [stderr] Downloaded ethers-providers v2.0.14 [INFO] [stderr] Downloaded ethers-contract-derive v2.0.14 [INFO] [stderr] Downloaded ethers-etherscan v2.0.14 [INFO] [stderr] Downloaded bs58 v0.5.1 [INFO] [stderr] Downloaded coins-core v0.8.7 [INFO] [stderr] Downloaded coins-bip32 v0.8.7 [INFO] [stderr] Downloaded ethers-signers v2.0.14 [INFO] [stderr] Downloaded md-5 v0.10.6 [INFO] [stderr] Downloaded ena v0.14.3 [INFO] [stderr] Downloaded new_debug_unreachable v1.0.6 [INFO] [stderr] Downloaded lalrpop-util v0.20.2 [INFO] [stderr] Downloaded dirs-sys v0.4.1 [INFO] [stderr] Downloaded dirs v5.0.1 [INFO] [stderr] Downloaded ethers v2.0.14 [INFO] [stderr] Downloaded cargo-platform v0.1.8 [INFO] [stderr] Downloaded cargo_metadata v0.18.1 [INFO] [stderr] Downloaded heck v0.5.0 [INFO] [stderr] Downloaded rustversion v1.0.17 [INFO] [stderr] Downloaded derive_utils v0.14.1 [INFO] [stderr] Downloaded btoi v0.4.3 [INFO] [stderr] Downloaded frunk_core v0.4.2 [INFO] [stderr] Downloaded frunk v0.4.2 [INFO] [stderr] Downloaded rkyv v0.7.44 [INFO] [stderr] Downloaded rust_decimal v1.35.0 [INFO] [stderr] Downloaded mysql_common v0.32.3 [INFO] [stderr] Downloaded tokio-util v0.7.11 [INFO] [stderr] Downloaded h2 v0.3.26 [INFO] [stderr] Downloaded hyper v0.14.29 [INFO] [stderr] Downloaded security-framework v2.11.0 [INFO] [stderr] Downloaded crypto-bigint v0.5.5 [INFO] [stderr] Downloaded der v0.7.9 [INFO] [stderr] Downloaded elliptic-curve v0.13.8 [INFO] [stderr] Downloaded k256 v0.13.3 [INFO] [stderr] Downloaded pest v2.7.10 [INFO] [stderr] Downloaded num-bigint v0.4.5 [INFO] [stderr] Downloaded proptest v1.4.0 [INFO] [stderr] Downloaded alloy-primitives v0.7.5 [INFO] [stderr] Downloaded rustc-demangle v0.1.24 [INFO] [stderr] Downloaded option-ext v0.2.0 [INFO] [stderr] Downloaded mem_storage v0.1.1 [INFO] [stderr] Downloaded lru v0.12.3 [INFO] [stderr] Downloaded frunk_proc_macro_helpers v0.1.2 [INFO] [stderr] Downloaded darling_core v0.20.9 [INFO] [stderr] Downloaded darling v0.20.9 [INFO] [stderr] Downloaded borsh-derive v1.5.1 [INFO] [stderr] Downloaded bytecheck_derive v0.6.12 [INFO] [stderr] Downloaded rend v0.4.2 [INFO] [stderr] Downloaded zstd v0.13.1 [INFO] [stderr] Downloaded named_pipe v0.4.1 [INFO] [stderr] Downloaded mysql v25.0.1 [INFO] [stderr] Downloaded reqwest v0.11.27 [INFO] [stderr] Downloaded hex-literal v0.4.1 [INFO] [stderr] Downloaded ark-serialize v0.3.0 [INFO] [stderr] Downloaded const-oid v0.9.6 [INFO] [stderr] Downloaded parity-scale-codec v3.6.12 [INFO] [stderr] Downloaded scale-info v2.11.3 [INFO] [stderr] Downloaded unarray v0.1.4 [INFO] [stderr] Downloaded ruint v1.12.3 [INFO] [stderr] Downloaded rusty-hook v0.11.2 [INFO] [stderr] Downloaded bindgen v0.66.1 [INFO] [stderr] Downloaded bigdecimal v0.4.3 [INFO] [stderr] Downloaded borsh v1.5.1 [INFO] [stderr] Downloaded ark-ff-asm v0.3.0 [INFO] [stderr] Downloaded wait-timeout v0.2.0 [INFO] [stderr] Downloaded zeroize v1.8.1 [INFO] [stderr] Downloaded enumn v0.1.13 [INFO] [stderr] Downloaded addr2line v0.22.0 [INFO] [stderr] Downloaded keccak-asm v0.1.1 [INFO] [stderr] Downloaded ruint-macro v1.2.1 [INFO] [stderr] Downloaded ecdsa v0.16.9 [INFO] [stderr] Downloaded parking_lot v0.12.3 [INFO] [stderr] Downloaded hyper-rustls v0.24.2 [INFO] [stderr] Downloaded rustls-pemfile v1.0.4 [INFO] [stderr] Downloaded spki v0.7.3 [INFO] [stderr] Downloaded ark-ff v0.3.0 [INFO] [stderr] Downloaded rusty-fork v0.3.0 [INFO] [stderr] Downloaded auto_impl v1.2.0 [INFO] [stderr] Downloaded z3 v0.12.1 [INFO] [stderr] Downloaded simple_asn1 v0.6.2 [INFO] [stderr] Downloaded bufstream v0.1.4 [INFO] [stderr] Downloaded alloy-rlp v0.3.5 [INFO] [stderr] Downloaded mysql-common-derive v0.31.1 [INFO] [stderr] Downloaded rkyv_derive v0.7.44 [INFO] [stderr] Downloaded security-framework-sys v2.11.0 [INFO] [stderr] Downloaded const-hex v1.12.0 [INFO] [stderr] Downloaded bytecheck v0.6.12 [INFO] [stderr] Downloaded signature v2.2.0 [INFO] [stderr] Downloaded ark-std v0.3.0 [INFO] [stderr] Downloaded fastrlp v0.3.1 [INFO] [stderr] Downloaded scale-info-derive v2.11.3 [INFO] [stderr] Downloaded rand_xorshift v0.3.0 [INFO] [stderr] Downloaded dyn-clone v1.0.17 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+0ef0dd24510b52da980889546fcd15254dc56a23" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] fc80ce160626cce9864e89ec681e5b6a58fc85dd5c3d26e8063f599927346dcb [INFO] running `Command { std: "docker" "start" "-a" "fc80ce160626cce9864e89ec681e5b6a58fc85dd5c3d26e8063f599927346dcb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "fc80ce160626cce9864e89ec681e5b6a58fc85dd5c3d26e8063f599927346dcb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fc80ce160626cce9864e89ec681e5b6a58fc85dd5c3d26e8063f599927346dcb", kill_on_drop: false }` [INFO] [stdout] fc80ce160626cce9864e89ec681e5b6a58fc85dd5c3d26e8063f599927346dcb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+0ef0dd24510b52da980889546fcd15254dc56a23" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2971678ad3d272dc06a6b3c19779b4697eb51d50afd3c669fd30795a7f428a1a [INFO] running `Command { std: "docker" "start" "-a" "2971678ad3d272dc06a6b3c19779b4697eb51d50afd3c669fd30795a7f428a1a", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.85 [INFO] [stderr] Compiling libc v0.2.155 [INFO] [stderr] Compiling serde v1.0.203 [INFO] [stderr] Compiling autocfg v1.3.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Checking const-oid v0.9.6 [INFO] [stderr] Checking subtle v2.5.0 [INFO] [stderr] Compiling winnow v0.5.40 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling crunchy v0.2.2 [INFO] [stderr] Compiling thiserror v1.0.61 [INFO] [stderr] Compiling convert_case v0.4.0 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Compiling memchr v2.7.2 [INFO] [stderr] Compiling zeroize v1.8.1 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling regex-syntax v0.8.3 [INFO] [stderr] Checking zerocopy v0.7.34 [INFO] [stderr] Checking bitflags v2.5.0 [INFO] [stderr] Checking smallvec v1.13.2 [INFO] [stderr] Checking allocator-api2 v0.2.18 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Checking rustc-hex v2.1.0 [INFO] [stderr] Checking ryu v1.0.18 [INFO] [stderr] Compiling serde_json v1.0.117 [INFO] [stderr] Compiling camino v1.1.7 [INFO] [stderr] Checking log v0.4.21 [INFO] [stderr] Compiling rustversion v1.0.17 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling semver v1.0.23 [INFO] [stderr] Compiling indexmap v2.2.6 [INFO] [stderr] Checking byte-slice-cast v1.2.2 [INFO] [stderr] Compiling rustix v0.38.34 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Checking keccak v0.1.5 [INFO] [stderr] Checking base16ct v0.2.0 [INFO] [stderr] Compiling syn v2.0.66 [INFO] [stderr] Compiling jobserver v0.1.31 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking socket2 v0.5.7 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling cc v1.0.98 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking ff v0.13.0 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Checking group v0.13.0 [INFO] [stderr] Compiling glob v0.3.1 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Checking base64 v0.21.7 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling ppv-lite86 v0.2.17 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Checking untrusted v0.9.0 [INFO] [stderr] Compiling arrayvec v0.7.4 [INFO] [stderr] Checking uint v0.9.5 [INFO] [stderr] Checking futures-task v0.3.30 [INFO] [stderr] Compiling clang-sys v1.8.1 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Checking unicode-ident v1.0.12 [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.92 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling rustls v0.21.12 [INFO] [stderr] Checking fixed-hash v0.8.0 [INFO] [stderr] Compiling regex-automata v0.4.6 [INFO] [stderr] Compiling der v0.7.9 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Checking const-hex v1.12.0 [INFO] [stderr] Compiling libloading v0.8.3 [INFO] [stderr] Checking linux-raw-sys v0.4.14 [INFO] [stderr] Compiling native-tls v0.2.12 [INFO] [stderr] Compiling bumpalo v3.16.0 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling ring v0.17.8 [INFO] [stderr] Compiling openssl-sys v0.9.102 [INFO] [stderr] Compiling time-core v0.1.2 [INFO] [stderr] Checking fastrand v2.1.0 [INFO] [stderr] Compiling lazycell v1.3.0 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.20 [INFO] [stderr] Compiling radium v0.7.0 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Compiling num-conv v0.1.0 [INFO] [stderr] Checking iana-time-zone v0.1.60 [INFO] [stderr] Checking powerfmt v0.2.0 [INFO] [stderr] Checking chrono v0.4.38 [INFO] [stderr] Compiling time-macros v0.2.18 [INFO] [stderr] Compiling sec1 v0.7.3 [INFO] [stderr] Checking deranged v0.3.11 [INFO] [stderr] Compiling openssl v0.10.64 [INFO] [stderr] Checking num-bigint v0.4.5 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling crypto-bigint v0.5.5 [INFO] [stderr] Compiling prettyplease v0.2.20 [INFO] [stderr] Checking tap v1.0.1 [INFO] [stderr] error: could not compile `syn` (lib) [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/0ef0dd24510b52da980889546fcd15254dc56a23/bin/rustc --crate-name syn --edition=2021 /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.66/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no --cfg 'feature="clone-impls"' --cfg 'feature="default"' --cfg 'feature="derive"' --cfg 'feature="extra-traits"' --cfg 'feature="full"' --cfg 'feature="parsing"' --cfg 'feature="printing"' --cfg 'feature="proc-macro"' --cfg 'feature="visit"' --cfg 'feature="visit-mut"' --check-cfg 'cfg(docsrs)' --check-cfg 'cfg(feature, values("clone-impls", "default", "derive", "extra-traits", "fold", "full", "parsing", "printing", "proc-macro", "test", "visit", "visit-mut"))' -C metadata=3e830b26517935b6 -C extra-filename=-3e830b26517935b6 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern proc_macro2=/opt/rustwide/target/debug/deps/libproc_macro2-1bb26fbb0527dae1.rmeta --extern quote=/opt/rustwide/target/debug/deps/libquote-72a3009671468a77.rmeta --extern unicode_ident=/opt/rustwide/target/debug/deps/libunicode_ident-7b828347d8713ecd.rmeta --cap-lints allow --cap-lints=forbid` (signal: 9, SIGKILL: kill) [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "2971678ad3d272dc06a6b3c19779b4697eb51d50afd3c669fd30795a7f428a1a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2971678ad3d272dc06a6b3c19779b4697eb51d50afd3c669fd30795a7f428a1a", kill_on_drop: false }` [INFO] [stdout] 2971678ad3d272dc06a6b3c19779b4697eb51d50afd3c669fd30795a7f428a1a [INFO] checking sasiyaluba/firewall_exp against try#d9cbfeb054d7bd02cf942e6d32c1c0a91f042ce9 for pr-126452 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsasiyaluba%2Ffirewall_exp" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/sasiyaluba/firewall_exp on toolchain d9cbfeb054d7bd02cf942e6d32c1c0a91f042ce9 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d9cbfeb054d7bd02cf942e6d32c1c0a91f042ce9" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/sasiyaluba/firewall_exp [INFO] finished tweaking git repo https://github.com/sasiyaluba/firewall_exp [INFO] tweaked toml for git repo https://github.com/sasiyaluba/firewall_exp written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/sasiyaluba/firewall_exp already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d9cbfeb054d7bd02cf942e6d32c1c0a91f042ce9" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+d9cbfeb054d7bd02cf942e6d32c1c0a91f042ce9" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6d1b09b8dce9e46f8c55c316891fb98e231f8b60dd7db7c346be1867f35afa9b [INFO] running `Command { std: "docker" "start" "-a" "6d1b09b8dce9e46f8c55c316891fb98e231f8b60dd7db7c346be1867f35afa9b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6d1b09b8dce9e46f8c55c316891fb98e231f8b60dd7db7c346be1867f35afa9b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6d1b09b8dce9e46f8c55c316891fb98e231f8b60dd7db7c346be1867f35afa9b", kill_on_drop: false }` [INFO] [stdout] 6d1b09b8dce9e46f8c55c316891fb98e231f8b60dd7db7c346be1867f35afa9b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+d9cbfeb054d7bd02cf942e6d32c1c0a91f042ce9" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d7f563ea35a9be97db2ddb8435cb23bc54c903cb3ca1d8c6fd5d655a2f2a31d1 [INFO] running `Command { std: "docker" "start" "-a" "d7f563ea35a9be97db2ddb8435cb23bc54c903cb3ca1d8c6fd5d655a2f2a31d1", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.85 [INFO] [stderr] Compiling libc v0.2.155 [INFO] [stderr] Compiling serde v1.0.203 [INFO] [stderr] Compiling autocfg v1.3.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling winnow v0.5.40 [INFO] [stderr] Checking subtle v2.5.0 [INFO] [stderr] Checking const-oid v0.9.6 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling crunchy v0.2.2 [INFO] [stderr] Compiling thiserror v1.0.61 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Compiling zeroize v1.8.1 [INFO] [stderr] Compiling memchr v2.7.2 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling regex-syntax v0.8.3 [INFO] [stderr] Checking zerocopy v0.7.34 [INFO] [stderr] Checking bitflags v2.5.0 [INFO] [stderr] Checking smallvec v1.13.2 [INFO] [stderr] Checking ryu v1.0.18 [INFO] [stderr] Checking allocator-api2 v0.2.18 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling serde_json v1.0.117 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Checking rustc-hex v2.1.0 [INFO] [stderr] Compiling rustix v0.38.34 [INFO] [stderr] Compiling camino v1.1.7 [INFO] [stderr] Compiling semver v1.0.23 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling rustversion v1.0.17 [INFO] [stderr] Checking log v0.4.21 [INFO] [stderr] Compiling indexmap v2.2.6 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Checking byte-slice-cast v1.2.2 [INFO] [stderr] Checking base16ct v0.2.0 [INFO] [stderr] Compiling syn v2.0.66 [INFO] [stderr] Checking keccak v0.1.5 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking socket2 v0.5.7 [INFO] [stderr] Compiling jobserver v0.1.31 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Compiling cc v1.0.98 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking ff v0.13.0 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Checking group v0.13.0 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling glob v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Checking untrusted v0.9.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.17 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Compiling arrayvec v0.7.4 [INFO] [stderr] Checking uint v0.9.5 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling clang-sys v1.8.1 [INFO] [stderr] Checking futures-task v0.3.30 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.92 [INFO] [stderr] Checking unicode-ident v1.0.12 [INFO] [stderr] Compiling rustls v0.21.12 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Checking fixed-hash v0.8.0 [INFO] [stderr] Compiling regex-automata v0.4.6 [INFO] [stderr] Compiling der v0.7.9 [INFO] [stderr] Checking const-hex v1.12.0 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling libloading v0.8.3 [INFO] [stderr] Checking linux-raw-sys v0.4.14 [INFO] [stderr] Compiling native-tls v0.2.12 [INFO] [stderr] Compiling bumpalo v3.16.0 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling crossbeam-utils v0.8.20 [INFO] [stderr] Compiling ring v0.17.8 [INFO] [stderr] Compiling openssl-sys v0.9.102 [INFO] [stderr] Compiling radium v0.7.0 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling lazycell v1.3.0 [INFO] [stderr] Compiling time-core v0.1.2 [INFO] [stderr] Checking powerfmt v0.2.0 [INFO] [stderr] Checking iana-time-zone v0.1.60 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Checking fastrand v2.1.0 [INFO] [stderr] Compiling num-conv v0.1.0 [INFO] [stderr] Checking deranged v0.3.11 [INFO] [stderr] Checking chrono v0.4.38 [INFO] [stderr] Compiling sec1 v0.7.3 [INFO] [stderr] Compiling time-macros v0.2.18 [INFO] [stderr] Checking num-bigint v0.4.5 [INFO] [stderr] Compiling openssl v0.10.64 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling crypto-bigint v0.5.5 [INFO] [stderr] Compiling wasm-bindgen v0.2.92 [INFO] [stderr] Compiling cexpr v0.6.0 [INFO] [stderr] Compiling eyre v0.6.12 [INFO] [stderr] Checking unicode-xid v0.2.4 [INFO] [stderr] Compiling prettyplease v0.2.20 [INFO] [stderr] Checking tempfile v3.10.1 [INFO] [stderr] Compiling cpufeatures v0.2.12 [INFO] [stderr] Checking tap v1.0.1 [INFO] [stderr] Compiling itoa v1.0.11 [INFO] [stderr] Compiling regex v1.10.4 [INFO] [stderr] Checking httpdate v1.0.3 [INFO] [stderr] Checking wyz v0.5.1 [INFO] [stderr] Compiling wasm-bindgen-backend v0.2.92 [INFO] [stderr] Compiling rfc6979 v0.4.0 [INFO] [stderr] Compiling spki v0.7.3 [INFO] [stderr] Compiling signature v2.2.0 [INFO] [stderr] Checking funty v2.0.0 [INFO] [stderr] Compiling sha2 v0.10.8 [INFO] [stderr] Compiling ring v0.16.20 [INFO] [stderr] Compiling zstd-sys v2.0.10+zstd.1.5.6 [INFO] [stderr] Checking time v0.3.36 [INFO] [stderr] Compiling sha3 v0.10.8 [INFO] [stderr] Checking webpki-roots v0.25.4 [INFO] [stderr] Compiling winnow v0.6.11 [INFO] [stderr] Checking bitvec v1.0.1 [INFO] [stderr] Compiling elliptic-curve v0.13.8 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.92 [INFO] [stderr] Compiling ecdsa v0.16.9 [INFO] [stderr] Checking rustls-pemfile v1.0.4 [INFO] [stderr] Compiling k256 v0.13.3 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Checking utf-8 v0.7.6 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Checking base64 v0.13.1 [INFO] [stderr] Checking bech32 v0.9.1 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling bindgen v0.69.4 [INFO] [stderr] Compiling bindgen v0.66.1 [INFO] [stderr] Compiling indenter v0.3.3 [INFO] [stderr] Checking data-encoding v2.6.0 [INFO] [stderr] Compiling either v1.12.0 [INFO] [stderr] Compiling frunk_core v0.4.2 [INFO] [stderr] Compiling darling_core v0.20.9 [INFO] [stderr] Compiling serde_derive v1.0.203 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling thiserror-impl v1.0.61 [INFO] [stderr] Compiling tokio-macros v2.3.0 [INFO] [stderr] Compiling auto_impl v1.2.0 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling impl-trait-for-tuples v0.2.2 [INFO] [stderr] Compiling rlp-derive v0.1.0 [INFO] [stderr] Compiling derive_more v0.99.17 [INFO] [stderr] Compiling tracing-attributes v0.1.27 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.92 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Checking inout v0.1.3 [INFO] [stderr] Checking cipher v0.4.4 [INFO] [stderr] Compiling pin-project-internal v1.1.5 [INFO] [stderr] Checking pkcs8 v0.10.2 [INFO] [stderr] Checking sha1 v0.10.6 [INFO] [stderr] Checking bs58 v0.5.1 [INFO] [stderr] Checking js-sys v0.3.69 [INFO] [stderr] Checking ripemd v0.1.3 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking rustls-webpki v0.101.7 [INFO] [stderr] Checking sct v0.7.1 [INFO] [stderr] Checking salsa20 v0.10.2 [INFO] [stderr] Checking pbkdf2 v0.11.0 [INFO] [stderr] Compiling frunk_proc_macro_helpers v0.1.2 [INFO] [stderr] Checking simple_asn1 v0.6.2 [INFO] [stderr] Checking strum v0.26.2 [INFO] [stderr] Compiling itertools v0.12.1 [INFO] [stderr] Compiling async-trait v0.1.80 [INFO] [stderr] Checking pem v1.1.1 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking pin-project v1.1.5 [INFO] [stderr] Compiling Inflector v0.11.4 [INFO] [stderr] Compiling libz-sys v1.1.18 [INFO] [stderr] Compiling blst v0.3.12 [INFO] [stderr] Checking fxhash v0.2.1 [INFO] [stderr] Checking send_wrapper v0.4.0 [INFO] [stderr] Compiling zstd-safe v7.1.0 [INFO] [stderr] Compiling dunce v1.0.4 [INFO] [stderr] Compiling peeking_take_while v0.1.2 [INFO] [stderr] Compiling fsio v0.1.3 [INFO] [stderr] Checking hashers v1.0.1 [INFO] [stderr] Compiling envmnt v0.8.4 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Checking tracing-futures v0.2.5 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling darling_macro v0.20.9 [INFO] [stderr] Checking scrypt v0.10.0 [INFO] [stderr] Checking ctr v0.9.2 [INFO] [stderr] Checking aes v0.8.4 [INFO] [stderr] Checking pbkdf2 v0.12.2 [INFO] [stderr] Compiling cmake v0.1.50 [INFO] [stderr] Compiling subprocess v0.2.9 [INFO] [stderr] Compiling bigdecimal v0.4.3 [INFO] [stderr] Checking instant v0.1.13 [INFO] [stderr] Compiling rust_decimal v1.35.0 [INFO] [stderr] Compiling darling v0.20.9 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling ci_info v0.10.2 [INFO] [stderr] Compiling frunk_proc_macros v0.1.2 [INFO] [stderr] Compiling frunk_derives v0.4.2 [INFO] [stderr] Compiling c-kzg v1.0.2 [INFO] [stderr] Checking threadpool v1.8.1 [INFO] [stderr] Checking crc32fast v1.4.2 [INFO] [stderr] Compiling termcolor v1.4.1 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling nias v0.5.0 [INFO] [stderr] Compiling ruint-macro v1.2.1 [INFO] [stderr] Checking gloo-timers v0.2.6 [INFO] [stderr] Checking flate2 v1.0.30 [INFO] [stderr] Checking crossbeam-channel v0.5.13 [INFO] [stderr] Checking futures-timer v3.0.3 [INFO] [stderr] Checking crossbeam-queue v0.3.11 [INFO] [stderr] Compiling derive_utils v0.14.1 [INFO] [stderr] Checking futures-locks v0.7.1 [INFO] [stderr] Checking btoi v0.4.3 [INFO] [stderr] Checking saturating v0.1.0 [INFO] [stderr] Checking hex-literal v0.4.1 [INFO] [stderr] Checking base64 v0.22.1 [INFO] [stderr] Checking unicode-width v0.1.13 [INFO] [stderr] Compiling mysql v25.0.1 [INFO] [stderr] Checking uuid v1.8.0 [INFO] [stderr] Checking getopts v0.2.21 [INFO] [stderr] Checking crossbeam v0.8.4 [INFO] [stderr] Compiling io-enum v1.1.3 [INFO] [stderr] Compiling enumn v0.1.13 [INFO] [stderr] Checking twox-hash v1.6.3 [INFO] [stderr] Checking lru v0.12.3 [INFO] [stderr] Checking pem v3.0.4 [INFO] [stderr] Checking dyn-clone v1.0.17 [INFO] [stderr] Checking bufstream v0.1.4 [INFO] [stderr] Checking colored v2.1.0 [INFO] [stderr] Checking mem_storage v0.1.1 [INFO] [stderr] Checking dotenv v0.15.0 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Checking bytes v1.6.0 [INFO] [stderr] Compiling toml_datetime v0.6.6 [INFO] [stderr] Checking impl-serde v0.4.0 [INFO] [stderr] Checking cargo-platform v0.1.8 [INFO] [stderr] Compiling serde_spanned v0.6.6 [INFO] [stderr] Compiling toml_edit v0.21.1 [INFO] [stderr] Compiling toml_edit v0.22.14 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking rlp v0.5.2 [INFO] [stderr] Checking tokio v1.38.0 [INFO] [stderr] Checking http v0.2.12 [INFO] [stderr] Checking impl-rlp v0.3.0 [INFO] [stderr] Checking coins-core v0.8.7 [INFO] [stderr] Checking enr v0.10.0 [INFO] [stderr] Checking uuid v0.8.2 [INFO] [stderr] Compiling open-fastrlp-derive v0.1.1 [INFO] [stderr] Checking coins-bip32 v0.8.7 [INFO] [stderr] Checking cargo_metadata v0.18.1 [INFO] [stderr] Checking jsonwebtoken v8.3.0 [INFO] [stderr] Checking alloy-rlp v0.3.5 [INFO] [stderr] Checking eth-keystore v0.5.0 [INFO] [stderr] Compiling toml v0.5.11 [INFO] [stderr] Checking ruint v1.12.3 [INFO] [stderr] Checking http-body v0.4.6 [INFO] [stderr] Checking tungstenite v0.20.1 [INFO] [stderr] Checking coins-bip39 v0.8.7 [INFO] [stderr] Checking zstd v0.13.1 [INFO] [stderr] Checking frunk v0.4.2 [INFO] [stderr] Checking alloy-primitives v0.7.5 [INFO] [stderr] Compiling proc-macro-crate v3.1.0 [INFO] [stderr] Checking toml v0.8.14 [INFO] [stderr] Compiling z3-sys v0.8.1 [INFO] [stderr] Compiling rusty-hook v0.11.2 [INFO] [stderr] Checking revm-primitives v4.0.0 [INFO] [stderr] Compiling mysql_common v0.32.3 [INFO] [stderr] Compiling parity-scale-codec-derive v3.6.12 [INFO] [stderr] Compiling scale-info-derive v2.11.3 [INFO] [stderr] Compiling num_enum_derive v0.7.2 [INFO] [stderr] Compiling mysql-common-derive v0.31.1 [INFO] [stderr] Checking num_enum v0.7.2 [INFO] [stderr] Checking parity-scale-codec v3.6.12 [INFO] [stderr] Checking impl-codec v0.6.0 [INFO] [stderr] Checking scale-info v2.11.3 [INFO] [stderr] Checking tokio-util v0.7.11 [INFO] [stderr] Checking tokio-rustls v0.24.1 [INFO] [stderr] Checking tokio-native-tls v0.3.1 [INFO] [stderr] Checking tokio-tungstenite v0.20.1 [INFO] [stderr] Checking ethbloom v0.13.0 [INFO] [stderr] Checking primitive-types v0.12.2 [INFO] [stderr] Checking h2 v0.3.26 [INFO] [stderr] Checking ethereum-types v0.14.1 [INFO] [stderr] Checking open-fastrlp v0.1.4 [INFO] [stderr] Checking ethabi v18.0.0 [INFO] [stderr] Checking ethers-core v2.0.14 [INFO] [stderr] Checking hyper v0.14.29 [INFO] [stderr] Checking z3 v0.12.1 [INFO] [stderr] Checking hyper-tls v0.5.0 [INFO] [stderr] Checking hyper-rustls v0.24.2 [INFO] [stderr] Checking reqwest v0.11.27 [INFO] [stderr] Checking ethers-contract-abigen v2.0.14 [INFO] [stderr] Checking ethers-providers v2.0.14 [INFO] [stderr] Checking ethers-signers v2.0.14 [INFO] [stderr] Checking ethers-etherscan v2.0.14 [INFO] [stderr] Checking ethers-addressbook v2.0.14 [INFO] [stderr] Compiling ethers-contract-derive v2.0.14 [INFO] [stderr] Checking ethers-contract v2.0.14 [INFO] [stderr] Checking ethers-middleware v2.0.14 [INFO] [stderr] Checking ethers v2.0.14 [INFO] [stderr] Checking evm-rs-emulator v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `fmt` [INFO] [stdout] --> src/core_module/memory.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{fmt, ptr}; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/arithmetic/unsigned.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/bitwise.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `u64_to_u256_array` [INFO] [stdout] --> src/core_module/op_codes/bitwise.rs:6:40 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::core_module::utils::bytes::{u64_to_u256_array, u64_x4_array_to_u8_x32_array}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f64::consts::E` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::f64::consts::E; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SystemTime` and `UNIX_EPOCH` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::account_state_ex_context` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::core_module::context::account_state_ex_context; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/core_module/op_codes/environment.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | /// todo! add calldata [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 90 | let origin_data_exist = runner.calldata_info.clone(); [INFO] [stdout] | ----------------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/stack/dup.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/stack/pop.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/storage.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils::bytes` [INFO] [stdout] --> src/core_module/op_codes/system.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils::bytes; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/system.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Hash` [INFO] [stdout] --> src/core_module/runner.rs:9:28 [INFO] [stdout] | [INFO] [stdout] 9 | use ethers::abi::{Address, Hash}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f64::consts::E` [INFO] [stdout] --> src/core_module/runner.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::f64::consts::E; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Display` [INFO] [stdout] --> src/core_module/runner.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::fmt::Display; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::op_codes` [INFO] [stdout] --> src/core_module/utils/bytes.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::core_module::op_codes; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `primitive_types::U256` [INFO] [stdout] --> src/core_module/context/evm_context.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use primitive_types::U256; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `env` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{env, fmt, process}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ProviderExt` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:5:169 [INFO] [stdout] | [INFO] [stdout] 5 | ...acingOptions, Http, PreStateConfig, PreStateFrame, Provider, ProviderExt}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils::bytes::to_h256` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::core_module::utils::bytes::to_h256; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> src/core_module/context/transaction_context.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ProviderExt` [INFO] [stdout] --> src/core_module/context/transaction_context.rs:8:52 [INFO] [stdout] | [INFO] [stdout] 8 | use ethers::providers::{Middleware, ProviderError, ProviderExt}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::evm_context::EvmContext` [INFO] [stdout] --> src/core_module/context/calldata_info.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::core_module::context::evm_context::EvmContext; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::core::k256::sha2::digest::typenum::op` [INFO] [stdout] --> src/example/call_tracer_test.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use ethers::core::k256::sha2::digest::typenum::op; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/example/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | pub mod call_tracer_test; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::types::GethDebugTracerConfig` [INFO] [stdout] --> src/example/call_tracer_test.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ethers::types::GethDebugTracerConfig; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/example/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | pub mod call_tracer_test; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `GethDebugTracingOptions`, `Http`, `Middleware`, and `Provider` [INFO] [stdout] --> src/example/call_tracer_test.rs:4:19 [INFO] [stdout] | [INFO] [stdout] 4 | core::types::{GethDebugTracingOptions, H256}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 5 | providers::{Http, Middleware, Provider}, [INFO] [stdout] | ^^^^ ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/example/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | pub mod call_tracer_test; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashMap` [INFO] [stdout] --> src/example/call_tracer_test.rs:9:34 [INFO] [stdout] | [INFO] [stdout] 9 | use std::collections::{BTreeMap, HashMap}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/example/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | pub mod call_tracer_test; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str::FromStr` [INFO] [stdout] --> src/example/call_tracer_test.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::str::FromStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/example/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | pub mod call_tracer_test; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ISDiff` and `get_accounts_state_tx` [INFO] [stdout] --> src/example/tx_with_state.rs:1:61 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::core_module::context::account_state_ex_context::{get_accounts_state_tx, ISDiff}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::evm_context::EvmContext` [INFO] [stdout] --> src/example/tx_with_state.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::context::evm_context::EvmContext; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::transaction_context::get_transaction_content` [INFO] [stdout] --> src/example/tx_with_state.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::core_module::context::transaction_context::get_transaction_content; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::runner::Runner` [INFO] [stdout] --> src/example/tx_with_state.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::core_module::runner::Runner; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::state::EvmState` [INFO] [stdout] --> src/example/tx_with_state.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::core_module::state::EvmState; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils::bytes::to_h256` [INFO] [stdout] --> src/example/tx_with_state.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::core_module::utils::bytes::to_h256; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dotenv::dotenv` [INFO] [stdout] --> src/example/tx_with_state.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use dotenv::dotenv; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::addressbook::Address` [INFO] [stdout] --> src/example/tx_with_state.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use ethers::addressbook::Address; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::prelude::Provider` [INFO] [stdout] --> src/example/tx_with_state.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use ethers::prelude::Provider; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Middleware`, `ProviderError`, and `ProviderExt` [INFO] [stdout] --> src/example/tx_with_state.rs:10:25 [INFO] [stdout] | [INFO] [stdout] 10 | use ethers::providers::{Middleware, ProviderError, ProviderExt}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::types::TxHash` [INFO] [stdout] --> src/example/tx_with_state.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use ethers::types::TxHash; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Deserialize` [INFO] [stdout] --> src/example/tx_with_state.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | pub use serde::Deserialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> src/example/tx_with_state.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::env` [INFO] [stdout] --> src/example/tx_with_state.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::env; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str::FromStr` [INFO] [stdout] --> src/example/tx_with_state.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use std::str::FromStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/example/tx_with_state.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Config`, `Context`, `SatResult`, `Solver`, and `ast` [INFO] [stdout] --> src/example/z3example.rs:1:10 [INFO] [stdout] | [INFO] [stdout] 1 | use z3::{ast, Config, Context, SatResult, Solver}; [INFO] [stdout] | ^^^ ^^^^^^ ^^^^^^^ ^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `_hex_string_to_bytes`, `pad_left`, and `to_h160` [INFO] [stdout] --> src/paper/test_tx.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::bytes::{_hex_string_to_bytes, pad_left, to_h160}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AccountStateEx`, `ISDiff`, and `get_accounts_state_tx` [INFO] [stdout] --> src/paper/test_tx.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | get_accounts_state_tx, AccountStateEx, ISDiff, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::calldata_info::CallDataInfo` [INFO] [stdout] --> src/paper/test_tx.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::core_module::context::calldata_info::CallDataInfo; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::evm_context::EvmContext` [INFO] [stdout] --> src/paper/test_tx.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::core_module::context::evm_context::EvmContext; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::transaction_context::get_transaction_content` [INFO] [stdout] --> src/paper/test_tx.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::core_module::context::transaction_context::get_transaction_content; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Runner` and `self` [INFO] [stdout] --> src/paper/test_tx.rs:8:34 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::core_module::runner::{self, Runner}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AccountState` and `EvmState` [INFO] [stdout] --> src/paper/test_tx.rs:9:33 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::core_module::state::{AccountState, EvmState}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils::bytes::to_h256` [INFO] [stdout] --> src/paper/test_tx.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::core_module::utils::bytes::to_h256; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Memory` and `Stack` [INFO] [stdout] --> src/paper/test_tx.rs:11:13 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::{Memory, Stack}; [INFO] [stdout] | ^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloy_primitives::utils::parse_ether` [INFO] [stdout] --> src/paper/test_tx.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use alloy_primitives::utils::parse_ether; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloy_rlp::Bytes` [INFO] [stdout] --> src/paper/test_tx.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use alloy_rlp::Bytes; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dotenv::dotenv` [INFO] [stdout] --> src/paper/test_tx.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use dotenv::dotenv; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::prelude::Provider` [INFO] [stdout] --> src/paper/test_tx.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use ethers::prelude::Provider; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Middleware`, `ProviderError`, and `ProviderExt` [INFO] [stdout] --> src/paper/test_tx.rs:16:25 [INFO] [stdout] | [INFO] [stdout] 16 | use ethers::providers::{Middleware, ProviderError, ProviderExt}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::types::Opcode::SHA3` [INFO] [stdout] --> src/paper/test_tx.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use ethers::types::Opcode::SHA3; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Address` and `TxHash` [INFO] [stdout] --> src/paper/test_tx.rs:18:21 [INFO] [stdout] | [INFO] [stdout] 18 | use ethers::types::{Address, TxHash}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::utils::keccak256` [INFO] [stdout] --> src/paper/test_tx.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | use ethers::utils::keccak256; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hex::FromHex` [INFO] [stdout] --> src/paper/test_tx.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use hex::FromHex; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::de` [INFO] [stdout] --> src/paper/test_tx.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use serde::de; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/paper/test_tx.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BTreeMap` and `HashMap` [INFO] [stdout] --> src/paper/test_tx.rs:25:24 [INFO] [stdout] | [INFO] [stdout] 25 | use std::collections::{BTreeMap, HashMap}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Debug` [INFO] [stdout] --> src/paper/test_tx.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::unix::process::parent_id` [INFO] [stdout] --> src/paper/test_tx.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | use std::os::unix::process::parent_id; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/paper/test_tx.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str::FromStr` [INFO] [stdout] --> src/paper/test_tx.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | use std::str::FromStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc` and `Mutex` [INFO] [stdout] --> src/paper/test_tx.rs:30:17 [INFO] [stdout] | [INFO] [stdout] 30 | use std::sync::{Arc, Mutex}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `clone`, `env`, and `fmt` [INFO] [stdout] --> src/paper/test_tx.rs:31:11 [INFO] [stdout] | [INFO] [stdout] 31 | use std::{clone, env, fmt}; [INFO] [stdout] | ^^^^^ ^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::format` [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fmt::format; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::bytes::pad_left` [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::bytes::pad_left; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::paper::invariant::listening_tx::RangeExpression` [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::paper::invariant::listening_tx::RangeExpression; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::paper::strategy::simiarity::read_op_from_file` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::paper::strategy::simiarity::read_op_from_file; // Import the Write trait [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/paper/strategy/simiarity.rs:39:16 [INFO] [stdout] | [INFO] [stdout] 39 | if (similarity >= pass_similarity) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 39 - if (similarity >= pass_similarity) { [INFO] [stdout] 39 + if similarity >= pass_similarity { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/paper/strategy/simiarity.rs:50:16 [INFO] [stdout] | [INFO] [stdout] 50 | if (similarity >= pass_similarity) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 50 - if (similarity >= pass_similarity) { [INFO] [stdout] 50 + if similarity >= pass_similarity { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::env` [INFO] [stdout] --> src/paper/evm_interpreter/get_evm_interpreter.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::env; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dotenv::dotenv` [INFO] [stdout] --> src/paper/evm_interpreter/get_evm_interpreter.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use dotenv::dotenv; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ISDiff` and `get_accounts_state_tx` [INFO] [stdout] --> src/paper/evm_interpreter/get_evm_interpreter.rs:7:61 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::core_module::context::account_state_ex_context::{get_accounts_state_tx, get_tx_after_accounts_state, ISDiff}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `_hex_string_to_bytes` and `to_h256` [INFO] [stdout] --> src/paper/exec_eng.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::bytes::{_hex_string_to_bytes, to_h256}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ISDiff`, `get_accounts_state_tx`, and `get_tx_after_accounts_state` [INFO] [stdout] --> src/paper/exec_eng.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | get_accounts_state_tx, get_tx_after_accounts_state, ISDiff, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::evm_context::EvmContext` [INFO] [stdout] --> src/paper/exec_eng.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::core_module::context::evm_context::EvmContext; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::transaction_context::get_transaction_content` [INFO] [stdout] --> src/paper/exec_eng.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::core_module::context::transaction_context::get_transaction_content; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fmt` [INFO] [stdout] --> src/core_module/memory.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{fmt, ptr}; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EvmState` and `Runner` [INFO] [stdout] --> src/paper/exec_eng.rs:11:13 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::{EvmState, Runner}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/arithmetic/unsigned.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ProviderExt`, `Provider`, and `TxHash` [INFO] [stdout] --> src/paper/exec_eng.rs:12:23 [INFO] [stdout] | [INFO] [stdout] 12 | use ethers::prelude::{Provider, ProviderError, ProviderExt, TxHash}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/bitwise.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Bytes` [INFO] [stdout] --> src/paper/invariant/database.rs:4:30 [INFO] [stdout] | [INFO] [stdout] 4 | use ethers::types::{Address, Bytes, U256}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Value_range` should have an upper camel case name [INFO] [stdout] --> src/paper/invariant/database.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Value_range { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `ValueRange` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `u64_to_u256_array` [INFO] [stdout] --> src/core_module/op_codes/bitwise.rs:6:40 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::core_module::utils::bytes::{u64_to_u256_array, u64_x4_array_to_u8_x32_array}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `registry` should have an upper camel case name [INFO] [stdout] --> src/paper/invariant/database.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct registry { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Registry` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f64::consts::E` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::f64::consts::E; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SystemTime` and `UNIX_EPOCH` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::account_state_ex_context` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::core_module::context::account_state_ex_context; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/core_module/op_codes/environment.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | /// todo! add calldata [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 90 | let origin_data_exist = runner.calldata_info.clone(); [INFO] [stdout] | ----------------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/stack/dup.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/stack/pop.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/storage.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils::bytes` [INFO] [stdout] --> src/core_module/op_codes/system.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils::bytes; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/system.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Hash` [INFO] [stdout] --> src/core_module/runner.rs:9:28 [INFO] [stdout] | [INFO] [stdout] 9 | use ethers::abi::{Address, Hash}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f64::consts::E` [INFO] [stdout] --> src/core_module/runner.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::f64::consts::E; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Display` [INFO] [stdout] --> src/core_module/runner.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::fmt::Display; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::op_codes` [INFO] [stdout] --> src/core_module/utils/bytes.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::core_module::op_codes; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `primitive_types::U256` [INFO] [stdout] --> src/core_module/context/evm_context.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use primitive_types::U256; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `env` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{env, fmt, process}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> src/core_module/context/transaction_context.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ProviderExt` [INFO] [stdout] --> src/core_module/context/transaction_context.rs:8:52 [INFO] [stdout] | [INFO] [stdout] 8 | use ethers::providers::{Middleware, ProviderError, ProviderExt}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::evm_context::EvmContext` [INFO] [stdout] --> src/core_module/context/calldata_info.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::core_module::context::evm_context::EvmContext; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::core::k256::sha2::digest::typenum::op` [INFO] [stdout] --> src/example/call_tracer_test.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use ethers::core::k256::sha2::digest::typenum::op; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::types::GethDebugTracerConfig` [INFO] [stdout] --> src/example/call_tracer_test.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ethers::types::GethDebugTracerConfig; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashMap` [INFO] [stdout] --> src/example/call_tracer_test.rs:9:34 [INFO] [stdout] | [INFO] [stdout] 9 | use std::collections::{BTreeMap, HashMap}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Middleware` [INFO] [stdout] --> src/example/tx_with_state.rs:10:25 [INFO] [stdout] | [INFO] [stdout] 10 | use ethers::providers::{Middleware, ProviderError, ProviderExt}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Deserialize` [INFO] [stdout] --> src/example/tx_with_state.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | pub use serde::Deserialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> src/example/tx_with_state.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `pad_left` and `to_h160` [INFO] [stdout] --> src/paper/test_tx.rs:1:42 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::bytes::{_hex_string_to_bytes, pad_left, to_h160}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AccountStateEx` [INFO] [stdout] --> src/paper/test_tx.rs:3:28 [INFO] [stdout] | [INFO] [stdout] 3 | get_accounts_state_tx, AccountStateEx, ISDiff, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/paper/test_tx.rs:8:34 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::core_module::runner::{self, Runner}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Stack` [INFO] [stdout] --> src/paper/test_tx.rs:11:21 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::{Memory, Stack}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloy_primitives::utils::parse_ether` [INFO] [stdout] --> src/paper/test_tx.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use alloy_primitives::utils::parse_ether; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloy_rlp::Bytes` [INFO] [stdout] --> src/paper/test_tx.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use alloy_rlp::Bytes; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::types::Opcode::SHA3` [INFO] [stdout] --> src/paper/test_tx.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use ethers::types::Opcode::SHA3; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::de` [INFO] [stdout] --> src/paper/test_tx.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use serde::de; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/paper/test_tx.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BTreeMap` [INFO] [stdout] --> src/paper/test_tx.rs:25:24 [INFO] [stdout] | [INFO] [stdout] 25 | use std::collections::{BTreeMap, HashMap}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Debug` [INFO] [stdout] --> src/paper/test_tx.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::unix::process::parent_id` [INFO] [stdout] --> src/paper/test_tx.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | use std::os::unix::process::parent_id; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/paper/test_tx.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Mutex` [INFO] [stdout] --> src/paper/test_tx.rs:30:22 [INFO] [stdout] | [INFO] [stdout] 30 | use std::sync::{Arc, Mutex}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `clone` and `fmt` [INFO] [stdout] --> src/paper/test_tx.rs:31:11 [INFO] [stdout] | [INFO] [stdout] 31 | use std::{clone, env, fmt}; [INFO] [stdout] | ^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::format` [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fmt::format; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::bytes::pad_left` [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::bytes::pad_left; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::paper::strategy::simiarity::read_op_from_file` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::paper::strategy::simiarity::read_op_from_file; // Import the Write trait [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/paper/strategy/simiarity.rs:39:16 [INFO] [stdout] | [INFO] [stdout] 39 | if (similarity >= pass_similarity) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 39 - if (similarity >= pass_similarity) { [INFO] [stdout] 39 + if similarity >= pass_similarity { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/paper/strategy/simiarity.rs:50:16 [INFO] [stdout] | [INFO] [stdout] 50 | if (similarity >= pass_similarity) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 50 - if (similarity >= pass_similarity) { [INFO] [stdout] 50 + if similarity >= pass_similarity { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::env` [INFO] [stdout] --> src/paper/evm_interpreter/get_evm_interpreter.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::env; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dotenv::dotenv` [INFO] [stdout] --> src/paper/evm_interpreter/get_evm_interpreter.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use dotenv::dotenv; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ISDiff` and `get_accounts_state_tx` [INFO] [stdout] --> src/paper/evm_interpreter/get_evm_interpreter.rs:7:61 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::core_module::context::account_state_ex_context::{get_accounts_state_tx, get_tx_after_accounts_state, ISDiff}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `_hex_string_to_bytes` and `to_h256` [INFO] [stdout] --> src/paper/exec_eng.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::bytes::{_hex_string_to_bytes, to_h256}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ISDiff`, `get_accounts_state_tx`, and `get_tx_after_accounts_state` [INFO] [stdout] --> src/paper/exec_eng.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | get_accounts_state_tx, get_tx_after_accounts_state, ISDiff, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::evm_context::EvmContext` [INFO] [stdout] --> src/paper/exec_eng.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::core_module::context::evm_context::EvmContext; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::transaction_context::get_transaction_content` [INFO] [stdout] --> src/paper/exec_eng.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::core_module::context::transaction_context::get_transaction_content; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EvmState` and `Runner` [INFO] [stdout] --> src/paper/exec_eng.rs:11:13 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::{EvmState, Runner}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ProviderExt`, `Provider`, and `TxHash` [INFO] [stdout] --> src/paper/exec_eng.rs:12:23 [INFO] [stdout] | [INFO] [stdout] 12 | use ethers::prelude::{Provider, ProviderError, ProviderExt, TxHash}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Bytes` [INFO] [stdout] --> src/paper/invariant/database.rs:4:30 [INFO] [stdout] | [INFO] [stdout] 4 | use ethers::types::{Address, Bytes, U256}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Value_range` should have an upper camel case name [INFO] [stdout] --> src/paper/invariant/database.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Value_range { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `ValueRange` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `registry` should have an upper camel case name [INFO] [stdout] --> src/paper/invariant/database.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct registry { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper camel case: `Registry` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:111:9 [INFO] [stdout] | [INFO] [stdout] 111 | let mut turn_on_diff_post_accounts_state = get_turn_on_diff_post_accounts_state(provider, tx_hash).await; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:111:9 [INFO] [stdout] | [INFO] [stdout] 111 | let mut turn_on_diff_post_accounts_state = get_turn_on_diff_post_accounts_state(provider, tx_hash).await; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_oplist.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | let mut opcode_list: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:105:9 [INFO] [stdout] | [INFO] [stdout] 105 | let mut param_data: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:169:9 [INFO] [stdout] | [INFO] [stdout] 169 | let mut param_data = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_oplist.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | let mut opcode_list: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `attackhash_1` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | let attackhash_1 = "0xe28ca1f43036f4768776805fb50906f8172f75eba3bf1d9866bcd64361fda834"; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attackhash_1` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path_strategy2` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | let mut path_strategy2 = PathStrategy::ControlFlowMatch; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_path_strategy2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `opcode_list1` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | let mut opcode_list1: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_opcode_list1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `opcode_list2` is never read [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:63:13 [INFO] [stdout] | [INFO] [stdout] 63 | let mut opcode_list2: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `controlFlow_opcode1` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | let mut controlFlow_opcode1: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_controlFlow_opcode1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `controlFlow_opcode2` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | let mut controlFlow_opcode2: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_controlFlow_opcode2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | let mut path_strategy1 = PathStrategy::FullPathMatch; [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | let mut path_strategy2 = PathStrategy::ControlFlowMatch; [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | let mut opcode_list1: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | let mut controlFlow_opcode1: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:66:9 [INFO] [stdout] | [INFO] [stdout] 66 | let mut controlFlow_opcode2: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | let mut FullPathMatch_file_path = "src/paper/tx_oplist/HeavenGate/attack2_full.txt"; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `attackhash_1` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 98 | let attackhash_1 = "0xe28ca1f43036f4768776805fb50906f8172f75eba3bf1d9866bcd64361fda834"; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attackhash_1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path_strategy2` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | let mut path_strategy2 = PathStrategy::ControlFlowMatch; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_path_strategy2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `opcode_list1` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:104:13 [INFO] [stdout] | [INFO] [stdout] 104 | let mut opcode_list1: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_opcode_list1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `opcode_list2` is never read [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | let mut opcode_list2: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `controlFlow_opcode1` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:107:13 [INFO] [stdout] | [INFO] [stdout] 107 | let mut controlFlow_opcode1: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_controlFlow_opcode1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `controlFlow_opcode2` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | let mut controlFlow_opcode2: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_controlFlow_opcode2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | let mut path_strategy1 = PathStrategy::FullPathMatch; [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:102:9 [INFO] [stdout] | [INFO] [stdout] 102 | let mut path_strategy2 = PathStrategy::ControlFlowMatch; [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | let mut opcode_list1: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 107 | let mut controlFlow_opcode1: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 108 | let mut controlFlow_opcode2: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:113:9 [INFO] [stdout] | [INFO] [stdout] 113 | let mut FullPathMatch_file_path = "src/paper/tx_oplist/HeavenGate/attack2_full.txt"; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:105:9 [INFO] [stdout] | [INFO] [stdout] 105 | let mut param_data: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `similarity_rate` [INFO] [stdout] --> src/paper/strategy/simiarity.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | let similarity_rate = match _path_strategy { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_similarity_rate` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:169:9 [INFO] [stdout] | [INFO] [stdout] 169 | let mut param_data = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/exec_eng.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | let mut return_param_list: Vec> = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `attackhash_1` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | let attackhash_1 = "0xe28ca1f43036f4768776805fb50906f8172f75eba3bf1d9866bcd64361fda834"; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attackhash_1` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path_strategy2` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | let mut path_strategy2 = PathStrategy::ControlFlowMatch; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_path_strategy2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `opcode_list1` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | let mut opcode_list1: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_opcode_list1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `opcode_list2` is never read [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:63:13 [INFO] [stdout] | [INFO] [stdout] 63 | let mut opcode_list2: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `controlFlow_opcode1` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | let mut controlFlow_opcode1: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_controlFlow_opcode1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `controlFlow_opcode2` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | let mut controlFlow_opcode2: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_controlFlow_opcode2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | let mut path_strategy1 = PathStrategy::FullPathMatch; [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | let mut path_strategy2 = PathStrategy::ControlFlowMatch; [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | let mut opcode_list1: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | let mut controlFlow_opcode1: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:66:9 [INFO] [stdout] | [INFO] [stdout] 66 | let mut controlFlow_opcode2: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | let mut FullPathMatch_file_path = "src/paper/tx_oplist/HeavenGate/attack2_full.txt"; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `attackhash_1` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 98 | let attackhash_1 = "0xe28ca1f43036f4768776805fb50906f8172f75eba3bf1d9866bcd64361fda834"; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attackhash_1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path_strategy2` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | let mut path_strategy2 = PathStrategy::ControlFlowMatch; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_path_strategy2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `opcode_list1` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:104:13 [INFO] [stdout] | [INFO] [stdout] 104 | let mut opcode_list1: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_opcode_list1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `opcode_list2` is never read [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | let mut opcode_list2: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `controlFlow_opcode1` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:107:13 [INFO] [stdout] | [INFO] [stdout] 107 | let mut controlFlow_opcode1: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_controlFlow_opcode1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `controlFlow_opcode2` [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | let mut controlFlow_opcode2: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_controlFlow_opcode2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | let mut path_strategy1 = PathStrategy::FullPathMatch; [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:102:9 [INFO] [stdout] | [INFO] [stdout] 102 | let mut path_strategy2 = PathStrategy::ControlFlowMatch; [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | let mut opcode_list1: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 107 | let mut controlFlow_opcode1: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 108 | let mut controlFlow_opcode2: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:113:9 [INFO] [stdout] | [INFO] [stdout] 113 | let mut FullPathMatch_file_path = "src/paper/tx_oplist/HeavenGate/attack2_full.txt"; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `similarity_rate` [INFO] [stdout] --> src/paper/strategy/simiarity.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | let similarity_rate = match _path_strategy { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_similarity_rate` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/exec_eng.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | let mut return_param_list: Vec> = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_calldata` is never read [INFO] [stdout] --> src/core_module/op_codes/environment.rs:93:17 [INFO] [stdout] | [INFO] [stdout] 93 | let mut new_calldata: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `hex` is assigned to, but never used [INFO] [stdout] --> src/core_module/op_codes/flow.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | let hex; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_hex` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `hex` is never read [INFO] [stdout] --> src/core_module/op_codes/flow.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | hex = utils::debug::vec_to_hex_string( [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `hex` is never read [INFO] [stdout] --> src/core_module/op_codes/flow.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | hex = utils::debug::to_hex_string([0u8; 32]); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/runner.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | let mut instance = Self { [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/runner.rs:138:13 [INFO] [stdout] | [INFO] [stdout] 138 | let mut instance = Self { [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `op_count` is assigned to, but never used [INFO] [stdout] --> src/core_module/runner.rs:323:21 [INFO] [stdout] | [INFO] [stdout] 323 | let mut op_count = self.op_count; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_op_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `op_count` is assigned to, but never used [INFO] [stdout] --> src/core_module/runner.rs:464:21 [INFO] [stdout] | [INFO] [stdout] 464 | let mut op_count = self.op_count; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_op_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/runner.rs:714:13 [INFO] [stdout] | [INFO] [stdout] 714 | let mut code = self.state.get_code_at(to); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Middleware` [INFO] [stdout] --> src/paper/test_tx.rs:16:25 [INFO] [stdout] | [INFO] [stdout] 16 | use ethers::providers::{Middleware, ProviderError, ProviderExt}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:149:18 [INFO] [stdout] | [INFO] [stdout] 149 | let mut balance_u64 = _account_state.balance.clone().unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:188:13 [INFO] [stdout] | [INFO] [stdout] 188 | let mut account_state = AccountStateEx { [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/core_module/op_codes/bitwise.rs:335:13 [INFO] [stdout] | [INFO] [stdout] 335 | let result = runner.stack.pop().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_calldata` is never read [INFO] [stdout] --> src/core_module/op_codes/environment.rs:93:17 [INFO] [stdout] | [INFO] [stdout] 93 | let mut new_calldata: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:202:9 [INFO] [stdout] | [INFO] [stdout] 202 | let mut PR: Vec = param_Range.getRange(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:128:13 [INFO] [stdout] | [INFO] [stdout] 128 | _ => { [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `hex` is assigned to, but never used [INFO] [stdout] --> src/core_module/op_codes/flow.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | let hex; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_hex` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `hex` is never read [INFO] [stdout] --> src/core_module/op_codes/flow.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | hex = utils::debug::vec_to_hex_string( [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `hex` is never read [INFO] [stdout] --> src/core_module/op_codes/flow.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | hex = utils::debug::to_hex_string([0u8; 32]); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `debug_stack`, `debug_memory`, and `debug_storage` are never used [INFO] [stdout] --> src/core_module/runner.rs:782:8 [INFO] [stdout] | [INFO] [stdout] 63 | impl Runner { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 782 | fn debug_stack(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 808 | fn debug_memory(&self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 848 | fn debug_storage(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_turn_on_diff_pre_accounts_state` is never used [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:90:14 [INFO] [stdout] | [INFO] [stdout] 90 | pub async fn get_turn_on_diff_pre_accounts_state( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OpCodeContext` is never constructed [INFO] [stdout] --> src/core_module/context/opcode_context.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct OpCodeContext<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OpCodeContext` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tx_hash`, `nonce`, `gas`, `prevrandao`, and `chain_id` are never read [INFO] [stdout] --> src/core_module/context/transaction_context.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct TransactionEnv { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 12 | /// The transaction's hash [INFO] [stdout] 13 | pub tx_hash: H256, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 16 | pub nonce: [u8; 32], [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub gas: [u8; 32], [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub prevrandao: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 47 | [INFO] [stdout] 48 | pub chain_id: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TransactionEnv` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OpCodeContext` is never constructed [INFO] [stdout] --> src/example/call_tracer_test.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct OpCodeContext { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OpCodeContext` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/example/call_tracer_test.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 78 | pub struct StructLog { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 79 | pub pc: u32, [INFO] [stdout] | ^^ [INFO] [stdout] 80 | pub op: String, [INFO] [stdout] | ^^ [INFO] [stdout] 81 | pub gas: u32, [INFO] [stdout] | ^^^ [INFO] [stdout] 82 | pub gasCost: u32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 83 | pub depth: u32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 84 | pub stack: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 85 | pub memory: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StructLog` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `structLogs` is never read [INFO] [stdout] --> src/example/call_tracer_test.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 89 | pub struct LogData { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 90 | pub structLogs: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LogData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_op_tracer` is never used [INFO] [stdout] --> src/example/call_tracer_test.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | pub fn read_op_tracer() -> LogData { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_reuiad_op_tracer` is never used [INFO] [stdout] --> src/example/call_tracer_test.rs:106:4 [INFO] [stdout] | [INFO] [stdout] 106 | fn test_reuiad_op_tracer() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_get_opcode_list` is never used [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_oplist.rs:53:10 [INFO] [stdout] | [INFO] [stdout] 53 | async fn test_get_opcode_list() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recursive_read_input` is never used [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | fn recursive_read_input(data: &Value) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recursive_read_input_targetAddress` is never used [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:32:4 [INFO] [stdout] | [INFO] [stdout] 32 | fn recursive_read_input_targetAddress(data: &Value, to: &str) -> Result, ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `func_name_to_selector` is never used [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:61:4 [INFO] [stdout] | [INFO] [stdout] 61 | fn func_name_to_selector(func_name_str: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_origin_calldata` is never used [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:79:10 [INFO] [stdout] | [INFO] [stdout] 79 | async fn get_origin_calldata( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_origin_calldata_to` is never used [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:143:10 [INFO] [stdout] | [INFO] [stdout] 143 | async fn get_origin_calldata_to( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `Fill_param` is never used [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:199:4 [INFO] [stdout] | [INFO] [stdout] 199 | fn Fill_param(paramType: &str, param_Range: Value_range) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `exec_internal` is never used [INFO] [stdout] --> src/paper/exec_eng.rs:32:10 [INFO] [stdout] | [INFO] [stdout] 32 | async fn exec_internal( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `addresses`, `slots`, and `slot_ranges` are never read [INFO] [stdout] --> src/paper/invariant/database.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct registry { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 34 | // 所有被保护的地址 [INFO] [stdout] 35 | addresses: Vec
, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 36 | // 每个保护地址的slot [INFO] [stdout] 37 | slots: HashMap, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 38 | // 每个保护地址是slot的范围 [INFO] [stdout] 39 | slot_ranges: HashMap>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `expression`, `slots`, and `description` are never read [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct Invariant { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | expression: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 18 | // 所有slot [INFO] [stdout] 19 | slots: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 20 | // 不变量描述 [INFO] [stdout] 21 | description: String, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `description` is never read [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct RangeExpression { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 30 | description: String, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `expressions` and `sql_connect` are never read [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct ProjectInfo { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 38 | pub expressions: HashMap>>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 39 | // 需要连接数据库 [INFO] [stdout] 40 | pub sql_connect: mysql::Conn, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `init` is never used [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:47:14 [INFO] [stdout] | [INFO] [stdout] 45 | impl ProjectInfo { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 46 | // 初始化函数 [INFO] [stdout] 47 | async fn init(sql_url: &str, rpc_url: &str) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/core_module/op_codes/environment.rs:322:13 [INFO] [stdout] | [INFO] [stdout] 322 | runner.increment_pc(1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 322 | let _ = runner.increment_pc(1); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:788:39 [INFO] [stdout] | [INFO] [stdout] 788 | println!("\n\n{}", border_line.clone().green()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:796:35 [INFO] [stdout] | [INFO] [stdout] 796 | println!("{}", footer_line.clone().green()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:814:37 [INFO] [stdout] | [INFO] [stdout] 814 | println!("\n{}", border_line.clone().blue()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:821:35 [INFO] [stdout] | [INFO] [stdout] 821 | println!("{}", footer_line.clone().blue()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/state.rs:428:37 [INFO] [stdout] | [INFO] [stdout] 428 | println!("\n{}", border_line.clone().red()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/state.rs:435:35 [INFO] [stdout] | [INFO] [stdout] 435 | println!("{}", footer_line.clone().red()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `gasCost` should have a snake case name [INFO] [stdout] --> src/example/call_tracer_test.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | pub gasCost: u32, [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `gas_cost` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `structLogs` should have a snake case name [INFO] [stdout] --> src/example/call_tracer_test.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | pub structLogs: Vec, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `struct_logs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recursive_read_input_targetAddress` should have a snake case name [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:32:4 [INFO] [stdout] | [INFO] [stdout] 32 | fn recursive_read_input_targetAddress(data: &Value, to: &str) -> Result, ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `recursive_read_input_target_address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `Fill_param` should have a snake case name [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:199:4 [INFO] [stdout] | [INFO] [stdout] 199 | fn Fill_param(paramType: &str, param_Range: Value_range) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `fill_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `paramType` should have a snake case name [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:199:15 [INFO] [stdout] | [INFO] [stdout] 199 | fn Fill_param(paramType: &str, param_Range: Value_range) -> Vec { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `param_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `param_Range` should have a snake case name [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:199:32 [INFO] [stdout] | [INFO] [stdout] 199 | fn Fill_param(paramType: &str, param_Range: Value_range) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `param_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `PR` should have a snake case name [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:202:13 [INFO] [stdout] | [INFO] [stdout] 202 | let mut PR: Vec = param_Range.getRange(); [INFO] [stdout] | ^^ help: convert the identifier to snake case: `pr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `controlFlow_opcode1` should have a snake case name [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | let mut controlFlow_opcode1: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `control_flow_opcode1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `controlFlow_opcode2` should have a snake case name [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | let mut controlFlow_opcode2: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `control_flow_opcode2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `FullPathMatch_file_path` should have a snake case name [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | let mut FullPathMatch_file_path = "src/paper/tx_oplist/HeavenGate/attack2_full.txt"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `full_path_match_file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `controlFlow_opcode1` should have a snake case name [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:107:13 [INFO] [stdout] | [INFO] [stdout] 107 | let mut controlFlow_opcode1: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `control_flow_opcode1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `controlFlow_opcode2` should have a snake case name [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | let mut controlFlow_opcode2: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `control_flow_opcode2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `FullPathMatch_file_path` should have a snake case name [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | let mut FullPathMatch_file_path = "src/paper/tx_oplist/HeavenGate/attack2_full.txt"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `full_path_match_file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `getRange` should have a snake case name [INFO] [stdout] --> src/paper/invariant/database.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn getRange(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `get_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Range` should have a snake case name [INFO] [stdout] --> src/paper/invariant/database.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 21 | let mut Range = Vec::new(); [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `updateRange` should have a snake case name [INFO] [stdout] --> src/paper/invariant/database.rs:92:12 [INFO] [stdout] | [INFO] [stdout] 92 | pub fn updateRange( [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `update_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `removeSlotRange` should have a snake case name [INFO] [stdout] --> src/paper/invariant/database.rs:116:12 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn removeSlotRange(&mut self, _address: &str, _slot: U256) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `remove_slot_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `getRange` should have a snake case name [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:107:12 [INFO] [stdout] | [INFO] [stdout] 107 | pub fn getRange(&self) -> Value_range { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `get_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `test_getRange` should have a snake case name [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:138:12 [INFO] [stdout] | [INFO] [stdout] 138 | pub fn test_getRange(&self) -> Value_range { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `test_get_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `caller` [INFO] [stdout] --> src/core_module/op_codes/system.rs:300:13 [INFO] [stdout] | [INFO] [stdout] 300 | let caller = runner.caller; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_caller` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hh` [INFO] [stdout] --> src/core_module/op_codes/system.rs:439:17 [INFO] [stdout] | [INFO] [stdout] 439 | let hh = &format!("{:02x}", byte); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_hh` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tt` [INFO] [stdout] --> src/core_module/op_codes/system.rs:443:13 [INFO] [stdout] | [INFO] [stdout] 443 | let tt = &string_address; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_tt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `addr` [INFO] [stdout] --> src/core_module/op_codes/system.rs:451:13 [INFO] [stdout] | [INFO] [stdout] 451 | let addr = runner.address; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/runner.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | let mut instance = Self { [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/runner.rs:138:13 [INFO] [stdout] | [INFO] [stdout] 138 | let mut instance = Self { [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `op_count` is assigned to, but never used [INFO] [stdout] --> src/core_module/runner.rs:323:21 [INFO] [stdout] | [INFO] [stdout] 323 | let mut op_count = self.op_count; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_op_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `op_count` is assigned to, but never used [INFO] [stdout] --> src/core_module/runner.rs:464:21 [INFO] [stdout] | [INFO] [stdout] 464 | let mut op_count = self.op_count; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_op_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/runner.rs:714:13 [INFO] [stdout] | [INFO] [stdout] 714 | let mut code = self.state.get_code_at(to); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 183 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:149:18 [INFO] [stdout] | [INFO] [stdout] 149 | let mut balance_u64 = _account_state.balance.clone().unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:188:13 [INFO] [stdout] | [INFO] [stdout] 188 | let mut account_state = AccountStateEx { [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `account_state` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:262:9 [INFO] [stdout] | [INFO] [stdout] 262 | let account_state = get_accounts_state_tx(Arc::from(provider), to_h256(attack_hash), ISDiff::default()).await; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_account_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `account_state` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:274:9 [INFO] [stdout] | [INFO] [stdout] 274 | let account_state = get_accounts_state_tx(Arc::from(provider), to_h256(attack_hash), ISDiff::new(true, Some(true))).await; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_account_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `account_state` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:286:9 [INFO] [stdout] | [INFO] [stdout] 286 | let account_state = get_accounts_state_tx(Arc::from(provider), to_h256(attack_hash), ISDiff::new(true, Some(false))).await; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_account_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `account_state` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:299:9 [INFO] [stdout] | [INFO] [stdout] 299 | let account_state = get_tx_after_accounts_state(Arc::from(provider), to_h256(attack_hash)).await; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_account_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `euler_attack` [INFO] [stdout] --> src/example/call_tracer_test.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | let euler_attack = "0xc310a0affe2169d1f6feec1c63dbc7f7c62a887fa48795d327d4d2da2d6b111d"; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_euler_attack` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `usdc_transfer_tx` [INFO] [stdout] --> src/example/call_tracer_test.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | let usdc_transfer_tx = "0x890249a15f17950a60711c0396ccd147068365ea852f0837c08f55f9dd7c320e"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_usdc_transfer_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `OlympusDAO_tx` [INFO] [stdout] --> src/example/call_tracer_test.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let OlympusDAO_tx = "0x3ed75df83d907412af874b7998d911fdf990704da87c2b1a8cf95ca5d21504cf"; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_OlympusDAO_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Templedao_tx` [INFO] [stdout] --> src/example/call_tracer_test.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | let Templedao_tx = "0x8c3f442fc6d640a6ff3ea0b12be64f1d4609ea94edd2966f42c01cd9bdcf04b5"; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Templedao_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tx_hash` [INFO] [stdout] --> src/example/call_tracer_test.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | let tx_hash = "0xc310a0affe2169d1f6feec1c63dbc7f7c62a887fa48795d327d4d2da2d6b111d"; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `addr2` [INFO] [stdout] --> src/paper/test_tx.rs:151:9 [INFO] [stdout] | [INFO] [stdout] 151 | let addr2 = "e2899bddFD890e320e643044c6b95B9B0b84157A"; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_addr2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `codehash1` [INFO] [stdout] --> src/paper/test_tx.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 155 | let codehash1 = keccak256(bytecode1.clone()); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_codehash1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/test_tx.rs:171:9 [INFO] [stdout] | [INFO] [stdout] 171 | let mut account_state1 = AccountState::default(); [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/test_tx.rs:236:9 [INFO] [stdout] | [INFO] [stdout] 236 | let mut bytecode1 = "60606040523415600e57600080fd5b603580601b6000396000f3006060604052600080fd00a165627a7a72305820395f38545a3c60d8fb36... [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/test_tx.rs:237:9 [INFO] [stdout] | [INFO] [stdout] 237 | let mut hash = keccak256(bytecode1); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:202:9 [INFO] [stdout] | [INFO] [stdout] 202 | let mut PR: Vec = param_Range.getRange(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:232:9 [INFO] [stdout] | [INFO] [stdout] 232 | let mut exp1 = RangeExpression::new(test_expression, "is alright".to_string()); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:233:9 [INFO] [stdout] | [INFO] [stdout] 233 | let mut result = exp1.test_getRange(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:261:9 [INFO] [stdout] | [INFO] [stdout] 261 | let mut exp1 = RangeExpression::new(test_expression, "is alright".to_string()); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:263:9 [INFO] [stdout] | [INFO] [stdout] 263 | let mut result = exp1.test_getRange(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:128:13 [INFO] [stdout] | [INFO] [stdout] 128 | _ => { [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:211:9 [INFO] [stdout] | [INFO] [stdout] 211 | let mut exp1 = RangeExpression::new(test_expression, "is alright".to_string()); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:212:9 [INFO] [stdout] | [INFO] [stdout] 212 | let mut result = exp1.test_getRange(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fmt` [INFO] [stdout] --> src/core_module/memory.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{fmt, ptr}; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/arithmetic/unsigned.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/bitwise.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `u64_to_u256_array` [INFO] [stdout] --> src/core_module/op_codes/bitwise.rs:6:40 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::core_module::utils::bytes::{u64_to_u256_array, u64_x4_array_to_u8_x32_array}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f64::consts::E` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::f64::consts::E; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SystemTime` and `UNIX_EPOCH` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::account_state_ex_context` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::core_module::context::account_state_ex_context; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/core_module/op_codes/environment.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | /// todo! add calldata [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 90 | let origin_data_exist = runner.calldata_info.clone(); [INFO] [stdout] | ----------------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/stack/dup.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/stack/pop.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/storage.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils::bytes` [INFO] [stdout] --> src/core_module/op_codes/system.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils::bytes; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/system.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Hash` [INFO] [stdout] --> src/core_module/runner.rs:9:28 [INFO] [stdout] | [INFO] [stdout] 9 | use ethers::abi::{Address, Hash}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f64::consts::E` [INFO] [stdout] --> src/core_module/runner.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::f64::consts::E; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Display` [INFO] [stdout] --> src/core_module/runner.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::fmt::Display; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::op_codes` [INFO] [stdout] --> src/core_module/utils/bytes.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::core_module::op_codes; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `primitive_types::U256` [INFO] [stdout] --> src/core_module/context/evm_context.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use primitive_types::U256; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `env` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{env, fmt, process}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ProviderExt` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:5:169 [INFO] [stdout] | [INFO] [stdout] 5 | ...acingOptions, Http, PreStateConfig, PreStateFrame, Provider, ProviderExt}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils::bytes::to_h256` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::core_module::utils::bytes::to_h256; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> src/core_module/context/transaction_context.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ProviderExt` [INFO] [stdout] --> src/core_module/context/transaction_context.rs:8:52 [INFO] [stdout] | [INFO] [stdout] 8 | use ethers::providers::{Middleware, ProviderError, ProviderExt}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::evm_context::EvmContext` [INFO] [stdout] --> src/core_module/context/calldata_info.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::core_module::context::evm_context::EvmContext; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `env` and `fs` [INFO] [stdout] --> src/main.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{env, fs}; [INFO] [stdout] | ^^^ ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `colored::*` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use colored::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `debug_stack`, `debug_memory`, and `debug_storage` are never used [INFO] [stdout] --> src/core_module/runner.rs:782:8 [INFO] [stdout] | [INFO] [stdout] 63 | impl Runner { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 782 | fn debug_stack(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 808 | fn debug_memory(&self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 848 | fn debug_storage(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_turn_on_diff_pre_accounts_state` is never used [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:90:14 [INFO] [stdout] | [INFO] [stdout] 90 | pub async fn get_turn_on_diff_pre_accounts_state( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OpCodeContext` is never constructed [INFO] [stdout] --> src/core_module/context/opcode_context.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct OpCodeContext<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OpCodeContext` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tx_hash`, `nonce`, `gas`, `prevrandao`, and `chain_id` are never read [INFO] [stdout] --> src/core_module/context/transaction_context.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct TransactionEnv { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 12 | /// The transaction's hash [INFO] [stdout] 13 | pub tx_hash: H256, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 16 | pub nonce: [u8; 32], [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub gas: [u8; 32], [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub prevrandao: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 47 | [INFO] [stdout] 48 | pub chain_id: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TransactionEnv` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `pc`, `op_code`, `stack`, `memory`, and `storage` are never read [INFO] [stdout] --> src/example/call_tracer_test.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct OpCodeContext { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 19 | pub pc: u64, [INFO] [stdout] | ^^ [INFO] [stdout] 20 | [INFO] [stdout] 21 | pub op_code: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 22 | [INFO] [stdout] 23 | pub stack: Option>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 24 | [INFO] [stdout] 25 | pub memory: Option>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 26 | [INFO] [stdout] 27 | pub storage: Option>, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OpCodeContext` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/example/call_tracer_test.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 78 | pub struct StructLog { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 79 | pub pc: u32, [INFO] [stdout] | ^^ [INFO] [stdout] 80 | pub op: String, [INFO] [stdout] | ^^ [INFO] [stdout] 81 | pub gas: u32, [INFO] [stdout] | ^^^ [INFO] [stdout] 82 | pub gasCost: u32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 83 | pub depth: u32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 84 | pub stack: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 85 | pub memory: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StructLog` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `structLogs` is never read [INFO] [stdout] --> src/example/call_tracer_test.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 89 | pub struct LogData { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 90 | pub structLogs: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LogData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_op_tracer` is never used [INFO] [stdout] --> src/example/call_tracer_test.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | pub fn read_op_tracer() -> LogData { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_reuiad_op_tracer` is never used [INFO] [stdout] --> src/example/call_tracer_test.rs:106:4 [INFO] [stdout] | [INFO] [stdout] 106 | fn test_reuiad_op_tracer() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_get_opcode_list` is never used [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_oplist.rs:53:10 [INFO] [stdout] | [INFO] [stdout] 53 | async fn test_get_opcode_list() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `exec_internal` is never used [INFO] [stdout] --> src/paper/exec_eng.rs:32:10 [INFO] [stdout] | [INFO] [stdout] 32 | async fn exec_internal( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `addresses`, `slots`, and `slot_ranges` are never read [INFO] [stdout] --> src/paper/invariant/database.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct registry { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 34 | // 所有被保护的地址 [INFO] [stdout] 35 | addresses: Vec
, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 36 | // 每个保护地址的slot [INFO] [stdout] 37 | slots: HashMap, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 38 | // 每个保护地址是slot的范围 [INFO] [stdout] 39 | slot_ranges: HashMap>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `expression`, `slots`, and `description` are never read [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct Invariant { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | expression: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 18 | // 所有slot [INFO] [stdout] 19 | slots: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 20 | // 不变量描述 [INFO] [stdout] 21 | description: String, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `description` is never read [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct RangeExpression { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 30 | description: String, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `expressions` and `sql_connect` are never read [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct ProjectInfo { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 38 | pub expressions: HashMap>>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 39 | // 需要连接数据库 [INFO] [stdout] 40 | pub sql_connect: mysql::Conn, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `init` is never used [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:47:14 [INFO] [stdout] | [INFO] [stdout] 45 | impl ProjectInfo { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 46 | // 初始化函数 [INFO] [stdout] 47 | async fn init(sql_url: &str, rpc_url: &str) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fmt` [INFO] [stdout] --> src/core_module/memory.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{fmt, ptr}; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/arithmetic/unsigned.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/bitwise.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `u64_to_u256_array` [INFO] [stdout] --> src/core_module/op_codes/bitwise.rs:6:40 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::core_module::utils::bytes::{u64_to_u256_array, u64_x4_array_to_u8_x32_array}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f64::consts::E` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::f64::consts::E; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SystemTime` and `UNIX_EPOCH` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::account_state_ex_context` [INFO] [stdout] --> src/core_module/op_codes/environment.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::core_module::context::account_state_ex_context; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/core_module/op_codes/environment.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | /// todo! add calldata [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 90 | let origin_data_exist = runner.calldata_info.clone(); [INFO] [stdout] | ----------------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/stack/dup.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/stack/pop.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/storage.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils::bytes` [INFO] [stdout] --> src/core_module/op_codes/system.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::core_module::utils::bytes; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::utils` [INFO] [stdout] --> src/core_module/op_codes/system.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::core_module::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Hash` [INFO] [stdout] --> src/core_module/runner.rs:9:28 [INFO] [stdout] | [INFO] [stdout] 9 | use ethers::abi::{Address, Hash}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f64::consts::E` [INFO] [stdout] --> src/core_module/runner.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::f64::consts::E; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Display` [INFO] [stdout] --> src/core_module/runner.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::fmt::Display; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::op_codes` [INFO] [stdout] --> src/core_module/utils/bytes.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::core_module::op_codes; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `primitive_types::U256` [INFO] [stdout] --> src/core_module/context/evm_context.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use primitive_types::U256; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `env` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{env, fmt, process}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> src/core_module/context/transaction_context.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ProviderExt` [INFO] [stdout] --> src/core_module/context/transaction_context.rs:8:52 [INFO] [stdout] | [INFO] [stdout] 8 | use ethers::providers::{Middleware, ProviderError, ProviderExt}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core_module::context::evm_context::EvmContext` [INFO] [stdout] --> src/core_module/context/calldata_info.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::core_module::context::evm_context::EvmContext; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `env` and `fs` [INFO] [stdout] --> src/main.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{env, fs}; [INFO] [stdout] | ^^^ ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `colored::*` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use colored::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/core_module/op_codes/environment.rs:322:13 [INFO] [stdout] | [INFO] [stdout] 322 | runner.increment_pc(1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 322 | let _ = runner.increment_pc(1); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:788:39 [INFO] [stdout] | [INFO] [stdout] 788 | println!("\n\n{}", border_line.clone().green()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:796:35 [INFO] [stdout] | [INFO] [stdout] 796 | println!("{}", footer_line.clone().green()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:814:37 [INFO] [stdout] | [INFO] [stdout] 814 | println!("\n{}", border_line.clone().blue()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:821:35 [INFO] [stdout] | [INFO] [stdout] 821 | println!("{}", footer_line.clone().blue()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/state.rs:428:37 [INFO] [stdout] | [INFO] [stdout] 428 | println!("\n{}", border_line.clone().red()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/state.rs:435:35 [INFO] [stdout] | [INFO] [stdout] 435 | println!("{}", footer_line.clone().red()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test__hex_string_to_bytes` should have a snake case name [INFO] [stdout] --> src/core_module/utils/bytes.rs:114:8 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn test__hex_string_to_bytes() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `test_hex_string_to_bytes` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `OlympusDAO_tx` should have a snake case name [INFO] [stdout] --> src/example/call_tracer_test.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let OlympusDAO_tx = "0x3ed75df83d907412af874b7998d911fdf990704da87c2b1a8cf95ca5d21504cf"; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `olympus_dao_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Templedao_tx` should have a snake case name [INFO] [stdout] --> src/example/call_tracer_test.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | let Templedao_tx = "0x8c3f442fc6d640a6ff3ea0b12be64f1d4609ea94edd2966f42c01cd9bdcf04b5"; [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `templedao_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `gasCost` should have a snake case name [INFO] [stdout] --> src/example/call_tracer_test.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | pub gasCost: u32, [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `gas_cost` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `structLogs` should have a snake case name [INFO] [stdout] --> src/example/call_tracer_test.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | pub structLogs: Vec, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `struct_logs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `HeavenGate` should have a snake case name [INFO] [stdout] --> src/example/tx_with_state.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let HeavenGate = "0xe28ca1f43036f4768776805fb50906f8172f75eba3bf1d9866bcd64361fda834"; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `heaven_gate` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_call_betweenDiffContract` should have a snake case name [INFO] [stdout] --> src/paper/test_tx.rs:149:4 [INFO] [stdout] | [INFO] [stdout] 149 | fn test_call_betweenDiffContract() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `test_call_between_diff_contract` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/paper/test_tx.rs:231:5 [INFO] [stdout] | [INFO] [stdout] 231 | interpreter.call(address2, [0; 32], inputdata, 0, false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 231 | let _ = interpreter.call(address2, [0; 32], inputdata, 0, false); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recursive_read_input_targetAddress` should have a snake case name [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:32:4 [INFO] [stdout] | [INFO] [stdout] 32 | fn recursive_read_input_targetAddress(data: &Value, to: &str) -> Result, ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `recursive_read_input_target_address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `Fill_param` should have a snake case name [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:199:4 [INFO] [stdout] | [INFO] [stdout] 199 | fn Fill_param(paramType: &str, param_Range: Value_range) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `fill_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `paramType` should have a snake case name [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:199:15 [INFO] [stdout] | [INFO] [stdout] 199 | fn Fill_param(paramType: &str, param_Range: Value_range) -> Vec { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `param_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `param_Range` should have a snake case name [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:199:32 [INFO] [stdout] | [INFO] [stdout] 199 | fn Fill_param(paramType: &str, param_Range: Value_range) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `param_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `PR` should have a snake case name [INFO] [stdout] --> src/paper/tx_origin_data/get_origin_calldata.rs:202:13 [INFO] [stdout] | [INFO] [stdout] 202 | let mut PR: Vec = param_Range.getRange(); [INFO] [stdout] | ^^ help: convert the identifier to snake case: `pr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `controlFlow_opcode1` should have a snake case name [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | let mut controlFlow_opcode1: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `control_flow_opcode1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `controlFlow_opcode2` should have a snake case name [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | let mut controlFlow_opcode2: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `control_flow_opcode2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `FullPathMatch_file_path` should have a snake case name [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | let mut FullPathMatch_file_path = "src/paper/tx_oplist/HeavenGate/attack2_full.txt"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `full_path_match_file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `controlFlow_opcode1` should have a snake case name [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:107:13 [INFO] [stdout] | [INFO] [stdout] 107 | let mut controlFlow_opcode1: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `control_flow_opcode1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `controlFlow_opcode2` should have a snake case name [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | let mut controlFlow_opcode2: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `control_flow_opcode2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `FullPathMatch_file_path` should have a snake case name [INFO] [stdout] --> src/paper/strategy/path_strategy.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | let mut FullPathMatch_file_path = "src/paper/tx_oplist/HeavenGate/attack2_full.txt"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `full_path_match_file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `getRange` should have a snake case name [INFO] [stdout] --> src/paper/invariant/database.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn getRange(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `get_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Range` should have a snake case name [INFO] [stdout] --> src/paper/invariant/database.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 21 | let mut Range = Vec::new(); [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `updateRange` should have a snake case name [INFO] [stdout] --> src/paper/invariant/database.rs:92:12 [INFO] [stdout] | [INFO] [stdout] 92 | pub fn updateRange( [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `update_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `removeSlotRange` should have a snake case name [INFO] [stdout] --> src/paper/invariant/database.rs:116:12 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn removeSlotRange(&mut self, _address: &str, _slot: U256) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `remove_slot_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `getRange` should have a snake case name [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:107:12 [INFO] [stdout] | [INFO] [stdout] 107 | pub fn getRange(&self) -> Value_range { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `get_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `test_getRange` should have a snake case name [INFO] [stdout] --> src/paper/invariant/listening_tx.rs:138:12 [INFO] [stdout] | [INFO] [stdout] 138 | pub fn test_getRange(&self) -> Value_range { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `test_get_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 178 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:111:9 [INFO] [stdout] | [INFO] [stdout] 111 | let mut turn_on_diff_post_accounts_state = get_turn_on_diff_post_accounts_state(provider, tx_hash).await; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:111:9 [INFO] [stdout] | [INFO] [stdout] 111 | let mut turn_on_diff_post_accounts_state = get_turn_on_diff_post_accounts_state(provider, tx_hash).await; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_calldata` is never read [INFO] [stdout] --> src/core_module/op_codes/environment.rs:93:17 [INFO] [stdout] | [INFO] [stdout] 93 | let mut new_calldata: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `hex` is assigned to, but never used [INFO] [stdout] --> src/core_module/op_codes/flow.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | let hex; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_hex` instead [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `hex` is never read [INFO] [stdout] --> src/core_module/op_codes/flow.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | hex = utils::debug::vec_to_hex_string( [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `hex` is never read [INFO] [stdout] --> src/core_module/op_codes/flow.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | hex = utils::debug::to_hex_string([0u8; 32]); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/runner.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | let mut instance = Self { [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/runner.rs:138:13 [INFO] [stdout] | [INFO] [stdout] 138 | let mut instance = Self { [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `op_count` is assigned to, but never used [INFO] [stdout] --> src/core_module/runner.rs:323:21 [INFO] [stdout] | [INFO] [stdout] 323 | let mut op_count = self.op_count; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_op_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `op_count` is assigned to, but never used [INFO] [stdout] --> src/core_module/runner.rs:464:21 [INFO] [stdout] | [INFO] [stdout] 464 | let mut op_count = self.op_count; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_op_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/runner.rs:714:13 [INFO] [stdout] | [INFO] [stdout] 714 | let mut code = self.state.get_code_at(to); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:149:18 [INFO] [stdout] | [INFO] [stdout] 149 | let mut balance_u64 = _account_state.balance.clone().unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:188:13 [INFO] [stdout] | [INFO] [stdout] 188 | let mut account_state = AccountStateEx { [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | let mut bytecode: String = String::from("0x6080604052"); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `constraint_path` is never read [INFO] [stdout] --> src/core_module/runner.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Runner { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 59 | pub constraint_path: Option>, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `debug_stack`, `debug_memory`, and `debug_storage` are never used [INFO] [stdout] --> src/core_module/runner.rs:782:8 [INFO] [stdout] | [INFO] [stdout] 63 | impl Runner { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 782 | fn debug_stack(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 808 | fn debug_memory(&self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 848 | fn debug_storage(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pad_left_one` is never used [INFO] [stdout] --> src/core_module/utils/bytes.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn pad_left_one(bytes: &[u8]) -> [u8; 32] { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `strip_zero_padding` is never used [INFO] [stdout] --> src/core_module/utils/bytes.rs:72:8 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn strip_zero_padding(arr: &[u8; 32]) -> &[u8] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_h160` is never used [INFO] [stdout] --> src/core_module/utils/bytes.rs:148:8 [INFO] [stdout] | [INFO] [stdout] 148 | pub fn to_h160(str_address: &'static str) -> H160 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_h256` is never used [INFO] [stdout] --> src/core_module/utils/bytes.rs:152:8 [INFO] [stdout] | [INFO] [stdout] 152 | pub fn to_h256(str_address: &'static str) -> H256 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `CodeNotFound` is never constructed [INFO] [stdout] --> src/core_module/utils/errors.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum ExecutionError { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 10 | CodeNotFound, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExecutionError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/core_module/utils/errors.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 95 | pub enum DatabaseError { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] 96 | ConnectionError, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 97 | QueryError, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 98 | InsertError, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 99 | UpdateError, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 100 | DeleteError, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 101 | SelectError, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 102 | TransactionError, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 103 | CommitError, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 104 | RollbackError, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 105 | ErrorSlot(&'static str), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DatabaseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `blockhash`, `difficulty`, and `prevrandao` are never read [INFO] [stdout] --> src/core_module/context/evm_context.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct EvmContext { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 6 | pub blockhash: Option<[u8; 32]>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub difficulty: Option<[u8; 32]>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub prevrandao: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EvmContext` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `is_diff` and `is_pre` are never read [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 59 | pub struct ISDiff { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 60 | /// is diff [INFO] [stdout] 61 | pub is_diff: bool, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 62 | /// turn on diff and judge is_pre [INFO] [stdout] 63 | pub is_pre: Option [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ISDiff` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_turn_off_diff_accounts_state` is never used [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:83:14 [INFO] [stdout] | [INFO] [stdout] 83 | pub async fn get_turn_off_diff_accounts_state( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_turn_on_diff_pre_accounts_state` is never used [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:90:14 [INFO] [stdout] | [INFO] [stdout] 90 | pub async fn get_turn_on_diff_pre_accounts_state( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_turn_on_diff_post_accounts_state` is never used [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:97:14 [INFO] [stdout] | [INFO] [stdout] 97 | pub async fn get_turn_on_diff_post_accounts_state( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_tx_after_accounts_state` is never used [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:105:14 [INFO] [stdout] | [INFO] [stdout] 105 | pub async fn get_tx_after_accounts_state( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `insert_tx_account_state_ex` is never used [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:142:8 [INFO] [stdout] | [INFO] [stdout] 142 | pub fn insert_tx_account_state_ex( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_accounts_state_tx` is never used [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:202:14 [INFO] [stdout] | [INFO] [stdout] 202 | pub async fn get_accounts_state_tx( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OpCodeContext` is never constructed [INFO] [stdout] --> src/core_module/context/opcode_context.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct OpCodeContext<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OpCodeContext` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TransactionEnv` is never constructed [INFO] [stdout] --> src/core_module/context/transaction_context.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct TransactionEnv { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TransactionEnv` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `None`, `TurnOffDiff`, `TurnOnDiffPre`, `TurnOnDiffPost`, and `TXAfterState` are never constructed [INFO] [stdout] --> src/core_module/context/transaction_context.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 52 | pub enum StateTracerType { [INFO] [stdout] | --------------- variants in this enum [INFO] [stdout] 53 | None, [INFO] [stdout] | ^^^^ [INFO] [stdout] 54 | TurnOffDiff, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 55 | TurnOnDiffPre, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 56 | TurnOnDiffPost, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 57 | TXAfterState [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StateTracerType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_transaction_content` is never used [INFO] [stdout] --> src/core_module/context/transaction_context.rs:62:14 [INFO] [stdout] | [INFO] [stdout] 62 | pub async fn get_transaction_content( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `attack_contract_address` is never read [INFO] [stdout] --> src/core_module/context/calldata_info.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct CallDataInfo { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 7 | pub attack_contract_address: Vec [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CallDataInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/core_module/op_codes/bitwise.rs:335:13 [INFO] [stdout] | [INFO] [stdout] 335 | let result = runner.stack.pop().unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `new_calldata` is never read [INFO] [stdout] --> src/core_module/op_codes/environment.rs:93:17 [INFO] [stdout] | [INFO] [stdout] 93 | let mut new_calldata: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/core_module/op_codes/environment.rs:322:13 [INFO] [stdout] | [INFO] [stdout] 322 | runner.increment_pc(1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 322 | let _ = runner.increment_pc(1); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:788:39 [INFO] [stdout] | [INFO] [stdout] 788 | println!("\n\n{}", border_line.clone().green()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:796:35 [INFO] [stdout] | [INFO] [stdout] 796 | println!("{}", footer_line.clone().green()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:814:37 [INFO] [stdout] | [INFO] [stdout] 814 | println!("\n{}", border_line.clone().blue()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:821:35 [INFO] [stdout] | [INFO] [stdout] 821 | println!("{}", footer_line.clone().blue()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/state.rs:428:37 [INFO] [stdout] | [INFO] [stdout] 428 | println!("\n{}", border_line.clone().red()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/state.rs:435:35 [INFO] [stdout] | [INFO] [stdout] 435 | println!("{}", footer_line.clone().red()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `hex` is assigned to, but never used [INFO] [stdout] --> src/core_module/op_codes/flow.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | let hex; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_hex` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `hex` is never read [INFO] [stdout] --> src/core_module/op_codes/flow.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | hex = utils::debug::vec_to_hex_string( [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `hex` is never read [INFO] [stdout] --> src/core_module/op_codes/flow.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | hex = utils::debug::to_hex_string([0u8; 32]); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 68 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `caller` [INFO] [stdout] --> src/core_module/op_codes/system.rs:300:13 [INFO] [stdout] | [INFO] [stdout] 300 | let caller = runner.caller; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_caller` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hh` [INFO] [stdout] --> src/core_module/op_codes/system.rs:439:17 [INFO] [stdout] | [INFO] [stdout] 439 | let hh = &format!("{:02x}", byte); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_hh` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tt` [INFO] [stdout] --> src/core_module/op_codes/system.rs:443:13 [INFO] [stdout] | [INFO] [stdout] 443 | let tt = &string_address; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_tt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `addr` [INFO] [stdout] --> src/core_module/op_codes/system.rs:451:13 [INFO] [stdout] | [INFO] [stdout] 451 | let addr = runner.address; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/runner.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | let mut instance = Self { [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/runner.rs:138:13 [INFO] [stdout] | [INFO] [stdout] 138 | let mut instance = Self { [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `op_count` is assigned to, but never used [INFO] [stdout] --> src/core_module/runner.rs:323:21 [INFO] [stdout] | [INFO] [stdout] 323 | let mut op_count = self.op_count; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_op_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `op_count` is assigned to, but never used [INFO] [stdout] --> src/core_module/runner.rs:464:21 [INFO] [stdout] | [INFO] [stdout] 464 | let mut op_count = self.op_count; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_op_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/runner.rs:714:13 [INFO] [stdout] | [INFO] [stdout] 714 | let mut code = self.state.get_code_at(to); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:149:18 [INFO] [stdout] | [INFO] [stdout] 149 | let mut balance_u64 = _account_state.balance.clone().unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:188:13 [INFO] [stdout] | [INFO] [stdout] 188 | let mut account_state = AccountStateEx { [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `account_state` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:262:9 [INFO] [stdout] | [INFO] [stdout] 262 | let account_state = get_accounts_state_tx(Arc::from(provider), to_h256(attack_hash), ISDiff::default()).await; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_account_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `account_state` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:274:9 [INFO] [stdout] | [INFO] [stdout] 274 | let account_state = get_accounts_state_tx(Arc::from(provider), to_h256(attack_hash), ISDiff::new(true, Some(true))).await; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_account_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `account_state` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:286:9 [INFO] [stdout] | [INFO] [stdout] 286 | let account_state = get_accounts_state_tx(Arc::from(provider), to_h256(attack_hash), ISDiff::new(true, Some(false))).await; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_account_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `account_state` [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:299:9 [INFO] [stdout] | [INFO] [stdout] 299 | let account_state = get_tx_after_accounts_state(Arc::from(provider), to_h256(attack_hash)).await; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_account_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | let mut bytecode: String = String::from("0x6080604052"); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `constraint_path` is never read [INFO] [stdout] --> src/core_module/runner.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Runner { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 59 | pub constraint_path: Option>, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `debug_stack`, `debug_memory`, and `debug_storage` are never used [INFO] [stdout] --> src/core_module/runner.rs:782:8 [INFO] [stdout] | [INFO] [stdout] 63 | impl Runner { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 782 | fn debug_stack(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 808 | fn debug_memory(&self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 848 | fn debug_storage(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `strip_zero_padding` is never used [INFO] [stdout] --> src/core_module/utils/bytes.rs:72:8 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn strip_zero_padding(arr: &[u8; 32]) -> &[u8] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_h160` is never used [INFO] [stdout] --> src/core_module/utils/bytes.rs:148:8 [INFO] [stdout] | [INFO] [stdout] 148 | pub fn to_h160(str_address: &'static str) -> H160 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `CodeNotFound` is never constructed [INFO] [stdout] --> src/core_module/utils/errors.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum ExecutionError { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 10 | CodeNotFound, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExecutionError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/core_module/utils/errors.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 95 | pub enum DatabaseError { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] 96 | ConnectionError, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 97 | QueryError, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 98 | InsertError, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 99 | UpdateError, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 100 | DeleteError, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 101 | SelectError, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 102 | TransactionError, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 103 | CommitError, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 104 | RollbackError, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 105 | ErrorSlot(&'static str), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DatabaseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `blockhash`, `difficulty`, and `prevrandao` are never read [INFO] [stdout] --> src/core_module/context/evm_context.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct EvmContext { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 6 | pub blockhash: Option<[u8; 32]>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub difficulty: Option<[u8; 32]>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub prevrandao: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EvmContext` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_turn_on_diff_pre_accounts_state` is never used [INFO] [stdout] --> src/core_module/context/account_state_ex_context.rs:90:14 [INFO] [stdout] | [INFO] [stdout] 90 | pub async fn get_turn_on_diff_pre_accounts_state( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OpCodeContext` is never constructed [INFO] [stdout] --> src/core_module/context/opcode_context.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct OpCodeContext<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OpCodeContext` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TransactionEnv` is never constructed [INFO] [stdout] --> src/core_module/context/transaction_context.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct TransactionEnv { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TransactionEnv` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `None` is never constructed [INFO] [stdout] --> src/core_module/context/transaction_context.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 52 | pub enum StateTracerType { [INFO] [stdout] | --------------- variant in this enum [INFO] [stdout] 53 | None, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StateTracerType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_transaction_content` is never used [INFO] [stdout] --> src/core_module/context/transaction_context.rs:62:14 [INFO] [stdout] | [INFO] [stdout] 62 | pub async fn get_transaction_content( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `attack_contract_address` is never read [INFO] [stdout] --> src/core_module/context/calldata_info.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct CallDataInfo { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 7 | pub attack_contract_address: Vec [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CallDataInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/core_module/op_codes/environment.rs:322:13 [INFO] [stdout] | [INFO] [stdout] 322 | runner.increment_pc(1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 322 | let _ = runner.increment_pc(1); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:788:39 [INFO] [stdout] | [INFO] [stdout] 788 | println!("\n\n{}", border_line.clone().green()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:796:35 [INFO] [stdout] | [INFO] [stdout] 796 | println!("{}", footer_line.clone().green()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:814:37 [INFO] [stdout] | [INFO] [stdout] 814 | println!("\n{}", border_line.clone().blue()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/runner.rs:821:35 [INFO] [stdout] | [INFO] [stdout] 821 | println!("{}", footer_line.clone().blue()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/state.rs:428:37 [INFO] [stdout] | [INFO] [stdout] 428 | println!("\n{}", border_line.clone().red()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/core_module/state.rs:435:35 [INFO] [stdout] | [INFO] [stdout] 435 | println!("{}", footer_line.clone().red()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test__hex_string_to_bytes` should have a snake case name [INFO] [stdout] --> src/core_module/utils/bytes.rs:114:8 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn test__hex_string_to_bytes() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `test_hex_string_to_bytes` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 68 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 55.76s [INFO] running `Command { std: "docker" "inspect" "d7f563ea35a9be97db2ddb8435cb23bc54c903cb3ca1d8c6fd5d655a2f2a31d1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d7f563ea35a9be97db2ddb8435cb23bc54c903cb3ca1d8c6fd5d655a2f2a31d1", kill_on_drop: false }` [INFO] [stdout] d7f563ea35a9be97db2ddb8435cb23bc54c903cb3ca1d8c6fd5d655a2f2a31d1