[INFO] cloning repository https://github.com/lucyoa/evm-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lucyoa/evm-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flucyoa%2Fevm-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flucyoa%2Fevm-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 109bf1c1c26296360f7febd0506cac480990b785 [INFO] building lucyoa/evm-rust against master#11663cd3bfefef7d34e8f0892c250bf698049392+rustflags=-Dtail-expr-drop-order for pr-134523 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flucyoa%2Fevm-rust" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/lucyoa/evm-rust on toolchain 11663cd3bfefef7d34e8f0892c250bf698049392 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/lucyoa/evm-rust [INFO] finished tweaking git repo https://github.com/lucyoa/evm-rust [INFO] tweaked toml for git repo https://github.com/lucyoa/evm-rust written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/lucyoa/evm-rust 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" "+11663cd3bfefef7d34e8f0892c250bf698049392" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b55368760fd2bc8b5ad2f95cfb21d407be94a5df746ed69dc203c8bb6ed34cd9 [INFO] running `Command { std: "docker" "start" "-a" "b55368760fd2bc8b5ad2f95cfb21d407be94a5df746ed69dc203c8bb6ed34cd9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b55368760fd2bc8b5ad2f95cfb21d407be94a5df746ed69dc203c8bb6ed34cd9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b55368760fd2bc8b5ad2f95cfb21d407be94a5df746ed69dc203c8bb6ed34cd9", kill_on_drop: false }` [INFO] [stdout] b55368760fd2bc8b5ad2f95cfb21d407be94a5df746ed69dc203c8bb6ed34cd9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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 -Dtail-expr-drop-order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3965350fc31307147e89ba351ca22cf3e95bde05e3a4be29d8ad07c5a0fcf283 [INFO] running `Command { std: "docker" "start" "-a" "3965350fc31307147e89ba351ca22cf3e95bde05e3a4be29d8ad07c5a0fcf283", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.146 [INFO] [stderr] Compiling version_check v0.9.4 [INFO] [stderr] Compiling typenum v1.16.0 [INFO] [stderr] Compiling io-lifetimes v1.0.11 [INFO] [stderr] Compiling memchr v2.5.0 [INFO] [stderr] Compiling rustix v0.37.20 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling linux-raw-sys v0.3.8 [INFO] [stderr] Compiling regex-syntax v0.7.2 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling log v0.4.19 [INFO] [stderr] Compiling termcolor v1.2.0 [INFO] [stderr] Compiling keccak v0.1.4 [INFO] [stderr] Compiling humantime v2.1.0 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling ethnum v1.3.2 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling aho-corasick v1.0.2 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling colored v2.0.0 [INFO] [stderr] Compiling sha3 v0.10.8 [INFO] [stderr] Compiling regex v1.8.4 [INFO] [stderr] Compiling is-terminal v0.4.7 [INFO] [stderr] Compiling env_logger v0.10.0 [INFO] [stderr] Compiling evm-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Read` and `self` [INFO] [stdout] --> src/main.rs:1:15 [INFO] [stdout] | [INFO] [stdout] 1 | use std::io::{self,Read}; [INFO] [stdout] | ^^^^ ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/evm.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lazy_static::lazy_static` [INFO] [stdout] --> src/evm.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use lazy_static::lazy_static; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/evm.rs:24:86 [INFO] [stdout] | [INFO] [stdout] 23 | impl <'a>EVM<'a> { [INFO] [stdout] | -- lifetime `'a` declared here [INFO] [stdout] 24 | pub fn new(mut blockchain: &'a mut blockchain::BlockChain, ctx: context::CTX) -> EVM { [INFO] [stdout] | ^^^ this elided lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/evm.rs:24:16 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn new(mut blockchain: &'a mut blockchain::BlockChain, ctx: context::CTX) -> EVM { [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: unused variable: `i` [INFO] [stdout] --> src/evm.rs:264:13 [INFO] [stdout] | [INFO] [stdout] 264 | let i: usize; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/evm.rs:279:13 [INFO] [stdout] | [INFO] [stdout] 279 | let mut account: &mut blockchain::Account = self.blockchain.get_account(address); [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/evm.rs:363:13 [INFO] [stdout] | [INFO] [stdout] 363 | let mut result: U256 = a.wrapping_pow(b.as_u32()); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num_bytes` [INFO] [stdout] --> src/evm.rs:380:21 [INFO] [stdout] | [INFO] [stdout] 380 | let num_bytes = 32 - (b + 1); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_bytes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/evm.rs:371:13 [INFO] [stdout] | [INFO] [stdout] 371 | let mut y: U256; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/evm.rs:530:13 [INFO] [stdout] | [INFO] [stdout] 530 | let result: U256 = U256::new(0); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dest_offset` [INFO] [stdout] --> src/evm.rs:566:13 [INFO] [stdout] | [INFO] [stdout] 566 | let dest_offset = self.stack_pop().as_usize(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dest_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dest_offset` [INFO] [stdout] --> src/evm.rs:580:13 [INFO] [stdout] | [INFO] [stdout] 580 | let dest_offset = self.stack_pop().as_usize(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dest_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/evm.rs:843:13 [INFO] [stdout] | [INFO] [stdout] 843 | let mut data: Vec = utils::encode_rlp(address, account.nonce); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `returndata` [INFO] [stdout] --> src/evm.rs:1096:13 [INFO] [stdout] | [INFO] [stdout] 1096 | let returndata = vm.run(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_returndata` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/blockchain.rs:77:13 [INFO] [stdout] | [INFO] [stdout] 77 | let mut contract_account = self.accounts.get_mut(&address).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/blockchain.rs:78:13 [INFO] [stdout] | [INFO] [stdout] 78 | let mut balance = contract_account.balance; [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/blockchain.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | let mut recipient_account = self.accounts.get_mut(&recipient).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/blockchain.rs:93:13 [INFO] [stdout] | [INFO] [stdout] 93 | let mut account = self.accounts.get_mut(&address).unwrap(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `success` is never read [INFO] [stdout] --> src/main.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | let mut success: bool = false; [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 does not need to be mutable [INFO] [stdout] --> src/main.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let mut tx = context::TX::new(origin, gasprice); [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:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | let mut msg = context::MSG::new(from, to, calldata, value, gas); [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:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | let mut ctx = context::CTX::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/main.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | let mut returndata: Vec; [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `to` is never read [INFO] [stdout] --> src/context.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct MSG { [INFO] [stdout] | --- field in this struct [INFO] [stdout] 19 | pub from: U256, [INFO] [stdout] 20 | pub to: U256, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `data`, `topic1`, `topic2`, `topic3`, and `topic4` are never read [INFO] [stdout] --> src/blockchain.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 24 | struct Log { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] 25 | pub data: Vec, [INFO] [stdout] | ^^^^ [INFO] [stdout] 26 | pub topic1: U256, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 27 | pub topic2: U256, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 28 | pub topic3: U256, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 29 | pub topic4: U256 [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `N` should have a snake case name [INFO] [stdout] --> src/evm.rs:344:13 [INFO] [stdout] | [INFO] [stdout] 344 | let N: U256 = self.stack_pop(); [INFO] [stdout] | ^ help: convert the identifier to snake case: `n` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `N` should have a snake case name [INFO] [stdout] --> src/evm.rs:353:13 [INFO] [stdout] | [INFO] [stdout] 353 | let N: U256 = self.stack_pop(); [INFO] [stdout] | ^ help: convert the identifier to snake case: `n` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.72s [INFO] running `Command { std: "docker" "inspect" "3965350fc31307147e89ba351ca22cf3e95bde05e3a4be29d8ad07c5a0fcf283", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3965350fc31307147e89ba351ca22cf3e95bde05e3a4be29d8ad07c5a0fcf283", kill_on_drop: false }` [INFO] [stdout] 3965350fc31307147e89ba351ca22cf3e95bde05e3a4be29d8ad07c5a0fcf283 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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 -Dtail-expr-drop-order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2841635e94d8204d80a85a7576ed014500c0ec6fc66c4fc909a15ef74a57e684 [INFO] running `Command { std: "docker" "start" "-a" "2841635e94d8204d80a85a7576ed014500c0ec6fc66c4fc909a15ef74a57e684", kill_on_drop: false }` [INFO] [stderr] Compiling evm-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Read` and `self` [INFO] [stdout] --> src/main.rs:1:15 [INFO] [stdout] | [INFO] [stdout] 1 | use std::io::{self,Read}; [INFO] [stdout] | ^^^^ ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/evm.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lazy_static::lazy_static` [INFO] [stdout] --> src/evm.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use lazy_static::lazy_static; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/evm.rs:24:86 [INFO] [stdout] | [INFO] [stdout] 23 | impl <'a>EVM<'a> { [INFO] [stdout] | -- lifetime `'a` declared here [INFO] [stdout] 24 | pub fn new(mut blockchain: &'a mut blockchain::BlockChain, ctx: context::CTX) -> EVM { [INFO] [stdout] | ^^^ this elided lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/evm.rs:24:16 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn new(mut blockchain: &'a mut blockchain::BlockChain, ctx: context::CTX) -> EVM { [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: unused variable: `i` [INFO] [stdout] --> src/evm.rs:264:13 [INFO] [stdout] | [INFO] [stdout] 264 | let i: usize; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/evm.rs:279:13 [INFO] [stdout] | [INFO] [stdout] 279 | let mut account: &mut blockchain::Account = self.blockchain.get_account(address); [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/evm.rs:363:13 [INFO] [stdout] | [INFO] [stdout] 363 | let mut result: U256 = a.wrapping_pow(b.as_u32()); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num_bytes` [INFO] [stdout] --> src/evm.rs:380:21 [INFO] [stdout] | [INFO] [stdout] 380 | let num_bytes = 32 - (b + 1); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_bytes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/evm.rs:371:13 [INFO] [stdout] | [INFO] [stdout] 371 | let mut y: U256; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/evm.rs:530:13 [INFO] [stdout] | [INFO] [stdout] 530 | let result: U256 = U256::new(0); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dest_offset` [INFO] [stdout] --> src/evm.rs:566:13 [INFO] [stdout] | [INFO] [stdout] 566 | let dest_offset = self.stack_pop().as_usize(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dest_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dest_offset` [INFO] [stdout] --> src/evm.rs:580:13 [INFO] [stdout] | [INFO] [stdout] 580 | let dest_offset = self.stack_pop().as_usize(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dest_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/evm.rs:843:13 [INFO] [stdout] | [INFO] [stdout] 843 | let mut data: Vec = utils::encode_rlp(address, account.nonce); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `returndata` [INFO] [stdout] --> src/evm.rs:1096:13 [INFO] [stdout] | [INFO] [stdout] 1096 | let returndata = vm.run(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_returndata` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/blockchain.rs:77:13 [INFO] [stdout] | [INFO] [stdout] 77 | let mut contract_account = self.accounts.get_mut(&address).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/blockchain.rs:78:13 [INFO] [stdout] | [INFO] [stdout] 78 | let mut balance = contract_account.balance; [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/blockchain.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | let mut recipient_account = self.accounts.get_mut(&recipient).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/blockchain.rs:93:13 [INFO] [stdout] | [INFO] [stdout] 93 | let mut account = self.accounts.get_mut(&address).unwrap(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `success` is never read [INFO] [stdout] --> src/main.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | let mut success: bool = false; [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 does not need to be mutable [INFO] [stdout] --> src/main.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let mut tx = context::TX::new(origin, gasprice); [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:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | let mut msg = context::MSG::new(from, to, calldata, value, gas); [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:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | let mut ctx = context::CTX::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/main.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | let mut returndata: Vec; [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `to` is never read [INFO] [stdout] --> src/context.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct MSG { [INFO] [stdout] | --- field in this struct [INFO] [stdout] 19 | pub from: U256, [INFO] [stdout] 20 | pub to: U256, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `data`, `topic1`, `topic2`, `topic3`, and `topic4` are never read [INFO] [stdout] --> src/blockchain.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 24 | struct Log { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] 25 | pub data: Vec, [INFO] [stdout] | ^^^^ [INFO] [stdout] 26 | pub topic1: U256, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 27 | pub topic2: U256, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 28 | pub topic3: U256, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 29 | pub topic4: U256 [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `N` should have a snake case name [INFO] [stdout] --> src/evm.rs:344:13 [INFO] [stdout] | [INFO] [stdout] 344 | let N: U256 = self.stack_pop(); [INFO] [stdout] | ^ help: convert the identifier to snake case: `n` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `N` should have a snake case name [INFO] [stdout] --> src/evm.rs:353:13 [INFO] [stdout] | [INFO] [stdout] 353 | let N: U256 = self.stack_pop(); [INFO] [stdout] | ^ help: convert the identifier to snake case: `n` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.39s [INFO] running `Command { std: "docker" "inspect" "2841635e94d8204d80a85a7576ed014500c0ec6fc66c4fc909a15ef74a57e684", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2841635e94d8204d80a85a7576ed014500c0ec6fc66c4fc909a15ef74a57e684", kill_on_drop: false }` [INFO] [stdout] 2841635e94d8204d80a85a7576ed014500c0ec6fc66c4fc909a15ef74a57e684