[INFO] crate jobsteal 0.5.1 is already in cache [INFO] extracting crate jobsteal 0.5.1 into work/ex/clippy-test-run/sources/stable/reg/jobsteal/0.5.1 [INFO] extracting crate jobsteal 0.5.1 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/jobsteal/0.5.1 [INFO] validating manifest of jobsteal-0.5.1 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 jobsteal-0.5.1 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 jobsteal-0.5.1 [INFO] finished frobbing jobsteal-0.5.1 [INFO] frobbed toml for jobsteal-0.5.1 written to work/ex/clippy-test-run/sources/stable/reg/jobsteal/0.5.1/Cargo.toml [INFO] started frobbing jobsteal-0.5.1 [INFO] finished frobbing jobsteal-0.5.1 [INFO] frobbed toml for jobsteal-0.5.1 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/jobsteal/0.5.1/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 jobsteal-0.5.1 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-2/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/jobsteal/0.5.1:/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] a348ab89a71217c4f1bfdfa9e653198e15744048285d045f0dfceb97638fd4a8 [INFO] running `"docker" "start" "-a" "a348ab89a71217c4f1bfdfa9e653198e15744048285d045f0dfceb97638fd4a8"` [INFO] [stderr] Checking jobsteal v0.5.1 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/job.rs:82:13 [INFO] [stderr] | [INFO] [stderr] 82 | counter: counter, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `counter` [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/job.rs:109:17 [INFO] [stderr] | [INFO] [stderr] 109 | raw_data: raw_data, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `raw_data` [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/worker.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | queues: queues, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `queues` [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/worker.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | arenas: arenas, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `arenas` [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/worker.rs:116:13 [INFO] [stderr] | [INFO] [stderr] 116 | shared_data: shared_data, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `shared_data` [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/worker.rs:117:13 [INFO] [stderr] | [INFO] [stderr] 117 | idx: idx, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `idx` [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/enumerate.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | cb: cb, [INFO] [stderr] | ^^^^^^ help: replace it with: `cb` [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/filter.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | cb: cb, [INFO] [stderr] | ^^^^^^ help: replace it with: `cb` [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/flat_map.rs:62:13 [INFO] [stderr] | [INFO] [stderr] 62 | cb: cb, [INFO] [stderr] | ^^^^^^ help: replace it with: `cb` [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/map.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | cb: cb, [INFO] [stderr] | ^^^^^^ help: replace it with: `cb` [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/vec.rs:114:4 [INFO] [stderr] | [INFO] [stderr] 114 | len: len, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `len` [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/zip.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | iter: iter, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `iter` [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/zip.rs:76:13 [INFO] [stderr] | [INFO] [stderr] 76 | cb: cb, [INFO] [stderr] | ^^^^^^ help: replace it with: `cb` [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:102:13 [INFO] [stderr] | [INFO] [stderr] 102 | pred: pred, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `pred` [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:111:13 [INFO] [stderr] | [INFO] [stderr] 111 | flat_map: flat_map [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `flat_map` [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:119:13 [INFO] [stderr] | [INFO] [stderr] 119 | map: map, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `map` [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:198:13 [INFO] [stderr] | [INFO] [stderr] 198 | mul: mul, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `mul` [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/lib.rs:248:9 [INFO] [stderr] | [INFO] [stderr] 248 | worker: worker, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `worker` [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/lib.rs:249:9 [INFO] [stderr] | [INFO] [stderr] 249 | counter: counter, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `counter` [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/lib.rs:327:13 [INFO] [stderr] | [INFO] [stderr] 327 | workers: workers, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `workers` [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/lib.rs:328:13 [INFO] [stderr] | [INFO] [stderr] 328 | local_worker: local_worker, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `local_worker` [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/job.rs:82:13 [INFO] [stderr] | [INFO] [stderr] 82 | counter: counter, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `counter` [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/job.rs:109:17 [INFO] [stderr] | [INFO] [stderr] 109 | raw_data: raw_data, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `raw_data` [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/worker.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | queues: queues, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `queues` [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/worker.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | arenas: arenas, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `arenas` [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/worker.rs:116:13 [INFO] [stderr] | [INFO] [stderr] 116 | shared_data: shared_data, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `shared_data` [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/worker.rs:117:13 [INFO] [stderr] | [INFO] [stderr] 117 | idx: idx, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `idx` [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/enumerate.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | cb: cb, [INFO] [stderr] | ^^^^^^ help: replace it with: `cb` [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/filter.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | cb: cb, [INFO] [stderr] | ^^^^^^ help: replace it with: `cb` [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/flat_map.rs:62:13 [INFO] [stderr] | [INFO] [stderr] 62 | cb: cb, [INFO] [stderr] | ^^^^^^ help: replace it with: `cb` [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/map.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | cb: cb, [INFO] [stderr] | ^^^^^^ help: replace it with: `cb` [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/vec.rs:114:4 [INFO] [stderr] | [INFO] [stderr] 114 | len: len, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `len` [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/zip.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | iter: iter, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `iter` [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/zip.rs:76:13 [INFO] [stderr] | [INFO] [stderr] 76 | cb: cb, [INFO] [stderr] | ^^^^^^ help: replace it with: `cb` [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:102:13 [INFO] [stderr] | [INFO] [stderr] 102 | pred: pred, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `pred` [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:111:13 [INFO] [stderr] | [INFO] [stderr] 111 | flat_map: flat_map [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `flat_map` [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:119:13 [INFO] [stderr] | [INFO] [stderr] 119 | map: map, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `map` [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:198:13 [INFO] [stderr] | [INFO] [stderr] 198 | mul: mul, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `mul` [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/lib.rs:248:9 [INFO] [stderr] | [INFO] [stderr] 248 | worker: worker, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `worker` [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/lib.rs:249:9 [INFO] [stderr] | [INFO] [stderr] 249 | counter: counter, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `counter` [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/lib.rs:327:13 [INFO] [stderr] | [INFO] [stderr] 327 | workers: workers, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `workers` [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/lib.rs:328:13 [INFO] [stderr] | [INFO] [stderr] 328 | local_worker: local_worker, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `local_worker` [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: this if statement can be collapsed [INFO] [stderr] --> src/worker.rs:217:9 [INFO] [stderr] | [INFO] [stderr] 217 | / if should_wait && !self.exit_time.get() { [INFO] [stderr] 218 | | if !self.shared_data.wait(self.idx) { [INFO] [stderr] 219 | | self.exit_time.set(true); [INFO] [stderr] 220 | | // time to shut down. [INFO] [stderr] 221 | | return; [INFO] [stderr] 222 | | } [INFO] [stderr] 223 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 217 | if should_wait && !self.exit_time.get() && !self.shared_data.wait(self.idx) { [INFO] [stderr] 218 | self.exit_time.set(true); [INFO] [stderr] 219 | // time to shut down. [INFO] [stderr] 220 | return; [INFO] [stderr] 221 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/iter/all_any.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | return false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [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: this if statement can be collapsed [INFO] [stderr] --> src/worker.rs:217:9 [INFO] [stderr] | [INFO] [stderr] 217 | / if should_wait && !self.exit_time.get() { [INFO] [stderr] 218 | | if !self.shared_data.wait(self.idx) { [INFO] [stderr] 219 | | self.exit_time.set(true); [INFO] [stderr] 220 | | // time to shut down. [INFO] [stderr] 221 | | return; [INFO] [stderr] 222 | | } [INFO] [stderr] 223 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 217 | if should_wait && !self.exit_time.get() && !self.shared_data.wait(self.idx) { [INFO] [stderr] 218 | self.exit_time.set(true); [INFO] [stderr] 219 | // time to shut down. [INFO] [stderr] 220 | return; [INFO] [stderr] 221 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/iter/all_any.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | return false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [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: variable does not need to be mutable [INFO] [stderr] --> src/arena.rs:62:13 [INFO] [stderr] | [INFO] [stderr] 62 | let mut buf = self.buf.get(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: large size difference between variants [INFO] [stderr] --> src/job.rs:62:5 [INFO] [stderr] | [INFO] [stderr] 62 | Inline(InlineJob), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::large_enum_variant)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant [INFO] [stderr] help: consider boxing the large fields to reduce the total size of the enum [INFO] [stderr] | [INFO] [stderr] 62 | Inline(Box), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/job.rs:122:9 [INFO] [stderr] | [INFO] [stderr] 122 | / match self { [INFO] [stderr] 123 | | &mut Job::Inline(ref mut job) => { [INFO] [stderr] 124 | | let t_obj = TraitObject { [INFO] [stderr] 125 | | data: &mut job.raw_data[0] as *mut _ as *mut (), [INFO] [stderr] ... | [INFO] [stderr] 135 | | } [INFO] [stderr] 136 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 122 | match *self { [INFO] [stderr] 123 | Job::Inline(ref mut job) => { [INFO] [stderr] 124 | let t_obj = TraitObject { [INFO] [stderr] 125 | data: &mut job.raw_data[0] as *mut _ as *mut (), [INFO] [stderr] 126 | vtable: job.vtable, [INFO] [stderr] 127 | }; [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: Consider using an AtomicUsize instead of a Mutex here. If you just want the locking behaviour and not the internal type, consider using Mutex<()>. [INFO] [stderr] --> src/worker.rs:38:24 [INFO] [stderr] | [INFO] [stderr] 38 | with_work: Mutex::new(0), [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::mutex_atomic)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutex_atomic [INFO] [stderr] [INFO] [stderr] warning: Consider using an AtomicUsize instead of a Mutex here. If you just want the locking behaviour and not the internal type, consider using Mutex<()>. [INFO] [stderr] --> src/worker.rs:46:10 [INFO] [stderr] | [INFO] [stderr] 46 | *self.with_work.lock().unwrap() |= EXIT_FLAG; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutex_atomic [INFO] [stderr] [INFO] [stderr] warning: Consider using an AtomicUsize instead of a Mutex here. If you just want the locking behaviour and not the internal type, consider using Mutex<()>. [INFO] [stderr] --> src/worker.rs:53:29 [INFO] [stderr] | [INFO] [stderr] 53 | let mut with_work = self.with_work.lock().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutex_atomic [INFO] [stderr] [INFO] [stderr] warning: Consider using an AtomicUsize instead of a Mutex here. If you just want the locking behaviour and not the internal type, consider using Mutex<()>. [INFO] [stderr] --> src/worker.rs:61:29 [INFO] [stderr] | [INFO] [stderr] 61 | let mut with_work = self.with_work.lock().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutex_atomic [INFO] [stderr] [INFO] [stderr] error: incompatible bit mask: `_ | 2147483648` can never be equal to `0` [INFO] [stderr] --> src/worker.rs:63:12 [INFO] [stderr] | [INFO] [stderr] 63 | if *with_work | EXIT_FLAG == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::bad_bit_mask)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bad_bit_mask [INFO] [stderr] [INFO] [stderr] warning: Consider using an AtomicUsize instead of a Mutex here. If you just want the locking behaviour and not the internal type, consider using Mutex<()>. [INFO] [stderr] --> src/worker.rs:73:25 [INFO] [stderr] | [INFO] [stderr] 73 | let mut guard = self.with_work.lock().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutex_atomic [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/worker.rs:83:9 [INFO] [stderr] | [INFO] [stderr] 83 | / if with_work & EXIT_FLAG != 0 { [INFO] [stderr] 84 | | false [INFO] [stderr] 85 | | } else { [INFO] [stderr] 86 | | true [INFO] [stderr] 87 | | } [INFO] [stderr] | |_________^ help: you can reduce it to: `!(with_work & EXIT_FLAG != 0)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `while let` loop [INFO] [stderr] --> src/worker.rs:172:17 [INFO] [stderr] | [INFO] [stderr] 172 | / loop { [INFO] [stderr] 173 | | match unsafe { self.queue().try_pop() } { [INFO] [stderr] 174 | | Some(job) => { [INFO] [stderr] 175 | | all_clear = false; [INFO] [stderr] ... | [INFO] [stderr] 181 | | } [INFO] [stderr] 182 | | } [INFO] [stderr] | |_________________^ help: try: `while let Some(job) = unsafe { self.queue().try_pop() } { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stderr] [INFO] [stderr] error: mutable borrow from immutable input(s) [INFO] [stderr] --> src/worker.rs:319:31 [INFO] [stderr] | [INFO] [stderr] 319 | unsafe fn queue(&self) -> &mut Queue { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::mut_from_ref)] on by default [INFO] [stderr] note: immutable borrow here [INFO] [stderr] --> src/worker.rs:319:21 [INFO] [stderr] | [INFO] [stderr] 319 | unsafe fn queue(&self) -> &mut Queue { [INFO] [stderr] | ^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mut_from_ref [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `for` loop [INFO] [stderr] --> src/iter/vec.rs:50:23 [INFO] [stderr] | [INFO] [stderr] 50 | while let Some(_) = self.next() {} [INFO] [stderr] | ^^^^^^^^^^^ help: try: `for _ in self { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_on_iterator)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stderr] [INFO] [stderr] warning: use of `offset` with a `usize` casted to an `isize` [INFO] [stderr] --> src/iter/vec.rs:67:26 [INFO] [stderr] | [INFO] [stderr] 67 | let cur_ptr = unsafe { self.items.inner.as_ptr().offset(self.start as isize) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `self.items.inner.as_ptr().add(self.start)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_offset_with_cast)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_offset_with_cast [INFO] [stderr] [INFO] [stderr] warning: use of `offset` with a `usize` casted to an `isize` [INFO] [stderr] --> src/iter/vec.rs:68:26 [INFO] [stderr] | [INFO] [stderr] 68 | let end_ptr = unsafe { cur_ptr.offset(self.len as isize) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `cur_ptr.add(self.len)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_offset_with_cast [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> src/iter/mod.rs:444:51 [INFO] [stderr] | [INFO] [stderr] 444 | fn into_iter(self) -> Self::IntoIter { self.0.into_iter() } [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::into_iter_on_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter_mut() and will not move the slice [INFO] [stderr] --> src/iter/mod.rs:451:51 [INFO] [stderr] | [INFO] [stderr] 451 | fn into_iter(self) -> Self::IntoIter { self.0.into_iter() } [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter_mut` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/lib.rs:287:22 [INFO] [stderr] | [INFO] [stderr] 287 | for _ in 0..n+1 { [INFO] [stderr] | ^^^^^^ help: use: `0..=n` [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: an inclusive range would be more readable [INFO] [stderr] --> src/lib.rs:299:22 [INFO] [stderr] | [INFO] [stderr] 299 | let arenas = (0..n + 1).map(|_| Arena::new()).collect::>(); [INFO] [stderr] | ^^^^^^^^^^ help: use: `(0..=n)` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:377:5 [INFO] [stderr] | [INFO] [stderr] 377 | / pub fn submit<'a, F>(&'a mut self, f: F) [INFO] [stderr] 378 | | where F: 'static + Send + FnOnce() [INFO] [stderr] 379 | | { [INFO] [stderr] 380 | | self.spawner().submit(f); [INFO] [stderr] 381 | | } [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] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `jobsteal`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/arena.rs:62:13 [INFO] [stderr] | [INFO] [stderr] 62 | let mut buf = self.buf.get(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: large size difference between variants [INFO] [stderr] --> src/job.rs:62:5 [INFO] [stderr] | [INFO] [stderr] 62 | Inline(InlineJob), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::large_enum_variant)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant [INFO] [stderr] help: consider boxing the large fields to reduce the total size of the enum [INFO] [stderr] | [INFO] [stderr] 62 | Inline(Box), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/job.rs:122:9 [INFO] [stderr] | [INFO] [stderr] 122 | / match self { [INFO] [stderr] 123 | | &mut Job::Inline(ref mut job) => { [INFO] [stderr] 124 | | let t_obj = TraitObject { [INFO] [stderr] 125 | | data: &mut job.raw_data[0] as *mut _ as *mut (), [INFO] [stderr] ... | [INFO] [stderr] 135 | | } [INFO] [stderr] 136 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 122 | match *self { [INFO] [stderr] 123 | Job::Inline(ref mut job) => { [INFO] [stderr] 124 | let t_obj = TraitObject { [INFO] [stderr] 125 | data: &mut job.raw_data[0] as *mut _ as *mut (), [INFO] [stderr] 126 | vtable: job.vtable, [INFO] [stderr] 127 | }; [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: Consider using an AtomicUsize instead of a Mutex here. If you just want the locking behaviour and not the internal type, consider using Mutex<()>. [INFO] [stderr] --> src/worker.rs:38:24 [INFO] [stderr] | [INFO] [stderr] 38 | with_work: Mutex::new(0), [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::mutex_atomic)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutex_atomic [INFO] [stderr] [INFO] [stderr] warning: Consider using an AtomicUsize instead of a Mutex here. If you just want the locking behaviour and not the internal type, consider using Mutex<()>. [INFO] [stderr] --> src/worker.rs:46:10 [INFO] [stderr] | [INFO] [stderr] 46 | *self.with_work.lock().unwrap() |= EXIT_FLAG; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutex_atomic [INFO] [stderr] [INFO] [stderr] warning: Consider using an AtomicUsize instead of a Mutex here. If you just want the locking behaviour and not the internal type, consider using Mutex<()>. [INFO] [stderr] --> src/worker.rs:53:29 [INFO] [stderr] | [INFO] [stderr] 53 | let mut with_work = self.with_work.lock().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutex_atomic [INFO] [stderr] [INFO] [stderr] warning: Consider using an AtomicUsize instead of a Mutex here. If you just want the locking behaviour and not the internal type, consider using Mutex<()>. [INFO] [stderr] --> src/worker.rs:61:29 [INFO] [stderr] | [INFO] [stderr] 61 | let mut with_work = self.with_work.lock().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutex_atomic [INFO] [stderr] [INFO] [stderr] error: incompatible bit mask: `_ | 2147483648` can never be equal to `0` [INFO] [stderr] --> src/worker.rs:63:12 [INFO] [stderr] | [INFO] [stderr] 63 | if *with_work | EXIT_FLAG == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::bad_bit_mask)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bad_bit_mask [INFO] [stderr] [INFO] [stderr] warning: Consider using an AtomicUsize instead of a Mutex here. If you just want the locking behaviour and not the internal type, consider using Mutex<()>. [INFO] [stderr] --> src/worker.rs:73:25 [INFO] [stderr] | [INFO] [stderr] 73 | let mut guard = self.with_work.lock().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutex_atomic [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/worker.rs:83:9 [INFO] [stderr] | [INFO] [stderr] 83 | / if with_work & EXIT_FLAG != 0 { [INFO] [stderr] 84 | | false [INFO] [stderr] 85 | | } else { [INFO] [stderr] 86 | | true [INFO] [stderr] 87 | | } [INFO] [stderr] | |_________^ help: you can reduce it to: `!(with_work & EXIT_FLAG != 0)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `while let` loop [INFO] [stderr] --> src/worker.rs:172:17 [INFO] [stderr] | [INFO] [stderr] 172 | / loop { [INFO] [stderr] 173 | | match unsafe { self.queue().try_pop() } { [INFO] [stderr] 174 | | Some(job) => { [INFO] [stderr] 175 | | all_clear = false; [INFO] [stderr] ... | [INFO] [stderr] 181 | | } [INFO] [stderr] 182 | | } [INFO] [stderr] | |_________________^ help: try: `while let Some(job) = unsafe { self.queue().try_pop() } { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stderr] [INFO] [stderr] error: mutable borrow from immutable input(s) [INFO] [stderr] --> src/worker.rs:319:31 [INFO] [stderr] | [INFO] [stderr] 319 | unsafe fn queue(&self) -> &mut Queue { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::mut_from_ref)] on by default [INFO] [stderr] note: immutable borrow here [INFO] [stderr] --> src/worker.rs:319:21 [INFO] [stderr] | [INFO] [stderr] 319 | unsafe fn queue(&self) -> &mut Queue { [INFO] [stderr] | ^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mut_from_ref [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `for` loop [INFO] [stderr] --> src/iter/vec.rs:50:23 [INFO] [stderr] | [INFO] [stderr] 50 | while let Some(_) = self.next() {} [INFO] [stderr] | ^^^^^^^^^^^ help: try: `for _ in self { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_on_iterator)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stderr] [INFO] [stderr] warning: use of `offset` with a `usize` casted to an `isize` [INFO] [stderr] --> src/iter/vec.rs:67:26 [INFO] [stderr] | [INFO] [stderr] 67 | let cur_ptr = unsafe { self.items.inner.as_ptr().offset(self.start as isize) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `self.items.inner.as_ptr().add(self.start)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_offset_with_cast)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_offset_with_cast [INFO] [stderr] [INFO] [stderr] warning: use of `offset` with a `usize` casted to an `isize` [INFO] [stderr] --> src/iter/vec.rs:68:26 [INFO] [stderr] | [INFO] [stderr] 68 | let end_ptr = unsafe { cur_ptr.offset(self.len as isize) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `cur_ptr.add(self.len)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_offset_with_cast [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> src/iter/mod.rs:444:51 [INFO] [stderr] | [INFO] [stderr] 444 | fn into_iter(self) -> Self::IntoIter { self.0.into_iter() } [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::into_iter_on_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter_mut() and will not move the slice [INFO] [stderr] --> src/iter/mod.rs:451:51 [INFO] [stderr] | [INFO] [stderr] 451 | fn into_iter(self) -> Self::IntoIter { self.0.into_iter() } [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter_mut` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/lib.rs:287:22 [INFO] [stderr] | [INFO] [stderr] 287 | for _ in 0..n+1 { [INFO] [stderr] | ^^^^^^ help: use: `0..=n` [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: an inclusive range would be more readable [INFO] [stderr] --> src/lib.rs:299:22 [INFO] [stderr] | [INFO] [stderr] 299 | let arenas = (0..n + 1).map(|_| Arena::new()).collect::>(); [INFO] [stderr] | ^^^^^^^^^^ help: use: `(0..=n)` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/lib.rs:377:5 [INFO] [stderr] | [INFO] [stderr] 377 | / pub fn submit<'a, F>(&'a mut self, f: F) [INFO] [stderr] 378 | | where F: 'static + Send + FnOnce() [INFO] [stderr] 379 | | { [INFO] [stderr] 380 | | self.spawner().submit(f); [INFO] [stderr] 381 | | } [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] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `jobsteal`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "a348ab89a71217c4f1bfdfa9e653198e15744048285d045f0dfceb97638fd4a8"` [INFO] running `"docker" "rm" "-f" "a348ab89a71217c4f1bfdfa9e653198e15744048285d045f0dfceb97638fd4a8"` [INFO] [stdout] a348ab89a71217c4f1bfdfa9e653198e15744048285d045f0dfceb97638fd4a8