[INFO] cloning repository https://github.com/ShuoYang512/lydia
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ShuoYang512/lydia" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShuoYang512%2Flydia", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShuoYang512%2Flydia'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 0e5de0ba2501cb33d8516fd1ce1475cd0d162573
[INFO] checking ShuoYang512/lydia against master#779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 for pr-147589-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShuoYang512%2Flydia" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ShuoYang512/lydia
[INFO] finished tweaking git repo https://github.com/ShuoYang512/lydia
[INFO] tweaked toml for git repo https://github.com/ShuoYang512/lydia written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ShuoYang512/lydia on toolchain 779e19d8baa3e3625bd4fc5c85cbb2ad47b43155
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ShuoYang512/lydia 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" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded proc-macro-crate v2.0.1
[INFO] [stderr]   Downloaded web3-async-native-tls v0.4.0
[INFO] [stderr]   Downloaded web3 v0.19.0
[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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3f18db09358bdb5ea80acfe2b4a4ad23bf75606d83d9f214edffa91bb95f10ec
[INFO] running `Command { std: "docker" "start" "-a" "3f18db09358bdb5ea80acfe2b4a4ad23bf75606d83d9f214edffa91bb95f10ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3f18db09358bdb5ea80acfe2b4a4ad23bf75606d83d9f214edffa91bb95f10ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3f18db09358bdb5ea80acfe2b4a4ad23bf75606d83d9f214edffa91bb95f10ec", kill_on_drop: false }`
[INFO] [stdout] 3f18db09358bdb5ea80acfe2b4a4ad23bf75606d83d9f214edffa91bb95f10ec
[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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 157e76f7be61f6249eeb9924a3a008a32df4996204f26026835e61cadde84436
[INFO] running `Command { std: "docker" "start" "-a" "157e76f7be61f6249eeb9924a3a008a32df4996204f26026835e61cadde84436", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.75
[INFO] [stderr]    Compiling libc v0.2.151
[INFO] [stderr]    Compiling serde v1.0.194
[INFO] [stderr]     Checking smallvec v1.11.2
[INFO] [stderr]    Compiling pkg-config v0.3.28
[INFO] [stderr]    Compiling crunchy v0.2.2
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking rlp v0.5.2
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]     Checking regex-automata v0.4.3
[INFO] [stderr]     Checking block-buffer v0.9.0
[INFO] [stderr]     Checking digest v0.9.0
[INFO] [stderr]     Checking base64 v0.21.5
[INFO] [stderr]     Checking keccak v0.1.4
[INFO] [stderr]     Checking rustix v0.38.28
[INFO] [stderr]     Checking headers-core v0.2.0
[INFO] [stderr]     Checking base64 v0.13.1
[INFO] [stderr]     Checking sha-1 v0.9.8
[INFO] [stderr]     Checking os_str_bytes v6.6.1
[INFO] [stderr]     Checking sha3 v0.10.8
[INFO] [stderr]     Checking termcolor v1.4.0
[INFO] [stderr]     Checking idna v0.4.0
[INFO] [stderr]     Checking impl-rlp v0.3.0
[INFO] [stderr]     Checking headers v0.3.9
[INFO] [stderr]     Checking csv-core v0.1.11
[INFO] [stderr]     Checking uint v0.9.5
[INFO] [stderr]     Checking futures-timer v3.0.2
[INFO] [stderr]     Checking textwrap v0.16.1
[INFO] [stderr]     Checking humantime v2.1.0
[INFO] [stderr]     Checking clap_lex v0.2.4
[INFO] [stderr]     Checking is-terminal v0.4.10
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]     Checking parking_lot_core v0.9.9
[INFO] [stderr]     Checking signal-hook-registry v1.4.1
[INFO] [stderr]     Checking mio v0.8.10
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking socket2 v0.5.5
[INFO] [stderr]     Checking getrandom v0.2.11
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking clap v3.2.25
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling openssl-sys v0.9.98
[INFO] [stderr]    Compiling secp256k1-sys v0.8.1
[INFO] [stderr]    Compiling openssl v0.10.62
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]     Checking fixed-hash v0.8.0
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]     Checking regex v1.10.2
[INFO] [stderr]     Checking env_logger v0.10.1
[INFO] [stderr]     Checking secp256k1 v0.27.0
[INFO] [stderr]    Compiling serde_derive v1.0.194
[INFO] [stderr]    Compiling tokio-macros v2.2.0
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.56
[INFO] [stderr]    Compiling pin-project-internal v1.1.3
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]     Checking tokio v1.35.1
[INFO] [stderr]     Checking pin-project v1.1.3
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking thiserror v1.0.56
[INFO] [stderr]     Checking futures-executor v0.3.30
[INFO] [stderr]     Checking futures v0.3.30
[INFO] [stderr]     Checking soketto v0.7.1
[INFO] [stderr]     Checking tokio-util v0.7.10
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tokio-stream v0.1.14
[INFO] [stderr]     Checking web3-async-native-tls v0.4.0
[INFO] [stderr]     Checking h2 v0.3.22
[INFO] [stderr]     Checking impl-serde v0.4.0
[INFO] [stderr]     Checking serde_json v1.0.111
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking csv v1.3.0
[INFO] [stderr]     Checking primitive-types v0.12.2
[INFO] [stderr]     Checking ethbloom v0.13.0
[INFO] [stderr]     Checking jsonrpc-core v18.0.0
[INFO] [stderr]     Checking hyper v0.14.28
[INFO] [stderr]     Checking ethereum-types v0.14.1
[INFO] [stderr]     Checking ethabi v18.0.0
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.23
[INFO] [stderr]     Checking web3 v0.19.0
[INFO] [stderr]     Checking lydia v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: type `data_structure::ExternalCall` is more private than the item `contract::contract::Contract::external_calls`
[INFO] [stdout]    --> src/contract/contract.rs:49:5
[INFO] [stdout]     |
[INFO] [stdout]  49 |     pub external_calls: Vec<ExternalCall>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `contract::contract::Contract::external_calls` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `data_structure::ExternalCall` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/contract/data_structure.rs:135:1
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub(crate) struct ExternalCall {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/graph/call_graph.rs:13:83
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(platform: String, contracts: &'a mut HashMap<String, Contract>) -> CallGraph {
[INFO] [stdout]    |                                              -- the lifetime is named here        ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(platform: String, contracts: &'a mut HashMap<String, Contract>) -> CallGraph<'a> {
[INFO] [stdout]    |                                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `data_structure::ExternalCall` is more private than the item `contract::contract::Contract::external_calls`
[INFO] [stdout]    --> src/contract/contract.rs:49:5
[INFO] [stdout]     |
[INFO] [stdout]  49 |     pub external_calls: Vec<ExternalCall>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `contract::contract::Contract::external_calls` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `data_structure::ExternalCall` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/contract/data_structure.rs:135:1
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub(crate) struct ExternalCall {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/graph/call_graph.rs:13:83
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(platform: String, contracts: &'a mut HashMap<String, Contract>) -> CallGraph {
[INFO] [stdout]    |                                              -- the lifetime is named here        ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(platform: String, contracts: &'a mut HashMap<String, Contract>) -> CallGraph<'a> {
[INFO] [stdout]    |                                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `call_stmt`, `sensitive_var`, and `source_op` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 145 | pub struct SensitiveOpOfBadRandomnessAfterExternalCall {
[INFO] [stdout]     |            ------------------------------------------- fields in this struct
[INFO] [stdout] 146 |     pub func_sign: String,
[INFO] [stdout] 147 |     pub call_stmt: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 148 |     pub sensitive_var: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 149 |     pub source_op: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SensitiveOpOfBadRandomnessAfterExternalCall` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `call_stmt`, `call_ret_var`, `call_ret_index`, and `sensitive_var` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub struct SensitiveOpOfDoSAfterExternalCall {
[INFO] [stdout]     |            --------------------------------- fields in this struct
[INFO] [stdout] 165 |     pub func_sign: String,
[INFO] [stdout] 166 |     pub call_stmt: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 167 |     pub call_ret_var: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 168 |     pub call_ret_index: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 169 |     pub sensitive_var: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `call_ret`, `func_ret_index`, and `func_ret` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct CallRetToFuncRet {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] 227 |     pub call_stmt: String,
[INFO] [stdout] 228 |     pub call_ret: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 231 |     pub func_ret_index: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 232 |     pub func_ret: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `call_ret` and `call_arg` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 249 | pub struct CallRetToCallArg {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] 250 |     pub call_stmt1: String,
[INFO] [stdout] 251 |     pub call_ret: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |     pub call_arg: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `func_arg` and `call_arg` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 277 | pub struct FuncArgToCallArg {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 280 |     pub func_arg: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 283 |     pub call_arg: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `func_arg` and `call_arg_index` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:303:9
[INFO] [stdout]     |
[INFO] [stdout] 300 | pub struct FuncArgToCallee {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 303 |     pub func_arg: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 304 |     pub call_stmt: String,
[INFO] [stdout] 305 |     pub call_arg_index: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `func_arg` and `func_ret` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:323:9
[INFO] [stdout]     |
[INFO] [stdout] 320 | pub struct FuncArgToFuncRet {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 323 |     pub func_arg: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 324 |     pub func_ret_index: String,
[INFO] [stdout] 325 |     pub func_ret: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `env_var` and `tainted_var` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:343:9
[INFO] [stdout]     |
[INFO] [stdout] 341 | pub struct EnvVarFlowsToTaintedVar {
[INFO] [stdout]     |            ----------------------- fields in this struct
[INFO] [stdout] 342 |     pub func_sign: String,
[INFO] [stdout] 343 |     pub env_var: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 344 |     pub tainted_var: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stmt` is never read
[INFO] [stdout]    --> src/contract/data_structure.rs:360:9
[INFO] [stdout]     |
[INFO] [stdout] 358 | pub struct OpCreateInLoop {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 359 |     pub func_sign: String,
[INFO] [stdout] 360 |     pub stmt: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stmt` is never read
[INFO] [stdout]    --> src/contract/data_structure.rs:375:9
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct OpSoleCreate {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 374 |     pub func_sign: String,
[INFO] [stdout] 375 |     pub stmt: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `target` is never read
[INFO] [stdout]    --> src/contract/data_structure.rs:390:9
[INFO] [stdout]     |
[INFO] [stdout] 388 | pub struct OpSelfdestruct {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 389 |     pub func_sign: String,
[INFO] [stdout] 390 |     pub target: String,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `call_stmt` is never read
[INFO] [stdout]    --> src/contract/data_structure.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 403 | pub struct ExternalCallInHook {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] 404 |     pub call_stmt: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `call_stmt` is never read
[INFO] [stdout]    --> src/contract/data_structure.rs:419:9
[INFO] [stdout]     |
[INFO] [stdout] 418 | pub struct ExternalCallInFallback {
[INFO] [stdout]     |            ---------------------- field in this struct
[INFO] [stdout] 419 |     pub call_stmt: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `callee` is never read
[INFO] [stdout]    --> src/contract/data_structure.rs:435:9
[INFO] [stdout]     |
[INFO] [stdout] 433 | pub struct DoubleCallToSameContract {
[INFO] [stdout]     |            ------------------------ field in this struct
[INFO] [stdout] 434 |     pub func_sign: String,
[INFO] [stdout] 435 |     pub callee: String,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `call_stmt`, `sensitive_var`, and `source_op` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 145 | pub struct SensitiveOpOfBadRandomnessAfterExternalCall {
[INFO] [stdout]     |            ------------------------------------------- fields in this struct
[INFO] [stdout] 146 |     pub func_sign: String,
[INFO] [stdout] 147 |     pub call_stmt: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 148 |     pub sensitive_var: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 149 |     pub source_op: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SensitiveOpOfBadRandomnessAfterExternalCall` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `call_stmt`, `call_ret_var`, `call_ret_index`, and `sensitive_var` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:450:9
[INFO] [stdout]     |
[INFO] [stdout] 448 | pub struct DoubleCallToSameContractByStorage {
[INFO] [stdout]     |            --------------------------------- fields in this struct
[INFO] [stdout] 449 |     pub func_sign: String,
[INFO] [stdout] 450 |     pub call_stmt: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 451 |     pub call_ret_var: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 452 |     pub call_ret_index: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 453 |     pub sensitive_var: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `call_stmt` and `storage_slot` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:471:9
[INFO] [stdout]     |
[INFO] [stdout] 469 | pub struct CallInStandardTransfer {
[INFO] [stdout]     |            ---------------------- fields in this struct
[INFO] [stdout] 470 |     pub func_sign: String,
[INFO] [stdout] 471 |     pub call_stmt: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 472 |     pub storage_slot: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `FlowAnalysis`, `Network`, and `General` are never constructed
[INFO] [stdout]   --> src/error.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum LydiaError {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     FlowAnalysis(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     Network(String),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 25 |     /// General application errors
[INFO] [stdout] 26 |     General(String),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LydiaError` 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 `call_stmt`, `call_ret_var`, `call_ret_index`, and `sensitive_var` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub struct SensitiveOpOfDoSAfterExternalCall {
[INFO] [stdout]     |            --------------------------------- fields in this struct
[INFO] [stdout] 165 |     pub func_sign: String,
[INFO] [stdout] 166 |     pub call_stmt: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 167 |     pub call_ret_var: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 168 |     pub call_ret_index: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 169 |     pub sensitive_var: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `call_ret`, `func_ret_index`, and `func_ret` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct CallRetToFuncRet {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] 227 |     pub call_stmt: String,
[INFO] [stdout] 228 |     pub call_ret: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 231 |     pub func_ret_index: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 232 |     pub func_ret: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `call_ret` and `call_arg` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 249 | pub struct CallRetToCallArg {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] 250 |     pub call_stmt1: String,
[INFO] [stdout] 251 |     pub call_ret: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |     pub call_arg: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `func_arg` and `call_arg` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 277 | pub struct FuncArgToCallArg {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 280 |     pub func_arg: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 283 |     pub call_arg: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `func_arg` and `call_arg_index` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:303:9
[INFO] [stdout]     |
[INFO] [stdout] 300 | pub struct FuncArgToCallee {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 303 |     pub func_arg: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 304 |     pub call_stmt: String,
[INFO] [stdout] 305 |     pub call_arg_index: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `func_arg` and `func_ret` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:323:9
[INFO] [stdout]     |
[INFO] [stdout] 320 | pub struct FuncArgToFuncRet {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 323 |     pub func_arg: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 324 |     pub func_ret_index: String,
[INFO] [stdout] 325 |     pub func_ret: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `env_var` and `tainted_var` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:343:9
[INFO] [stdout]     |
[INFO] [stdout] 341 | pub struct EnvVarFlowsToTaintedVar {
[INFO] [stdout]     |            ----------------------- fields in this struct
[INFO] [stdout] 342 |     pub func_sign: String,
[INFO] [stdout] 343 |     pub env_var: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 344 |     pub tainted_var: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stmt` is never read
[INFO] [stdout]    --> src/contract/data_structure.rs:360:9
[INFO] [stdout]     |
[INFO] [stdout] 358 | pub struct OpCreateInLoop {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 359 |     pub func_sign: String,
[INFO] [stdout] 360 |     pub stmt: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stmt` is never read
[INFO] [stdout]    --> src/contract/data_structure.rs:375:9
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct OpSoleCreate {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 374 |     pub func_sign: String,
[INFO] [stdout] 375 |     pub stmt: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `target` is never read
[INFO] [stdout]    --> src/contract/data_structure.rs:390:9
[INFO] [stdout]     |
[INFO] [stdout] 388 | pub struct OpSelfdestruct {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 389 |     pub func_sign: String,
[INFO] [stdout] 390 |     pub target: String,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `call_stmt` is never read
[INFO] [stdout]    --> src/contract/data_structure.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 403 | pub struct ExternalCallInHook {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] 404 |     pub call_stmt: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `call_stmt` is never read
[INFO] [stdout]    --> src/contract/data_structure.rs:419:9
[INFO] [stdout]     |
[INFO] [stdout] 418 | pub struct ExternalCallInFallback {
[INFO] [stdout]     |            ---------------------- field in this struct
[INFO] [stdout] 419 |     pub call_stmt: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `callee` is never read
[INFO] [stdout]    --> src/contract/data_structure.rs:435:9
[INFO] [stdout]     |
[INFO] [stdout] 433 | pub struct DoubleCallToSameContract {
[INFO] [stdout]     |            ------------------------ field in this struct
[INFO] [stdout] 434 |     pub func_sign: String,
[INFO] [stdout] 435 |     pub callee: String,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `call_stmt`, `call_ret_var`, `call_ret_index`, and `sensitive_var` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:450:9
[INFO] [stdout]     |
[INFO] [stdout] 448 | pub struct DoubleCallToSameContractByStorage {
[INFO] [stdout]     |            --------------------------------- fields in this struct
[INFO] [stdout] 449 |     pub func_sign: String,
[INFO] [stdout] 450 |     pub call_stmt: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 451 |     pub call_ret_var: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 452 |     pub call_ret_index: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 453 |     pub sensitive_var: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `call_stmt` and `storage_slot` are never read
[INFO] [stdout]    --> src/contract/data_structure.rs:471:9
[INFO] [stdout]     |
[INFO] [stdout] 469 | pub struct CallInStandardTransfer {
[INFO] [stdout]     |            ---------------------- fields in this struct
[INFO] [stdout] 470 |     pub func_sign: String,
[INFO] [stdout] 471 |     pub call_stmt: String,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 472 |     pub storage_slot: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `FlowAnalysis`, `Network`, and `General` are never constructed
[INFO] [stdout]   --> src/error.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum LydiaError {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     FlowAnalysis(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     Network(String),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 25 |     /// General application errors
[INFO] [stdout] 26 |     General(String),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LydiaError` 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 `format_duration` is never used
[INFO] [stdout]   --> src/utils.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn format_duration(duration: std::time::Duration) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid_ethereum_address` is never used
[INFO] [stdout]   --> src/utils.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn is_valid_ethereum_address(address: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/graph/call_graph.rs:13:83
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(platform: String, contracts: &'a mut HashMap<String, Contract>) -> CallGraph {
[INFO] [stdout]    |                                              -- the lifetime is named here        ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(platform: String, contracts: &'a mut HashMap<String, Contract>) -> CallGraph<'a> {
[INFO] [stdout]    |                                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/graph/call_graph.rs:13:83
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(platform: String, contracts: &'a mut HashMap<String, Contract>) -> CallGraph {
[INFO] [stdout]    |                                              -- the lifetime is named here        ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(platform: String, contracts: &'a mut HashMap<String, Contract>) -> CallGraph<'a> {
[INFO] [stdout]    |                                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 54.09s
[INFO] running `Command { std: "docker" "inspect" "157e76f7be61f6249eeb9924a3a008a32df4996204f26026835e61cadde84436", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "157e76f7be61f6249eeb9924a3a008a32df4996204f26026835e61cadde84436", kill_on_drop: false }`
[INFO] [stdout] 157e76f7be61f6249eeb9924a3a008a32df4996204f26026835e61cadde84436
