[INFO] fetching crate safeeft 0.0.5... [INFO] linting safeeft-0.0.5 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate safeeft 0.0.5 into /workspace/builds/worker-7-tc1/source [INFO] started tweaking crates.io crate safeeft 0.0.5 [INFO] finished tweaking crates.io crate safeeft 0.0.5 [INFO] tweaked toml for crates.io crate safeeft 0.0.5 written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate safeeft 0.0.5 on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "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" "+nightly" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 16 packages to latest compatible versions [INFO] [stderr] Adding num-traits v0.1.43 (available: v0.2.19) [INFO] [stderr] Adding rand v0.3.23 (available: v0.10.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded float-traits v0.0.3 [INFO] [stderr] Downloaded fma v0.1.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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 57910f3af0db8c756600a0b429154f69facd75201976a15214f33b72d29e5782 [INFO] running `Command { std: "docker" "start" "-a" "57910f3af0db8c756600a0b429154f69facd75201976a15214f33b72d29e5782", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "57910f3af0db8c756600a0b429154f69facd75201976a15214f33b72d29e5782", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "57910f3af0db8c756600a0b429154f69facd75201976a15214f33b72d29e5782", kill_on_drop: false }` [INFO] [stdout] 57910f3af0db8c756600a0b429154f69facd75201976a15214f33b72d29e5782 [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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 06eff82667bf11179fa1de2ff4ecbdc29500d82d43364a9d18dcc81b0414d214 [INFO] running `Command { std: "docker" "start" "-a" "06eff82667bf11179fa1de2ff4ecbdc29500d82d43364a9d18dcc81b0414d214", kill_on_drop: false }` [INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024` [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking float-traits v0.0.3 [INFO] [stderr] Checking safeeft v0.0.5 (/opt/rustwide/workdir) [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/twosum.rs:68:21 [INFO] [stdout] | [INFO] [stdout] 68 | assert!(((a1 == a2) && (b1 == b2)) || ((a1 == a2) && a1.is_infinite())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 68 - assert!(((a1 == a2) && (b1 == b2)) || ((a1 == a2) && a1.is_infinite())); [INFO] [stdout] 68 + assert!(!(a1 != a2 || b1 != b2 && !a1.is_infinite())); [INFO] [stdout] | [INFO] [stdout] 68 - assert!(((a1 == a2) && (b1 == b2)) || ((a1 == a2) && a1.is_infinite())); [INFO] [stdout] 68 + assert!((a1.is_infinite() || (b1 == b2)) && (a1 == a2)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/twosum.rs:87:21 [INFO] [stdout] | [INFO] [stdout] 87 | assert!(((a1 == a2) && (b1 == b2)) || ((a1 == a2) && a1.is_infinite())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 87 - assert!(((a1 == a2) && (b1 == b2)) || ((a1 == a2) && a1.is_infinite())); [INFO] [stdout] 87 + assert!(!(a1 != a2 || b1 != b2 && !a1.is_infinite())); [INFO] [stdout] | [INFO] [stdout] 87 - assert!(((a1 == a2) && (b1 == b2)) || ((a1 == a2) && a1.is_infinite())); [INFO] [stdout] 87 + assert!((a1.is_infinite() || (b1 == b2)) && (a1 == a2)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: float has excessive precision [INFO] [stdout] --> src/twosum.rs:118:40 [INFO] [stdout] | [INFO] [stdout] 118 | let res1 = safetwosum_straight(3.5630624444874539e+307, -1.7976931348623157e+308); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stdout] = note: `#[warn(clippy::excessive_precision)]` on by default [INFO] [stdout] help: consider changing the type or truncating it to [INFO] [stdout] | [INFO] [stdout] 118 - let res1 = safetwosum_straight(3.5630624444874539e+307, -1.7976931348623157e+308); [INFO] [stdout] 118 + let res1 = safetwosum_straight(3.563_062_444_487_454e307, -1.7976931348623157e+308); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`f64` -> `f64`) [INFO] [stdout] --> src/twosum.rs:119:18 [INFO] [stdout] | [INFO] [stdout] 119 | assert!(!(res1.1 as f64).is_nan()); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `res1.1` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/split.rs:19:26 [INFO] [stdout] | [INFO] [stdout] 19 | b.iter(|| for f in a.into_iter() { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] = note: `#[warn(clippy::into_iter_on_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/split.rs:32:26 [INFO] [stdout] | [INFO] [stdout] 32 | b.iter(|| for f in a.into_iter() { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/split.rs:45:26 [INFO] [stdout] | [INFO] [stdout] 45 | b.iter(|| for f in a.into_iter() { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/split.rs:19:26 [INFO] [stdout] | [INFO] [stdout] 19 | b.iter(|| for f in a.into_iter() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 19 - b.iter(|| for f in a.into_iter() { [INFO] [stdout] 19 + b.iter(|| for f in a.iter() { [INFO] [stdout] | [INFO] [stdout] help: or remove `.into_iter()` to iterate by value [INFO] [stdout] | [INFO] [stdout] 19 - b.iter(|| for f in a.into_iter() { [INFO] [stdout] 19 + b.iter(|| for f in a { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/split.rs:32:26 [INFO] [stdout] | [INFO] [stdout] 32 | b.iter(|| for f in a.into_iter() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 32 - b.iter(|| for f in a.into_iter() { [INFO] [stdout] 32 + b.iter(|| for f in a.iter() { [INFO] [stdout] | [INFO] [stdout] help: or remove `.into_iter()` to iterate by value [INFO] [stdout] | [INFO] [stdout] 32 - b.iter(|| for f in a.into_iter() { [INFO] [stdout] 32 + b.iter(|| for f in a { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/split.rs:45:26 [INFO] [stdout] | [INFO] [stdout] 45 | b.iter(|| for f in a.into_iter() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 45 - b.iter(|| for f in a.into_iter() { [INFO] [stdout] 45 + b.iter(|| for f in a.iter() { [INFO] [stdout] | [INFO] [stdout] help: or remove `.into_iter()` to iterate by value [INFO] [stdout] | [INFO] [stdout] 45 - b.iter(|| for f in a.into_iter() { [INFO] [stdout] 45 + b.iter(|| for f in a { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/twosum.rs:24:33 [INFO] [stdout] | [INFO] [stdout] 24 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] = note: `#[warn(clippy::into_iter_on_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/twosum.rs:24:51 [INFO] [stdout] | [INFO] [stdout] 24 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> benches/twosum.rs:24:49 [INFO] [stdout] | [INFO] [stdout] 24 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /rustc/91021ccc790478a1a89c003e7d32b8d155ae6aae/library/core/src/iter/traits/iterator.rs:629:11 [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 24 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 24 + b.iter(|| for (f1, f2) in l.into_iter().zip(&r) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/twosum.rs:39:33 [INFO] [stdout] | [INFO] [stdout] 39 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/twosum.rs:39:51 [INFO] [stdout] | [INFO] [stdout] 39 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> benches/twosum.rs:39:49 [INFO] [stdout] | [INFO] [stdout] 39 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /rustc/91021ccc790478a1a89c003e7d32b8d155ae6aae/library/core/src/iter/traits/iterator.rs:629:11 [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 39 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 39 + b.iter(|| for (f1, f2) in l.into_iter().zip(&r) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/twosum.rs:54:33 [INFO] [stdout] | [INFO] [stdout] 54 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/twosum.rs:54:51 [INFO] [stdout] | [INFO] [stdout] 54 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> benches/twosum.rs:54:49 [INFO] [stdout] | [INFO] [stdout] 54 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /rustc/91021ccc790478a1a89c003e7d32b8d155ae6aae/library/core/src/iter/traits/iterator.rs:629:11 [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 54 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 54 + b.iter(|| for (f1, f2) in l.into_iter().zip(&r) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/twosum.rs:24:33 [INFO] [stdout] | [INFO] [stdout] 24 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 24 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 24 + b.iter(|| for (f1, f2) in l.iter().zip(r.into_iter()) { [INFO] [stdout] | [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 24 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 24 + b.iter(|| for (f1, f2) in IntoIterator::into_iter(l).zip(r.into_iter()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/twosum.rs:24:51 [INFO] [stdout] | [INFO] [stdout] 24 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 24 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 24 + b.iter(|| for (f1, f2) in l.into_iter().zip(r.iter()) { [INFO] [stdout] | [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 24 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 24 + b.iter(|| for (f1, f2) in l.into_iter().zip(IntoIterator::into_iter(r)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/twosum.rs:39:33 [INFO] [stdout] | [INFO] [stdout] 39 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 39 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 39 + b.iter(|| for (f1, f2) in l.iter().zip(r.into_iter()) { [INFO] [stdout] | [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 39 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 39 + b.iter(|| for (f1, f2) in IntoIterator::into_iter(l).zip(r.into_iter()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/twosum.rs:39:51 [INFO] [stdout] | [INFO] [stdout] 39 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 39 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 39 + b.iter(|| for (f1, f2) in l.into_iter().zip(r.iter()) { [INFO] [stdout] | [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 39 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 39 + b.iter(|| for (f1, f2) in l.into_iter().zip(IntoIterator::into_iter(r)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/twosum.rs:54:33 [INFO] [stdout] | [INFO] [stdout] 54 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 54 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 54 + b.iter(|| for (f1, f2) in l.iter().zip(r.into_iter()) { [INFO] [stdout] | [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 54 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 54 + b.iter(|| for (f1, f2) in IntoIterator::into_iter(l).zip(r.into_iter()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/twosum.rs:54:51 [INFO] [stdout] | [INFO] [stdout] 54 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 54 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 54 + b.iter(|| for (f1, f2) in l.into_iter().zip(r.iter()) { [INFO] [stdout] | [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 54 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 54 + b.iter(|| for (f1, f2) in l.into_iter().zip(IntoIterator::into_iter(r)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/twoproduct.rs:24:33 [INFO] [stdout] | [INFO] [stdout] 24 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] = note: `#[warn(clippy::into_iter_on_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/twoproduct.rs:24:51 [INFO] [stdout] | [INFO] [stdout] 24 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> benches/twoproduct.rs:24:49 [INFO] [stdout] | [INFO] [stdout] 24 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /rustc/91021ccc790478a1a89c003e7d32b8d155ae6aae/library/core/src/iter/traits/iterator.rs:629:11 [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 24 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 24 + b.iter(|| for (f1, f2) in l.into_iter().zip(&r) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/twoproduct.rs:39:33 [INFO] [stdout] | [INFO] [stdout] 39 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/twoproduct.rs:39:51 [INFO] [stdout] | [INFO] [stdout] 39 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> benches/twoproduct.rs:39:49 [INFO] [stdout] | [INFO] [stdout] 39 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /rustc/91021ccc790478a1a89c003e7d32b8d155ae6aae/library/core/src/iter/traits/iterator.rs:629:11 [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 39 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 39 + b.iter(|| for (f1, f2) in l.into_iter().zip(&r) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/twoproduct.rs:54:33 [INFO] [stdout] | [INFO] [stdout] 54 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array` [INFO] [stdout] --> benches/twoproduct.rs:54:51 [INFO] [stdout] | [INFO] [stdout] 54 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> benches/twoproduct.rs:54:49 [INFO] [stdout] | [INFO] [stdout] 54 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /rustc/91021ccc790478a1a89c003e7d32b8d155ae6aae/library/core/src/iter/traits/iterator.rs:629:11 [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 54 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 54 + b.iter(|| for (f1, f2) in l.into_iter().zip(&r) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/twoproduct.rs:24:33 [INFO] [stdout] | [INFO] [stdout] 24 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 24 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 24 + b.iter(|| for (f1, f2) in l.iter().zip(r.into_iter()) { [INFO] [stdout] | [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 24 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 24 + b.iter(|| for (f1, f2) in IntoIterator::into_iter(l).zip(r.into_iter()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/twoproduct.rs:24:51 [INFO] [stdout] | [INFO] [stdout] 24 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 24 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 24 + b.iter(|| for (f1, f2) in l.into_iter().zip(r.iter()) { [INFO] [stdout] | [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 24 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 24 + b.iter(|| for (f1, f2) in l.into_iter().zip(IntoIterator::into_iter(r)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/twoproduct.rs:39:33 [INFO] [stdout] | [INFO] [stdout] 39 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 39 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 39 + b.iter(|| for (f1, f2) in l.iter().zip(r.into_iter()) { [INFO] [stdout] | [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 39 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 39 + b.iter(|| for (f1, f2) in IntoIterator::into_iter(l).zip(r.into_iter()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/twoproduct.rs:39:51 [INFO] [stdout] | [INFO] [stdout] 39 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 39 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 39 + b.iter(|| for (f1, f2) in l.into_iter().zip(r.iter()) { [INFO] [stdout] | [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 39 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 39 + b.iter(|| for (f1, f2) in l.into_iter().zip(IntoIterator::into_iter(r)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/twoproduct.rs:54:33 [INFO] [stdout] | [INFO] [stdout] 54 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 54 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 54 + b.iter(|| for (f1, f2) in l.iter().zip(r.into_iter()) { [INFO] [stdout] | [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 54 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 54 + b.iter(|| for (f1, f2) in IntoIterator::into_iter(l).zip(r.into_iter()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021 [INFO] [stdout] --> benches/twoproduct.rs:54:51 [INFO] [stdout] | [INFO] [stdout] 54 | b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 54 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 54 + b.iter(|| for (f1, f2) in l.into_iter().zip(r.iter()) { [INFO] [stdout] | [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 54 - b.iter(|| for (f1, f2) in l.into_iter().zip(r.into_iter()) { [INFO] [stdout] 54 + b.iter(|| for (f1, f2) in l.into_iter().zip(IntoIterator::into_iter(r)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.67s [INFO] running `Command { std: "docker" "inspect" "06eff82667bf11179fa1de2ff4ecbdc29500d82d43364a9d18dcc81b0414d214", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "06eff82667bf11179fa1de2ff4ecbdc29500d82d43364a9d18dcc81b0414d214", kill_on_drop: false }` [INFO] [stdout] 06eff82667bf11179fa1de2ff4ecbdc29500d82d43364a9d18dcc81b0414d214