[INFO] fetching crate stack_test_progpow_cpu 0.1.0...
[INFO] testing stack_test_progpow_cpu-0.1.0 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-8
[INFO] extracting crate stack_test_progpow_cpu 0.1.0 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate stack_test_progpow_cpu 0.1.0
[INFO] finished tweaking crates.io crate stack_test_progpow_cpu 0.1.0
[INFO] tweaked toml for crates.io crate stack_test_progpow_cpu 0.1.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate stack_test_progpow_cpu 0.1.0 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 70 packages to latest compatible versions
[INFO] [stderr]       Adding keccak-hash v0.2.0 (available: v0.12.0)
[INFO] [stderr]       Adding parking_lot v0.8.0 (available: v0.12.5)
[INFO] [stderr]       Adding primal v0.2.3 (available: v0.3.3)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tempdir v0.3.7
[INFO] [stderr]   Downloaded primal-estimate v0.2.1
[INFO] [stderr]   Downloaded parking_lot v0.8.0
[INFO] [stderr]   Downloaded parking_lot_core v0.5.0
[INFO] [stderr]   Downloaded hamming v0.1.3
[INFO] [stderr]   Downloaded primal-sieve v0.2.9
[INFO] [stderr]   Downloaded primal v0.2.3
[INFO] [stderr]   Downloaded primal-check v0.2.3
[INFO] [stderr]   Downloaded primal-bit v0.2.4
[INFO] [stderr]   Downloaded lock_api v0.2.0
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ad3d6b58afab69083a80c2e7547e4997725cd321c3ffa4f1cf910a1e1aed7dd6
[INFO] running `Command { std: "docker" "start" "-a" "ad3d6b58afab69083a80c2e7547e4997725cd321c3ffa4f1cf910a1e1aed7dd6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ad3d6b58afab69083a80c2e7547e4997725cd321c3ffa4f1cf910a1e1aed7dd6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ad3d6b58afab69083a80c2e7547e4997725cd321c3ffa4f1cf910a1e1aed7dd6", kill_on_drop: false }`
[INFO] [stdout] ad3d6b58afab69083a80c2e7547e4997725cd321c3ffa4f1cf910a1e1aed7dd6
[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" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] dfb8d5b83c8eaefb03b8585469091c1affecf1bca09e467efc3c5f6be48fada6
[INFO] running `Command { std: "docker" "start" "-a" "dfb8d5b83c8eaefb03b8585469091c1affecf1bca09e467efc3c5f6be48fada6", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]    Compiling arrayvec v0.4.12
[INFO] [stderr]    Compiling nodrop v0.1.14
[INFO] [stderr]    Compiling rustc-hex v2.1.0
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling static_assertions v0.2.5
[INFO] [stderr]    Compiling hamming v0.1.3
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling primal-estimate v0.2.1
[INFO] [stderr]    Compiling lock_api v0.2.0
[INFO] [stderr]    Compiling memmap v0.7.0
[INFO] [stderr]    Compiling log v0.4.28
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling tiny-keccak v1.5.0
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling primal-bit v0.2.4
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand v0.5.6
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]    Compiling uint v0.7.1
[INFO] [stderr]    Compiling primal-sieve v0.2.9
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling parking_lot_core v0.5.0
[INFO] [stderr]    Compiling parking_lot v0.8.0
[INFO] [stderr]    Compiling fixed-hash v0.3.2
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling primal-check v0.2.3
[INFO] [stderr]    Compiling primal v0.2.3
[INFO] [stderr]    Compiling parity-codec v3.5.4
[INFO] [stderr]    Compiling impl-codec v0.2.0
[INFO] [stderr]    Compiling primitive-types v0.3.0
[INFO] [stderr]    Compiling keccak-hash v0.2.0
[INFO] [stderr]    Compiling stack_test_progpow_cpu v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `keccak_f800_long` and `keccak_f800_short`
[INFO] [stdout]   --> src/compute.rs:24:37
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::progpow::{generate_cdag, keccak_f800_long, keccak_f800_short, progpow, CDag};
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/compute.rs:157:3
[INFO] [stdout]     |
[INFO] [stdout] 157 |     };
[INFO] [stdout]     |      ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/compute.rs:178:41
[INFO] [stdout]     |
[INFO] [stdout] 178 |             let mut out: [u8; NODE_BYTES] = mem::uninitialized();
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/compute.rs:198:33
[INFO] [stdout]     |
[INFO] [stdout] 198 |         compress_bytes: unsafe { mem::uninitialized() },
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/shared.rs:85:30
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/shared.rs:85:30
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/shared.rs:85:30
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MIX_HASH` is never used
[INFO] [stdout]   --> src/compute.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const MIX_HASH: u32 = 0x811c9dc5;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 64]` does not permit being left uninitialized
[INFO] [stdout]    --> src/compute.rs:178:36
[INFO] [stdout]     |
[INFO] [stdout] 178 |             let mut out: [u8; NODE_BYTES] = mem::uninitialized();
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             this code causes undefined behavior when executed
[INFO] [stdout]     |                                             help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 32]` does not permit being left uninitialized
[INFO] [stdout]    --> src/compute.rs:198:28
[INFO] [stdout]     |
[INFO] [stdout] 198 |         compress_bytes: unsafe { mem::uninitialized() },
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  this code causes undefined behavior when executed
[INFO] [stdout]     |                                  help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 64]` does not permit being left uninitialized
[INFO] [stdout]    --> src/shared.rs:85:18
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u32; 16]` does not permit being left uninitialized
[INFO] [stdout]    --> src/shared.rs:85:18
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u64; 8]` does not permit being left uninitialized
[INFO] [stdout]    --> src/shared.rs:85:18
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.69s
[INFO] running `Command { std: "docker" "inspect" "dfb8d5b83c8eaefb03b8585469091c1affecf1bca09e467efc3c5f6be48fada6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dfb8d5b83c8eaefb03b8585469091c1affecf1bca09e467efc3c5f6be48fada6", kill_on_drop: false }`
[INFO] [stdout] dfb8d5b83c8eaefb03b8585469091c1affecf1bca09e467efc3c5f6be48fada6
[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" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a328661c81b6c34f53867f546093a1efeaf374efe4669eff9bb98a8f5e8a32f3
[INFO] running `Command { std: "docker" "start" "-a" "a328661c81b6c34f53867f546093a1efeaf374efe4669eff9bb98a8f5e8a32f3", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling ryu v1.0.20
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling remove_dir_all v0.5.3
[INFO] [stderr]    Compiling itoa v1.0.15
[INFO] [stdout] warning: unused imports: `keccak_f800_long` and `keccak_f800_short`
[INFO] [stdout]   --> src/compute.rs:24:37
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::progpow::{generate_cdag, keccak_f800_long, keccak_f800_short, progpow, CDag};
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/compute.rs:157:3
[INFO] [stdout]     |
[INFO] [stdout] 157 |     };
[INFO] [stdout]     |      ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/compute.rs:178:41
[INFO] [stdout]     |
[INFO] [stdout] 178 |             let mut out: [u8; NODE_BYTES] = mem::uninitialized();
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/compute.rs:198:33
[INFO] [stdout]     |
[INFO] [stdout] 198 |         compress_bytes: unsafe { mem::uninitialized() },
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/shared.rs:85:30
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/shared.rs:85:30
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/shared.rs:85:30
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MIX_HASH` is never used
[INFO] [stdout]   --> src/compute.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const MIX_HASH: u32 = 0x811c9dc5;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 64]` does not permit being left uninitialized
[INFO] [stdout]    --> src/compute.rs:178:36
[INFO] [stdout]     |
[INFO] [stdout] 178 |             let mut out: [u8; NODE_BYTES] = mem::uninitialized();
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             this code causes undefined behavior when executed
[INFO] [stdout]     |                                             help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 32]` does not permit being left uninitialized
[INFO] [stdout]    --> src/compute.rs:198:28
[INFO] [stdout]     |
[INFO] [stdout] 198 |         compress_bytes: unsafe { mem::uninitialized() },
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  this code causes undefined behavior when executed
[INFO] [stdout]     |                                  help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 64]` does not permit being left uninitialized
[INFO] [stdout]    --> src/shared.rs:85:18
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u32; 16]` does not permit being left uninitialized
[INFO] [stdout]    --> src/shared.rs:85:18
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u64; 8]` does not permit being left uninitialized
[INFO] [stdout]    --> src/shared.rs:85:18
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tempdir v0.3.7
[INFO] [stderr]    Compiling stack_test_progpow_cpu v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `keccak_f800_long` and `keccak_f800_short`
[INFO] [stdout]   --> src/compute.rs:24:37
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::progpow::{generate_cdag, keccak_f800_long, keccak_f800_short, progpow, CDag};
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/compute.rs:157:3
[INFO] [stdout]     |
[INFO] [stdout] 157 |     };
[INFO] [stdout]     |      ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/compute.rs:178:41
[INFO] [stdout]     |
[INFO] [stdout] 178 |             let mut out: [u8; NODE_BYTES] = mem::uninitialized();
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/compute.rs:198:33
[INFO] [stdout]     |
[INFO] [stdout] 198 |         compress_bytes: unsafe { mem::uninitialized() },
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/shared.rs:85:30
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/shared.rs:85:30
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/shared.rs:85:30
[INFO] [stdout]     |
[INFO] [stdout]  85 |             let val: $b = ::std::mem::uninitialized();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 | static_assert_size_eq!(Node, NodeBytes, NodeWords, NodeDwords);
[INFO] [stdout]     | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `static_assert_size_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/compute.rs:400:15
[INFO] [stdout]     |
[INFO] [stdout] 400 |         let light = NodeCacheBuilder::new(None, u64::max_value()).light(tempdir.path(), 486382);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^       ---------------- unexpected argument #2 of type `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/cache.rs:94:9
[INFO] [stdout]     |
[INFO] [stdout]  94 |     pub fn new<T: Into<Option<OptimizeFor>>>(optimize_for: T) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 400 -         let light = NodeCacheBuilder::new(None, u64::max_value()).light(tempdir.path(), 486382);
[INFO] [stdout] 400 +         let light = NodeCacheBuilder::new(None).light(tempdir.path(), 486382);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `mix_hash` on type `([u8; 32], [u8; 32])`
[INFO] [stdout]    --> src/compute.rs:402:21
[INFO] [stdout]     |
[INFO] [stdout] 402 |         assert_eq!(result.mix_hash[..], mix_hash[..]);
[INFO] [stdout]     |                           ^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `0`, `1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `value` on type `([u8; 32], [u8; 32])`
[INFO] [stdout]    --> src/compute.rs:403:21
[INFO] [stdout]     |
[INFO] [stdout] 403 |         assert_eq!(result.value[..], boundary[..]);
[INFO] [stdout]     |                           ^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `0`, `1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/compute.rs:409:17
[INFO] [stdout]     |
[INFO] [stdout] 409 |         let builder = NodeCacheBuilder::new(None, u64::max_value());
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^       ---------------- unexpected argument #2 of type `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/cache.rs:94:9
[INFO] [stdout]     |
[INFO] [stdout]  94 |     pub fn new<T: Into<Option<OptimizeFor>>>(optimize_for: T) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 409 -         let builder = NodeCacheBuilder::new(None, u64::max_value());
[INFO] [stdout] 409 +         let builder = NodeCacheBuilder::new(None);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/progpow.rs:428:17
[INFO] [stdout]     |
[INFO] [stdout] 428 |         let builder = NodeCacheBuilder::new(OptimizeFor::Memory, u64::max_value());
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^                      ---------------- unexpected argument #2 of type `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/cache.rs:94:9
[INFO] [stdout]     |
[INFO] [stdout]  94 |     pub fn new<T: Into<Option<OptimizeFor>>>(optimize_for: T) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 428 -         let builder = NodeCacheBuilder::new(OptimizeFor::Memory, u64::max_value());
[INFO] [stdout] 428 +         let builder = NodeCacheBuilder::new(OptimizeFor::Memory);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: can't compare `[u32; 8]` with `[u8; 32]`
[INFO] [stdout]    --> src/progpow.rs:513:3
[INFO] [stdout]     |
[INFO] [stdout] 513 |         assert_eq!(keccak_f800_long([0; 32], 0, [0; 8]), h256(expected),);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `[u32; 8] == [u8; 32]`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `PartialEq<[u8; 32]>` is not implemented for `[u32; 8]`
[INFO] [stdout]     = help: the following other types implement trait `PartialEq<Rhs>`:
[INFO] [stdout]               `&[T]` implements `PartialEq<Vec<U, A>>`
[INFO] [stdout]               `&[T]` implements `PartialEq<[U; N]>`
[INFO] [stdout]               `&[u8; N]` implements `PartialEq<ByteStr>`
[INFO] [stdout]               `&[u8; N]` implements `PartialEq<ByteString>`
[INFO] [stdout]               `&[u8]` implements `PartialEq<ByteStr>`
[INFO] [stdout]               `&[u8]` implements `PartialEq<ByteString>`
[INFO] [stdout]               `&mut [T]` implements `PartialEq<Vec<U, A>>`
[INFO] [stdout]               `&mut [T]` implements `PartialEq<[U; N]>`
[INFO] [stdout]             and 11 others
[INFO] [stdout]     = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/progpow.rs:524:17
[INFO] [stdout]     |
[INFO] [stdout] 524 |         let builder = NodeCacheBuilder::new(OptimizeFor::Memory, u64::max_value());
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^                      ---------------- unexpected argument #2 of type `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/cache.rs:94:9
[INFO] [stdout]     |
[INFO] [stdout]  94 |     pub fn new<T: Into<Option<OptimizeFor>>>(optimize_for: T) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 524 -         let builder = NodeCacheBuilder::new(OptimizeFor::Memory, u64::max_value());
[INFO] [stdout] 524 +         let builder = NodeCacheBuilder::new(OptimizeFor::Memory);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: can't compare `u32` with `u8`
[INFO] [stdout]    --> src/progpow.rs:543:3
[INFO] [stdout]     |
[INFO] [stdout] 543 |         assert_eq!(digest.to_vec(), expected_digest,);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `u32 == u8`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `PartialEq<u8>` is not implemented for `u32`
[INFO] [stdout] help: the following other types implement trait `PartialEq<Rhs>`
[INFO] [stdout]    --> /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/cmp.rs:1885:4
[INFO] [stdout]    ::: /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/cmp.rs:1887:5
[INFO] [stdout]     |
[INFO] [stdout]     = note: `u32` implements `PartialEq`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/value/partial_eq.rs:97:1
[INFO] [stdout]     |
[INFO] [stdout]  97 | / partialeq_numeric! {
[INFO] [stdout]  98 | |     eq_i64[i8 i16 i32 i64 isize]
[INFO] [stdout]  99 | |     eq_u64[u8 u16 u32 u64 usize]
[INFO] [stdout] 100 | |     eq_f32[f32]
[INFO] [stdout] 101 | |     eq_f64[f64]
[INFO] [stdout] 102 | |     eq_bool[bool]
[INFO] [stdout] 103 | | }
[INFO] [stdout]     | |_^ `u32` implements `PartialEq<Value>`
[INFO] [stdout]     = note: required for `Vec<u32>` to implement `PartialEq<Vec<u8>>`
[INFO] [stdout]     = note: this error originates in the macro `assert_eq` which comes from the expansion of the macro `partialeq_numeric` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: can't compare `u32` with `u8`
[INFO] [stdout]    --> src/progpow.rs:545:3
[INFO] [stdout]     |
[INFO] [stdout] 545 |         assert_eq!(result.to_vec(), expected_result,);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `u32 == u8`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `PartialEq<u8>` is not implemented for `u32`
[INFO] [stdout] help: the following other types implement trait `PartialEq<Rhs>`
[INFO] [stdout]    --> /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/cmp.rs:1885:4
[INFO] [stdout]    ::: /rustc/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/core/src/cmp.rs:1887:5
[INFO] [stdout]     |
[INFO] [stdout]     = note: `u32` implements `PartialEq`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.145/src/value/partial_eq.rs:97:1
[INFO] [stdout]     |
[INFO] [stdout]  97 | / partialeq_numeric! {
[INFO] [stdout]  98 | |     eq_i64[i8 i16 i32 i64 isize]
[INFO] [stdout]  99 | |     eq_u64[u8 u16 u32 u64 usize]
[INFO] [stdout] 100 | |     eq_f32[f32]
[INFO] [stdout] 101 | |     eq_f64[f64]
[INFO] [stdout] 102 | |     eq_bool[bool]
[INFO] [stdout] 103 | | }
[INFO] [stdout]     | |_^ `u32` implements `PartialEq<Value>`
[INFO] [stdout]     = note: required for `Vec<u32>` to implement `PartialEq<Vec<u8>>`
[INFO] [stdout]     = note: this error originates in the macro `assert_eq` which comes from the expansion of the macro `partialeq_numeric` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 1 argument but 2 arguments were supplied
[INFO] [stdout]    --> src/progpow.rs:584:18
[INFO] [stdout]     |
[INFO] [stdout] 584 |             let builder = NodeCacheBuilder::new(OptimizeFor::Memory, u64::max_value());
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^                      ---------------- unexpected argument #2 of type `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/cache.rs:94:9
[INFO] [stdout]     |
[INFO] [stdout]  94 |     pub fn new<T: Into<Option<OptimizeFor>>>(optimize_for: T) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout] 584 -             let builder = NodeCacheBuilder::new(OptimizeFor::Memory, u64::max_value());
[INFO] [stdout] 584 +             let builder = NodeCacheBuilder::new(OptimizeFor::Memory);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: can't compare `[u32; 8]` with `[u8; 32]`
[INFO] [stdout]    --> src/progpow.rs:597:4
[INFO] [stdout]     |
[INFO] [stdout] 597 |             assert_eq!(digest, test.final_hash);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `[u32; 8] == [u8; 32]`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `PartialEq<[u8; 32]>` is not implemented for `[u32; 8]`
[INFO] [stdout]     = help: the following other types implement trait `PartialEq<Rhs>`:
[INFO] [stdout]               `&[T]` implements `PartialEq<Vec<U, A>>`
[INFO] [stdout]               `&[T]` implements `PartialEq<[U; N]>`
[INFO] [stdout]               `&[u8; N]` implements `PartialEq<ByteStr>`
[INFO] [stdout]               `&[u8; N]` implements `PartialEq<ByteString>`
[INFO] [stdout]               `&[u8]` implements `PartialEq<ByteStr>`
[INFO] [stdout]               `&[u8]` implements `PartialEq<ByteString>`
[INFO] [stdout]               `&mut [T]` implements `PartialEq<Vec<U, A>>`
[INFO] [stdout]               `&mut [T]` implements `PartialEq<[U; N]>`
[INFO] [stdout]             and 11 others
[INFO] [stdout]     = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: can't compare `[u32; 8]` with `[u8; 32]`
[INFO] [stdout]    --> src/progpow.rs:598:4
[INFO] [stdout]     |
[INFO] [stdout] 598 |             assert_eq!(result, test.mix_hash);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `[u32; 8] == [u8; 32]`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `PartialEq<[u8; 32]>` is not implemented for `[u32; 8]`
[INFO] [stdout]     = help: the following other types implement trait `PartialEq<Rhs>`:
[INFO] [stdout]               `&[T]` implements `PartialEq<Vec<U, A>>`
[INFO] [stdout]               `&[T]` implements `PartialEq<[U; N]>`
[INFO] [stdout]               `&[u8; N]` implements `PartialEq<ByteStr>`
[INFO] [stdout]               `&[u8; N]` implements `PartialEq<ByteString>`
[INFO] [stdout]               `&[u8]` implements `PartialEq<ByteStr>`
[INFO] [stdout]               `&[u8]` implements `PartialEq<ByteString>`
[INFO] [stdout]               `&mut [T]` implements `PartialEq<Vec<U, A>>`
[INFO] [stdout]               `&mut [T]` implements `PartialEq<[U; N]>`
[INFO] [stdout]             and 11 others
[INFO] [stdout]     = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hash`
[INFO] [stdout]    --> src/compute.rs:354:7
[INFO] [stdout]     |
[INFO] [stdout] 354 |         let hash = [
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_hash`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mix_hash`
[INFO] [stdout]    --> src/compute.rs:359:7
[INFO] [stdout]     |
[INFO] [stdout] 359 |         let mix_hash = [
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mix_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nonce`
[INFO] [stdout]    --> src/compute.rs:364:7
[INFO] [stdout]     |
[INFO] [stdout] 364 |         let nonce = 0xd7b3ac70a301a249;
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_nonce`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `boundary_good`
[INFO] [stdout]    --> src/compute.rs:365:7
[INFO] [stdout]     |
[INFO] [stdout] 365 |         let boundary_good = [
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_boundary_good`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stack_test_progpow_cpu` (lib test) due to 12 previous errors; 11 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "a328661c81b6c34f53867f546093a1efeaf374efe4669eff9bb98a8f5e8a32f3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a328661c81b6c34f53867f546093a1efeaf374efe4669eff9bb98a8f5e8a32f3", kill_on_drop: false }`
[INFO] [stdout] a328661c81b6c34f53867f546093a1efeaf374efe4669eff9bb98a8f5e8a32f3
