[INFO] crate hibitset 0.5.3 is already in cache [INFO] extracting crate hibitset 0.5.3 into work/ex/clippy-test-run/sources/stable/reg/hibitset/0.5.3 [INFO] extracting crate hibitset 0.5.3 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/hibitset/0.5.3 [INFO] validating manifest of hibitset-0.5.3 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of hibitset-0.5.3 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing hibitset-0.5.3 [INFO] finished frobbing hibitset-0.5.3 [INFO] frobbed toml for hibitset-0.5.3 written to work/ex/clippy-test-run/sources/stable/reg/hibitset/0.5.3/Cargo.toml [INFO] started frobbing hibitset-0.5.3 [INFO] finished frobbing hibitset-0.5.3 [INFO] frobbed toml for hibitset-0.5.3 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/hibitset/0.5.3/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting hibitset-0.5.3 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-4/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/hibitset/0.5.3:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] e58ad7ce363fed5a382838dafee2d3e9e12850d4a5e647c800c089934e03c2cb [INFO] running `"docker" "start" "-a" "e58ad7ce363fed5a382838dafee2d3e9e12850d4a5e647c800c089934e03c2cb"` [INFO] [stderr] Checking hibitset v0.5.3 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/iter/mod.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | set: set, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `set` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/iter/mod.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | masks: masks, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `masks` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/iter/mod.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | prefix: prefix, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `prefix` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/util.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 101 | let d = (c + (c >> 8)) & PAR[3]; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/util.rs:152:9 [INFO] [stderr] | [INFO] [stderr] 152 | let d = (c + (c >> 8)) & PAR[3]; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/util.rs:153:9 [INFO] [stderr] | [INFO] [stderr] 153 | let e = (d + (d >> 16)) & PAR[4]; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/iter/mod.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | set: set, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `set` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/iter/mod.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | masks: masks, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `masks` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/iter/mod.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | prefix: prefix, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `prefix` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/util.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 101 | let d = (c + (c >> 8)) & PAR[3]; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/util.rs:152:9 [INFO] [stderr] | [INFO] [stderr] 152 | let d = (c + (c >> 8)) & PAR[3]; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/util.rs:153:9 [INFO] [stderr] | [INFO] [stderr] 153 | let e = (d + (d >> 16)) & PAR[4]; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/atomic.rs:109:9 [INFO] [stderr] | [INFO] [stderr] 109 | return true; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `true` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: operator precedence can trip the unwary [INFO] [stderr] --> src/util.rs:14:28 [INFO] [stderr] | [INFO] [stderr] 14 | pub const MAX_EID: usize = 2 << MAX - 1; [INFO] [stderr] | ^^^^^^^^^^^^ help: consider parenthesizing your expression: `2 << (MAX - 1)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::precedence)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#precedence [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/util.rs:145:14 [INFO] [stderr] | [INFO] [stderr] 145 | !0 / 0x100000001 [INFO] [stderr] | ^^^^^^^^^^^ help: consider: `0x0001_0000_0001` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:207:9 [INFO] [stderr] | [INFO] [stderr] 207 | return true; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `true` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/atomic.rs:109:9 [INFO] [stderr] | [INFO] [stderr] 109 | return true; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `true` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: operator precedence can trip the unwary [INFO] [stderr] --> src/util.rs:14:28 [INFO] [stderr] | [INFO] [stderr] 14 | pub const MAX_EID: usize = 2 << MAX - 1; [INFO] [stderr] | ^^^^^^^^^^^^ help: consider parenthesizing your expression: `2 << (MAX - 1)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::precedence)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#precedence [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/util.rs:145:14 [INFO] [stderr] | [INFO] [stderr] 145 | !0 / 0x100000001 [INFO] [stderr] | ^^^^^^^^^^^ help: consider: `0x0001_0000_0001` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/util.rs:390:46 [INFO] [stderr] | [INFO] [stderr] 390 | assert_eq!(Some(5), average_ones_u32(0b100010)); [INFO] [stderr] | ^^^^^^^^ help: consider: `0b10_0010` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/util.rs:395:46 [INFO] [stderr] | [INFO] [stderr] 395 | assert_eq!(Some(5), average_ones_u64(0b100010)); [INFO] [stderr] | ^^^^^^^^ help: consider: `0b10_0010` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:207:9 [INFO] [stderr] | [INFO] [stderr] 207 | return true; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `true` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: called `map(f)` on an Option value where `f` is a unit closure [INFO] [stderr] --> src/atomic.rs:253:9 [INFO] [stderr] | [INFO] [stderr] 253 | / self.atom [INFO] [stderr] 254 | | .get() [INFO] [stderr] 255 | | .map(|l0| for l in &l0[..] { [INFO] [stderr] 256 | | l.store(0, Ordering::Relaxed); [INFO] [stderr] 257 | | }); [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::option_map_unit_fn)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_map_unit_fn [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 253 | if let Some(l0) = self.atom [INFO] [stderr] 254 | .get() { ... } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitOrAssign` impl [INFO] [stderr] --> src/ops.rs:17:31 [INFO] [stderr] | [INFO] [stderr] 17 | let lower = level - 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::suspicious_op_assign_impl)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitOrAssign` impl [INFO] [stderr] --> src/ops.rs:18:51 [INFO] [stderr] | [INFO] [stderr] 18 | let idx = iter.prefix[lower] as usize >> BITS; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitAndAssign` impl [INFO] [stderr] --> src/ops.rs:31:27 [INFO] [stderr] | [INFO] [stderr] 31 | iter.masks[LAYERS - 1] &= self.layer3(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitAndAssign` impl [INFO] [stderr] --> src/ops.rs:33:31 [INFO] [stderr] | [INFO] [stderr] 33 | let lower = level - 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitAndAssign` impl [INFO] [stderr] --> src/ops.rs:34:51 [INFO] [stderr] | [INFO] [stderr] 34 | let idx = iter.prefix[lower] as usize >> BITS; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitAndAssign` impl [INFO] [stderr] --> src/ops.rs:47:22 [INFO] [stderr] | [INFO] [stderr] 47 | masks[LAYERS - 1] = self.layer3() & !lhs.layer3(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitAndAssign` impl [INFO] [stderr] --> src/ops.rs:48:52 [INFO] [stderr] | [INFO] [stderr] 48 | BitIter::new(&mut *self, masks, [0; LAYERS - 1]).clear(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitXorAssign` impl [INFO] [stderr] --> src/ops.rs:61:31 [INFO] [stderr] | [INFO] [stderr] 61 | let lower = level - 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitXorAssign` impl [INFO] [stderr] --> src/ops.rs:62:51 [INFO] [stderr] | [INFO] [stderr] 62 | let idx = iter.prefix[lower] as usize >> BITS; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitXorAssign` impl [INFO] [stderr] --> src/ops.rs:68:39 [INFO] [stderr] | [INFO] [stderr] 68 | let lower = level - 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitXorAssign` impl [INFO] [stderr] --> src/ops.rs:70:57 [INFO] [stderr] | [INFO] [stderr] 70 | let l = iter.prefix[lower] as usize >> BITS; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitXorAssign` impl [INFO] [stderr] --> src/ops.rs:74:50 [INFO] [stderr] | [INFO] [stderr] 74 | *self.layer_mut(level, h >> BITS) &= !mask; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitXorAssign` impl [INFO] [stderr] --> src/ops.rs:76:50 [INFO] [stderr] | [INFO] [stderr] 76 | *self.layer_mut(level, h >> BITS) |= mask; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:303:5 [INFO] [stderr] | [INFO] [stderr] 303 | / fn drain<'a>(&'a mut self) -> DrainBitIter<'a, Self> [INFO] [stderr] 304 | | where Self: Sized [INFO] [stderr] 305 | | { [INFO] [stderr] 306 | | let layer3 = self.layer3(); [INFO] [stderr] 307 | | [INFO] [stderr] 308 | | DrainBitIter::new(self, [0, 0, 0, layer3], [0; LAYERS - 1]) [INFO] [stderr] 309 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/lib.rs:387:9 [INFO] [stderr] | [INFO] [stderr] 387 | self.layer2.get(i).map(|&x| x).unwrap_or(0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `self.layer2.get(i).cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/lib.rs:392:9 [INFO] [stderr] | [INFO] [stderr] 392 | self.layer1.get(i).map(|&x| x).unwrap_or(0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `self.layer1.get(i).cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/lib.rs:397:9 [INFO] [stderr] | [INFO] [stderr] 397 | self.layer0.get(i).map(|&x| x).unwrap_or(0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `self.layer0.get(i).cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] error: aborting due to 13 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `hibitset`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: called `map(f)` on an Option value where `f` is a unit closure [INFO] [stderr] --> src/atomic.rs:253:9 [INFO] [stderr] | [INFO] [stderr] 253 | / self.atom [INFO] [stderr] 254 | | .get() [INFO] [stderr] 255 | | .map(|l0| for l in &l0[..] { [INFO] [stderr] 256 | | l.store(0, Ordering::Relaxed); [INFO] [stderr] 257 | | }); [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::option_map_unit_fn)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_map_unit_fn [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 253 | if let Some(l0) = self.atom [INFO] [stderr] 254 | .get() { ... } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/iter/parallel.rs:179:26 [INFO] [stderr] | [INFO] [stderr] 179 | for j in 1..(i + 1) { [INFO] [stderr] | ^^^^^^^^^^ help: use: `1..=i` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/iter/parallel.rs:205:35 [INFO] [stderr] | [INFO] [stderr] 205 | assert_eq!(usize_bits.pow(split_levels as u32 - 1) * 2, count); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(split_levels)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitOrAssign` impl [INFO] [stderr] --> src/ops.rs:17:31 [INFO] [stderr] | [INFO] [stderr] 17 | let lower = level - 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::suspicious_op_assign_impl)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitOrAssign` impl [INFO] [stderr] --> src/ops.rs:18:51 [INFO] [stderr] | [INFO] [stderr] 18 | let idx = iter.prefix[lower] as usize >> BITS; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitAndAssign` impl [INFO] [stderr] --> src/ops.rs:31:27 [INFO] [stderr] | [INFO] [stderr] 31 | iter.masks[LAYERS - 1] &= self.layer3(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitAndAssign` impl [INFO] [stderr] --> src/ops.rs:33:31 [INFO] [stderr] | [INFO] [stderr] 33 | let lower = level - 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitAndAssign` impl [INFO] [stderr] --> src/ops.rs:34:51 [INFO] [stderr] | [INFO] [stderr] 34 | let idx = iter.prefix[lower] as usize >> BITS; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitAndAssign` impl [INFO] [stderr] --> src/ops.rs:47:22 [INFO] [stderr] | [INFO] [stderr] 47 | masks[LAYERS - 1] = self.layer3() & !lhs.layer3(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitAndAssign` impl [INFO] [stderr] --> src/ops.rs:48:52 [INFO] [stderr] | [INFO] [stderr] 48 | BitIter::new(&mut *self, masks, [0; LAYERS - 1]).clear(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitXorAssign` impl [INFO] [stderr] --> src/ops.rs:61:31 [INFO] [stderr] | [INFO] [stderr] 61 | let lower = level - 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitXorAssign` impl [INFO] [stderr] --> src/ops.rs:62:51 [INFO] [stderr] | [INFO] [stderr] 62 | let idx = iter.prefix[lower] as usize >> BITS; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitXorAssign` impl [INFO] [stderr] --> src/ops.rs:68:39 [INFO] [stderr] | [INFO] [stderr] 68 | let lower = level - 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitXorAssign` impl [INFO] [stderr] --> src/ops.rs:70:57 [INFO] [stderr] | [INFO] [stderr] 70 | let l = iter.prefix[lower] as usize >> BITS; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitXorAssign` impl [INFO] [stderr] --> src/ops.rs:74:50 [INFO] [stderr] | [INFO] [stderr] 74 | *self.layer_mut(level, h >> BITS) &= !mask; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] error: Suspicious use of binary operator in `BitXorAssign` impl [INFO] [stderr] --> src/ops.rs:76:50 [INFO] [stderr] | [INFO] [stderr] 76 | *self.layer_mut(level, h >> BITS) |= mask; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_op_assign_impl [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/util.rs:380:38 [INFO] [stderr] | [INFO] [stderr] 380 | average_ones_u64(i as u64).map(|n| n as u32), [INFO] [stderr] | ^^^^^^^^ help: try: `u64::from(i)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:303:5 [INFO] [stderr] | [INFO] [stderr] 303 | / fn drain<'a>(&'a mut self) -> DrainBitIter<'a, Self> [INFO] [stderr] 304 | | where Self: Sized [INFO] [stderr] 305 | | { [INFO] [stderr] 306 | | let layer3 = self.layer3(); [INFO] [stderr] 307 | | [INFO] [stderr] 308 | | DrainBitIter::new(self, [0, 0, 0, layer3], [0; LAYERS - 1]) [INFO] [stderr] 309 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/lib.rs:387:9 [INFO] [stderr] | [INFO] [stderr] 387 | self.layer2.get(i).map(|&x| x).unwrap_or(0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `self.layer2.get(i).cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/lib.rs:392:9 [INFO] [stderr] | [INFO] [stderr] 392 | self.layer1.get(i).map(|&x| x).unwrap_or(0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `self.layer1.get(i).cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/lib.rs:397:9 [INFO] [stderr] | [INFO] [stderr] 397 | self.layer0.get(i).map(|&x| x).unwrap_or(0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `self.layer0.get(i).cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] error: aborting due to 13 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `hibitset`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "e58ad7ce363fed5a382838dafee2d3e9e12850d4a5e647c800c089934e03c2cb"` [INFO] running `"docker" "rm" "-f" "e58ad7ce363fed5a382838dafee2d3e9e12850d4a5e647c800c089934e03c2cb"` [INFO] [stdout] e58ad7ce363fed5a382838dafee2d3e9e12850d4a5e647c800c089934e03c2cb