[INFO] crate vebtrees 0.1.3 is already in cache [INFO] extracting crate vebtrees 0.1.3 into work/ex/clippy-test-run/sources/stable/reg/vebtrees/0.1.3 [INFO] extracting crate vebtrees 0.1.3 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/vebtrees/0.1.3 [INFO] validating manifest of vebtrees-0.1.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 vebtrees-0.1.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 vebtrees-0.1.3 [INFO] finished frobbing vebtrees-0.1.3 [INFO] frobbed toml for vebtrees-0.1.3 written to work/ex/clippy-test-run/sources/stable/reg/vebtrees/0.1.3/Cargo.toml [INFO] started frobbing vebtrees-0.1.3 [INFO] finished frobbing vebtrees-0.1.3 [INFO] frobbed toml for vebtrees-0.1.3 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/vebtrees/0.1.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 vebtrees-0.1.3 against stable+rustflags=-Dclippy::into_iter_on_array for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-2/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/vebtrees/0.1.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 -Dclippy::into_iter_on_array" "-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] 6db634291c9e5c34089a971bb7cc403aa7d36b2d2cd65d71b65d13b521ec29d2 [INFO] running `"docker" "start" "-a" "6db634291c9e5c34089a971bb7cc403aa7d36b2d2cd65d71b65d13b521ec29d2"` [INFO] [stderr] Checking vebtrees v0.1.3 (/opt/crater/workdir) [INFO] [stderr] warning: unused imports: `Duration`, `Instant` [INFO] [stderr] --> src/tests.rs:3:17 [INFO] [stderr] | [INFO] [stderr] 3 | use std::time::{Instant, Duration}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `for` head expression [INFO] [stderr] --> src/test_asymptotes.rs:9:14 [INFO] [stderr] | [INFO] [stderr] 9 | for i in (0..num_runs) { [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `for` head expression [INFO] [stderr] --> src/test_asymptotes.rs:39:14 [INFO] [stderr] | [INFO] [stderr] 39 | for i in (0..num_runs) { [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `for` head expression [INFO] [stderr] --> src/test_asymptotes.rs:74:14 [INFO] [stderr] | [INFO] [stderr] 74 | for i in (0..num_runs) { [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `for` head expression [INFO] [stderr] --> src/test_asymptotes.rs:108:14 [INFO] [stderr] | [INFO] [stderr] 108 | for i in (0..num_runs) { [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/test_asymptotes.rs:144:5 [INFO] [stderr] | [INFO] [stderr] 144 | / return ((elapsed.as_secs() as f64)*1_000_000_000.0) [INFO] [stderr] 145 | | + ( elapsed.subsec_nanos() as f64); [INFO] [stderr] | |___________________________________________^ [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] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 144 | ((elapsed.as_secs() as f64)*1_000_000_000.0) [INFO] [stderr] 145 | + ( elapsed.subsec_nanos() as f64) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/test_asymptotes.rs:182:5 [INFO] [stderr] | [INFO] [stderr] 182 | return numerator/denominator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `numerator/denominator` [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/lib.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 71 | return tree [INFO] [stderr] | ^^^^^^^^^^^ help: remove `return` as shown: `tree` [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/lib.rs:86:9 [INFO] [stderr] | [INFO] [stderr] 86 | return value / self.children.len(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `value / self.children.len()` [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/lib.rs:99:9 [INFO] [stderr] | [INFO] [stderr] 99 | return value % self.children.len(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `value % self.children.len()` [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/lib.rs:114:21 [INFO] [stderr] | [INFO] [stderr] 114 | 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/lib.rs:119:33 [INFO] [stderr] | [INFO] [stderr] 119 | 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/lib.rs:122:37 [INFO] [stderr] | [INFO] [stderr] 122 | / return self [INFO] [stderr] 123 | | .children[self.high(value)] [INFO] [stderr] 124 | | .contains(self.low(value)); [INFO] [stderr] | |___________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 122 | self [INFO] [stderr] 123 | .children[self.high(value)] [INFO] [stderr] 124 | .contains(self.low(value)) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:126:37 [INFO] [stderr] | [INFO] [stderr] 126 | return false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [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/lib.rs:130:34 [INFO] [stderr] | [INFO] [stderr] 130 | None => {return false;} [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [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/lib.rs:134:22 [INFO] [stderr] | [INFO] [stderr] 134 | None => {return false;} [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [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: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/lib.rs:120:36 [INFO] [stderr] | [INFO] [stderr] 120 | } else { [INFO] [stderr] | ____________________________________^ [INFO] [stderr] 121 | | if self.children.len() > 0 { [INFO] [stderr] 122 | | return self [INFO] [stderr] 123 | | .children[self.high(value)] [INFO] [stderr] ... | [INFO] [stderr] 127 | | } [INFO] [stderr] 128 | | } [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] 120 | } else if self.children.len() > 0 { [INFO] [stderr] 121 | return self [INFO] [stderr] 122 | .children[self.high(value)] [INFO] [stderr] 123 | .contains(self.low(value)); [INFO] [stderr] 124 | } else { [INFO] [stderr] 125 | return false; [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:158:13 [INFO] [stderr] | [INFO] [stderr] 158 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [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/lib.rs:164:13 [INFO] [stderr] | [INFO] [stderr] 164 | return Some(result+local_idx*self.children.len()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(result+local_idx*self.children.len())` [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: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/lib.rs:204:36 [INFO] [stderr] | [INFO] [stderr] 204 | } else { [INFO] [stderr] | ____________________________________^ [INFO] [stderr] 205 | | if value < min_value { [INFO] [stderr] 206 | | self.min = Some(value); [INFO] [stderr] 207 | | self.insert_into_tree(value); [INFO] [stderr] ... | [INFO] [stderr] 216 | | } [INFO] [stderr] 217 | | } [INFO] [stderr] | |_____________________________^ [INFO] [stderr] | [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] 204 | } else if value < min_value { [INFO] [stderr] 205 | self.min = Some(value); [INFO] [stderr] 206 | self.insert_into_tree(value); [INFO] [stderr] 207 | return; [INFO] [stderr] 208 | } else if value > max_value { [INFO] [stderr] 209 | self.max = Some(value); [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around function argument [INFO] [stderr] --> src/lib.rs:285:61 [INFO] [stderr] | [INFO] [stderr] 285 | self.min = Some((first_cluster [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 286 | | * self.children.len() as T [INFO] [stderr] 287 | | + min)); [INFO] [stderr] | |___________________________________________________________________^ [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 285 | self.min = Some(first_cluster [INFO] [stderr] 286 | * self.children.len() as T [INFO] [stderr] 287 | + min); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/lib.rs:285:61 [INFO] [stderr] | [INFO] [stderr] 285 | self.min = Some((first_cluster [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 286 | | * self.children.len() as T [INFO] [stderr] 287 | | + min)); [INFO] [stderr] | |___________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::double_parens)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around function argument [INFO] [stderr] --> src/lib.rs:312:61 [INFO] [stderr] | [INFO] [stderr] 312 | self.max = Some((last_cluster [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 313 | | * self.children.len() as T [INFO] [stderr] 314 | | + max)); [INFO] [stderr] | |___________________________________________________________________^ [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 312 | self.max = Some(last_cluster [INFO] [stderr] 313 | * self.children.len() as T [INFO] [stderr] 314 | + max); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/lib.rs:312:61 [INFO] [stderr] | [INFO] [stderr] 312 | self.max = Some((last_cluster [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 313 | | * self.children.len() as T [INFO] [stderr] 314 | | + max)); [INFO] [stderr] | |___________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:360:9 [INFO] [stderr] | [INFO] [stderr] 360 | return self.min; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.min` [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/lib.rs:371:9 [INFO] [stderr] | [INFO] [stderr] 371 | return self.max; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.max` [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/lib.rs:387:17 [INFO] [stderr] | [INFO] [stderr] 387 | return self.max; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.max` [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/lib.rs:389:17 [INFO] [stderr] | [INFO] [stderr] 389 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [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/lib.rs:420:13 [INFO] [stderr] | [INFO] [stderr] 420 | / return match self.children[next_cluster].search(offset) { [INFO] [stderr] 421 | | Some(n) => { [INFO] [stderr] 422 | | return Some(n + next_cluster*self.children.len()); [INFO] [stderr] 423 | | }, [INFO] [stderr] ... | [INFO] [stderr] 426 | | } [INFO] [stderr] 427 | | }; [INFO] [stderr] | |______________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 420 | match self.children[next_cluster].search(offset) { [INFO] [stderr] 421 | Some(n) => { [INFO] [stderr] 422 | return Some(n + next_cluster*self.children.len()); [INFO] [stderr] 423 | }, [INFO] [stderr] 424 | None => { [INFO] [stderr] 425 | return None; [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:444:17 [INFO] [stderr] | [INFO] [stderr] 444 | return self.min; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.min` [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/lib.rs:446:17 [INFO] [stderr] | [INFO] [stderr] 446 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [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/lib.rs:477:13 [INFO] [stderr] | [INFO] [stderr] 477 | / return match self.children[next_cluster].search(offset) { [INFO] [stderr] 478 | | Some(n) => { [INFO] [stderr] 479 | | return Some(n + next_cluster*self.children.len()); [INFO] [stderr] 480 | | }, [INFO] [stderr] ... | [INFO] [stderr] 483 | | } [INFO] [stderr] 484 | | }; [INFO] [stderr] | |______________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 477 | match self.children[next_cluster].search(offset) { [INFO] [stderr] 478 | Some(n) => { [INFO] [stderr] 479 | return Some(n + next_cluster*self.children.len()); [INFO] [stderr] 480 | }, [INFO] [stderr] 481 | None => { [INFO] [stderr] 482 | return None; [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 71 | return tree [INFO] [stderr] | ^^^^^^^^^^^ help: remove `return` as shown: `tree` [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: unneeded return statement [INFO] [stderr] --> src/lib.rs:86:9 [INFO] [stderr] | [INFO] [stderr] 86 | return value / self.children.len(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `value / self.children.len()` [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/lib.rs:99:9 [INFO] [stderr] | [INFO] [stderr] 99 | return value % self.children.len(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `value % self.children.len()` [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/lib.rs:114:21 [INFO] [stderr] | [INFO] [stderr] 114 | 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/lib.rs:119:33 [INFO] [stderr] | [INFO] [stderr] 119 | 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/lib.rs:122:37 [INFO] [stderr] | [INFO] [stderr] 122 | / return self [INFO] [stderr] 123 | | .children[self.high(value)] [INFO] [stderr] 124 | | .contains(self.low(value)); [INFO] [stderr] | |___________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 122 | self [INFO] [stderr] 123 | .children[self.high(value)] [INFO] [stderr] 124 | .contains(self.low(value)) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:126:37 [INFO] [stderr] | [INFO] [stderr] 126 | return false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [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/lib.rs:130:34 [INFO] [stderr] | [INFO] [stderr] 130 | None => {return false;} [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [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/lib.rs:134:22 [INFO] [stderr] | [INFO] [stderr] 134 | None => {return false;} [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [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: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/lib.rs:120:36 [INFO] [stderr] | [INFO] [stderr] 120 | } else { [INFO] [stderr] | ____________________________________^ [INFO] [stderr] 121 | | if self.children.len() > 0 { [INFO] [stderr] 122 | | return self [INFO] [stderr] 123 | | .children[self.high(value)] [INFO] [stderr] ... | [INFO] [stderr] 127 | | } [INFO] [stderr] 128 | | } [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] 120 | } else if self.children.len() > 0 { [INFO] [stderr] 121 | return self [INFO] [stderr] 122 | .children[self.high(value)] [INFO] [stderr] 123 | .contains(self.low(value)); [INFO] [stderr] 124 | } else { [INFO] [stderr] 125 | return false; [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:158:13 [INFO] [stderr] | [INFO] [stderr] 158 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [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/lib.rs:164:13 [INFO] [stderr] | [INFO] [stderr] 164 | return Some(result+local_idx*self.children.len()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(result+local_idx*self.children.len())` [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: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/lib.rs:204:36 [INFO] [stderr] | [INFO] [stderr] 204 | } else { [INFO] [stderr] | ____________________________________^ [INFO] [stderr] 205 | | if value < min_value { [INFO] [stderr] 206 | | self.min = Some(value); [INFO] [stderr] 207 | | self.insert_into_tree(value); [INFO] [stderr] ... | [INFO] [stderr] 216 | | } [INFO] [stderr] 217 | | } [INFO] [stderr] | |_____________________________^ [INFO] [stderr] | [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] 204 | } else if value < min_value { [INFO] [stderr] 205 | self.min = Some(value); [INFO] [stderr] 206 | self.insert_into_tree(value); [INFO] [stderr] 207 | return; [INFO] [stderr] 208 | } else if value > max_value { [INFO] [stderr] 209 | self.max = Some(value); [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around function argument [INFO] [stderr] --> src/lib.rs:285:61 [INFO] [stderr] | [INFO] [stderr] 285 | self.min = Some((first_cluster [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 286 | | * self.children.len() as T [INFO] [stderr] 287 | | + min)); [INFO] [stderr] | |___________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 285 | self.min = Some(first_cluster [INFO] [stderr] 286 | * self.children.len() as T [INFO] [stderr] 287 | + min); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/lib.rs:285:61 [INFO] [stderr] | [INFO] [stderr] 285 | self.min = Some((first_cluster [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 286 | | * self.children.len() as T [INFO] [stderr] 287 | | + min)); [INFO] [stderr] | |___________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::double_parens)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around function argument [INFO] [stderr] --> src/lib.rs:312:61 [INFO] [stderr] | [INFO] [stderr] 312 | self.max = Some((last_cluster [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 313 | | * self.children.len() as T [INFO] [stderr] 314 | | + max)); [INFO] [stderr] | |___________________________________________________________________^ [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 312 | self.max = Some(last_cluster [INFO] [stderr] 313 | * self.children.len() as T [INFO] [stderr] 314 | + max); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/lib.rs:312:61 [INFO] [stderr] | [INFO] [stderr] 312 | self.max = Some((last_cluster [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 313 | | * self.children.len() as T [INFO] [stderr] 314 | | + max)); [INFO] [stderr] | |___________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:360:9 [INFO] [stderr] | [INFO] [stderr] 360 | return self.min; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.min` [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/lib.rs:371:9 [INFO] [stderr] | [INFO] [stderr] 371 | return self.max; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.max` [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/lib.rs:387:17 [INFO] [stderr] | [INFO] [stderr] 387 | return self.max; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.max` [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/lib.rs:389:17 [INFO] [stderr] | [INFO] [stderr] 389 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [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/lib.rs:420:13 [INFO] [stderr] | [INFO] [stderr] 420 | / return match self.children[next_cluster].search(offset) { [INFO] [stderr] 421 | | Some(n) => { [INFO] [stderr] 422 | | return Some(n + next_cluster*self.children.len()); [INFO] [stderr] 423 | | }, [INFO] [stderr] ... | [INFO] [stderr] 426 | | } [INFO] [stderr] 427 | | }; [INFO] [stderr] | |______________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 420 | match self.children[next_cluster].search(offset) { [INFO] [stderr] 421 | Some(n) => { [INFO] [stderr] 422 | return Some(n + next_cluster*self.children.len()); [INFO] [stderr] 423 | }, [INFO] [stderr] 424 | None => { [INFO] [stderr] 425 | return None; [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:444:17 [INFO] [stderr] | [INFO] [stderr] 444 | return self.min; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.min` [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/lib.rs:446:17 [INFO] [stderr] | [INFO] [stderr] 446 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [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/lib.rs:477:13 [INFO] [stderr] | [INFO] [stderr] 477 | / return match self.children[next_cluster].search(offset) { [INFO] [stderr] 478 | | Some(n) => { [INFO] [stderr] 479 | | return Some(n + next_cluster*self.children.len()); [INFO] [stderr] 480 | | }, [INFO] [stderr] ... | [INFO] [stderr] 483 | | } [INFO] [stderr] 484 | | }; [INFO] [stderr] | |______________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 477 | match self.children[next_cluster].search(offset) { [INFO] [stderr] 478 | Some(n) => { [INFO] [stderr] 479 | return Some(n + next_cluster*self.children.len()); [INFO] [stderr] 480 | }, [INFO] [stderr] 481 | None => { [INFO] [stderr] 482 | return None; [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib.rs:406:25 [INFO] [stderr] | [INFO] [stderr] 406 | / return match self.children[self.high(value)].search(offset) { [INFO] [stderr] 407 | | Some(n) => { [INFO] [stderr] 408 | | return Some(n + self.high(value)*self.children.len()); [INFO] [stderr] 409 | | }, [INFO] [stderr] ... | [INFO] [stderr] 412 | | } [INFO] [stderr] 413 | | }; [INFO] [stderr] | |_________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unreachable_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib.rs:420:13 [INFO] [stderr] | [INFO] [stderr] 420 | / return match self.children[next_cluster].search(offset) { [INFO] [stderr] 421 | | Some(n) => { [INFO] [stderr] 422 | | return Some(n + next_cluster*self.children.len()); [INFO] [stderr] 423 | | }, [INFO] [stderr] ... | [INFO] [stderr] 426 | | } [INFO] [stderr] 427 | | }; [INFO] [stderr] | |_____________^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib.rs:463:25 [INFO] [stderr] | [INFO] [stderr] 463 | / return match self.children[self.high(value)].search(offset) { [INFO] [stderr] 464 | | Some(n) => { [INFO] [stderr] 465 | | return Some(n + self.high(value)*self.children.len()); [INFO] [stderr] 466 | | }, [INFO] [stderr] ... | [INFO] [stderr] 469 | | } [INFO] [stderr] 470 | | }; [INFO] [stderr] | |_________________________^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib.rs:406:25 [INFO] [stderr] | [INFO] [stderr] 406 | / return match self.children[self.high(value)].search(offset) { [INFO] [stderr] 407 | | Some(n) => { [INFO] [stderr] 408 | | return Some(n + self.high(value)*self.children.len()); [INFO] [stderr] 409 | | }, [INFO] [stderr] ... | [INFO] [stderr] 412 | | } [INFO] [stderr] 413 | | }; [INFO] [stderr] | |_________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unreachable_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib.rs:477:13 [INFO] [stderr] | [INFO] [stderr] 477 | / return match self.children[next_cluster].search(offset) { [INFO] [stderr] 478 | | Some(n) => { [INFO] [stderr] 479 | | return Some(n + next_cluster*self.children.len()); [INFO] [stderr] 480 | | }, [INFO] [stderr] ... | [INFO] [stderr] 483 | | } [INFO] [stderr] 484 | | }; [INFO] [stderr] | |_____________^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib.rs:420:13 [INFO] [stderr] | [INFO] [stderr] 420 | / return match self.children[next_cluster].search(offset) { [INFO] [stderr] 421 | | Some(n) => { [INFO] [stderr] 422 | | return Some(n + next_cluster*self.children.len()); [INFO] [stderr] 423 | | }, [INFO] [stderr] ... | [INFO] [stderr] 426 | | } [INFO] [stderr] 427 | | }; [INFO] [stderr] | |_____________^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib.rs:463:25 [INFO] [stderr] | [INFO] [stderr] 463 | / return match self.children[self.high(value)].search(offset) { [INFO] [stderr] 464 | | Some(n) => { [INFO] [stderr] 465 | | return Some(n + self.high(value)*self.children.len()); [INFO] [stderr] 466 | | }, [INFO] [stderr] ... | [INFO] [stderr] 469 | | } [INFO] [stderr] 470 | | }; [INFO] [stderr] | |_________________________^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib.rs:477:13 [INFO] [stderr] | [INFO] [stderr] 477 | / return match self.children[next_cluster].search(offset) { [INFO] [stderr] 478 | | Some(n) => { [INFO] [stderr] 479 | | return Some(n + next_cluster*self.children.len()); [INFO] [stderr] 480 | | }, [INFO] [stderr] ... | [INFO] [stderr] 483 | | } [INFO] [stderr] 484 | | }; [INFO] [stderr] | |_____________^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/lib.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | for index in 0..self_size { [INFO] [stderr] | ^^^^^ help: consider using `_index` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `min_value` [INFO] [stderr] --> src/lib.rs:179:22 [INFO] [stderr] | [INFO] [stderr] 179 | Some(min_value) => (), [INFO] [stderr] | ^^^^^^^^^ help: consider using `_min_value` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `min_val` [INFO] [stderr] --> src/lib.rs:384:17 [INFO] [stderr] | [INFO] [stderr] 384 | let min_val = self.min?; [INFO] [stderr] | ^^^^^^^ help: consider using `_min_val` instead [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:62:17 [INFO] [stderr] | [INFO] [stderr] 62 | let mut aux = Self::new(pass_size); [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: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:65:13 [INFO] [stderr] | [INFO] [stderr] 65 | let mut tree = VEBTree { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/lib.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | / let pass_size: usize; [INFO] [stderr] 48 | | if max_size <= 2 { [INFO] [stderr] 49 | | self_size = 0; [INFO] [stderr] 50 | | pass_size = 0; [INFO] [stderr] ... | [INFO] [stderr] 54 | | pass_size = tmp; [INFO] [stderr] 55 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let pass_size = if max_size <= 2 { ..; 0 } else { ..; tmp };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:121:36 [INFO] [stderr] | [INFO] [stderr] 121 | if self.children.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.children.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:157:12 [INFO] [stderr] | [INFO] [stderr] 157 | if self.children.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.children.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:175:12 [INFO] [stderr] | [INFO] [stderr] 175 | if self.children.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.children.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:244:12 [INFO] [stderr] | [INFO] [stderr] 244 | if self.children.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.children.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:269:35 [INFO] [stderr] | [INFO] [stderr] 269 | } else if self.children.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.children.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:383:12 [INFO] [stderr] | [INFO] [stderr] 383 | if self.children.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.children.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/lib.rs:392:13 [INFO] [stderr] | [INFO] [stderr] 392 | / match self.min { [INFO] [stderr] 393 | | Some(min_value) => { [INFO] [stderr] 394 | | if value < min_value { [INFO] [stderr] 395 | | return self.min [INFO] [stderr] ... | [INFO] [stderr] 398 | | None => () [INFO] [stderr] 399 | | }; [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 392 | if let Some(min_value) = self.min { [INFO] [stderr] 393 | if value < min_value { [INFO] [stderr] 394 | return self.min [INFO] [stderr] 395 | } [INFO] [stderr] 396 | }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/lib.rs:401:13 [INFO] [stderr] | [INFO] [stderr] 401 | / match cur_cluster_max { [INFO] [stderr] 402 | | Some(max_value) => { [INFO] [stderr] 403 | | if self.low(value) < max_value { [INFO] [stderr] 404 | | let offset = self.children[self.high(value)] [INFO] [stderr] ... | [INFO] [stderr] 416 | | None => () [INFO] [stderr] 417 | | }; [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 401 | if let Some(max_value) = cur_cluster_max { [INFO] [stderr] 402 | if self.low(value) < max_value { [INFO] [stderr] 403 | let offset = self.children[self.high(value)] [INFO] [stderr] 404 | .findnext(self.low(value))?; [INFO] [stderr] 405 | return match self.children[self.high(value)].search(offset) { [INFO] [stderr] 406 | Some(n) => { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:440:12 [INFO] [stderr] | [INFO] [stderr] 440 | if self.children.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.children.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/lib.rs:449:13 [INFO] [stderr] | [INFO] [stderr] 449 | / match self.maximum() { [INFO] [stderr] 450 | | Some(max_value) => { [INFO] [stderr] 451 | | if value > max_value { [INFO] [stderr] 452 | | return self.max; [INFO] [stderr] ... | [INFO] [stderr] 455 | | None => () [INFO] [stderr] 456 | | }; [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 449 | if let Some(max_value) = self.maximum() { [INFO] [stderr] 450 | if value > max_value { [INFO] [stderr] 451 | return self.max; [INFO] [stderr] 452 | } [INFO] [stderr] 453 | }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/lib.rs:458:13 [INFO] [stderr] | [INFO] [stderr] 458 | / match cur_cluster_min { [INFO] [stderr] 459 | | Some(min_value) => { [INFO] [stderr] 460 | | if self.low(value) > min_value { [INFO] [stderr] 461 | | let offset = self.children[self.high(value)] [INFO] [stderr] ... | [INFO] [stderr] 473 | | None => () [INFO] [stderr] 474 | | }; [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 458 | if let Some(min_value) = cur_cluster_min { [INFO] [stderr] 459 | if self.low(value) > min_value { [INFO] [stderr] 460 | let offset = self.children[self.high(value)] [INFO] [stderr] 461 | .findprev(self.low(value))?; [INFO] [stderr] 462 | return match self.children[self.high(value)].search(offset) { [INFO] [stderr] 463 | Some(n) => { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/lib.rs:59:17 [INFO] [stderr] | [INFO] [stderr] 59 | for index in 0..self_size { [INFO] [stderr] | ^^^^^ help: consider using `_index` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `min_value` [INFO] [stderr] --> src/lib.rs:179:22 [INFO] [stderr] | [INFO] [stderr] 179 | Some(min_value) => (), [INFO] [stderr] | ^^^^^^^^^ help: consider using `_min_value` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `min_val` [INFO] [stderr] --> src/lib.rs:384:17 [INFO] [stderr] | [INFO] [stderr] 384 | let min_val = self.min?; [INFO] [stderr] | ^^^^^^^ help: consider using `_min_val` instead [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:62:17 [INFO] [stderr] | [INFO] [stderr] 62 | let mut aux = Self::new(pass_size); [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: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:65:13 [INFO] [stderr] | [INFO] [stderr] 65 | let mut tree = VEBTree { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/tests.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | let mut reference_tree = VEBTree::new(16); [INFO] [stderr] | ----^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `test_results`. [INFO] [stderr] --> src/test_asymptotes.rs:24:14 [INFO] [stderr] | [INFO] [stderr] 24 | for i in 0..test_results.len() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 24 | for in &mut test_results { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `test_results`. [INFO] [stderr] --> src/test_asymptotes.rs:59:14 [INFO] [stderr] | [INFO] [stderr] 59 | for i in 0..test_results.len() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 59 | for in &mut test_results { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `test_results`. [INFO] [stderr] --> src/test_asymptotes.rs:92:14 [INFO] [stderr] | [INFO] [stderr] 92 | for i in 0..test_results.len() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 92 | for in &mut test_results { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `test_results`. [INFO] [stderr] --> src/test_asymptotes.rs:126:14 [INFO] [stderr] | [INFO] [stderr] 126 | for i in 0..test_results.len() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 126 | for in &mut test_results { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/test_asymptotes.rs:145:11 [INFO] [stderr] | [INFO] [stderr] 145 | + ( elapsed.subsec_nanos() as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(elapsed.subsec_nanos())` [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] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/lib.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | / let pass_size: usize; [INFO] [stderr] 48 | | if max_size <= 2 { [INFO] [stderr] 49 | | self_size = 0; [INFO] [stderr] 50 | | pass_size = 0; [INFO] [stderr] ... | [INFO] [stderr] 54 | | pass_size = tmp; [INFO] [stderr] 55 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let pass_size = if max_size <= 2 { ..; 0 } else { ..; tmp };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:121:36 [INFO] [stderr] | [INFO] [stderr] 121 | if self.children.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.children.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:157:12 [INFO] [stderr] | [INFO] [stderr] 157 | if self.children.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.children.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:175:12 [INFO] [stderr] | [INFO] [stderr] 175 | if self.children.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.children.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:244:12 [INFO] [stderr] | [INFO] [stderr] 244 | if self.children.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.children.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:269:35 [INFO] [stderr] | [INFO] [stderr] 269 | } else if self.children.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.children.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:383:12 [INFO] [stderr] | [INFO] [stderr] 383 | if self.children.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.children.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/lib.rs:392:13 [INFO] [stderr] | [INFO] [stderr] 392 | / match self.min { [INFO] [stderr] 393 | | Some(min_value) => { [INFO] [stderr] 394 | | if value < min_value { [INFO] [stderr] 395 | | return self.min [INFO] [stderr] ... | [INFO] [stderr] 398 | | None => () [INFO] [stderr] 399 | | }; [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 392 | if let Some(min_value) = self.min { [INFO] [stderr] 393 | if value < min_value { [INFO] [stderr] 394 | return self.min [INFO] [stderr] 395 | } [INFO] [stderr] 396 | }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/lib.rs:401:13 [INFO] [stderr] | [INFO] [stderr] 401 | / match cur_cluster_max { [INFO] [stderr] 402 | | Some(max_value) => { [INFO] [stderr] 403 | | if self.low(value) < max_value { [INFO] [stderr] 404 | | let offset = self.children[self.high(value)] [INFO] [stderr] ... | [INFO] [stderr] 416 | | None => () [INFO] [stderr] 417 | | }; [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 401 | if let Some(max_value) = cur_cluster_max { [INFO] [stderr] 402 | if self.low(value) < max_value { [INFO] [stderr] 403 | let offset = self.children[self.high(value)] [INFO] [stderr] 404 | .findnext(self.low(value))?; [INFO] [stderr] 405 | return match self.children[self.high(value)].search(offset) { [INFO] [stderr] 406 | Some(n) => { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:440:12 [INFO] [stderr] | [INFO] [stderr] 440 | if self.children.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.children.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/lib.rs:449:13 [INFO] [stderr] | [INFO] [stderr] 449 | / match self.maximum() { [INFO] [stderr] 450 | | Some(max_value) => { [INFO] [stderr] 451 | | if value > max_value { [INFO] [stderr] 452 | | return self.max; [INFO] [stderr] ... | [INFO] [stderr] 455 | | None => () [INFO] [stderr] 456 | | }; [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 449 | if let Some(max_value) = self.maximum() { [INFO] [stderr] 450 | if value > max_value { [INFO] [stderr] 451 | return self.max; [INFO] [stderr] 452 | } [INFO] [stderr] 453 | }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/lib.rs:458:13 [INFO] [stderr] | [INFO] [stderr] 458 | / match cur_cluster_min { [INFO] [stderr] 459 | | Some(min_value) => { [INFO] [stderr] 460 | | if self.low(value) > min_value { [INFO] [stderr] 461 | | let offset = self.children[self.high(value)] [INFO] [stderr] ... | [INFO] [stderr] 473 | | None => () [INFO] [stderr] 474 | | }; [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 458 | if let Some(min_value) = cur_cluster_min { [INFO] [stderr] 459 | if self.low(value) > min_value { [INFO] [stderr] 460 | let offset = self.children[self.high(value)] [INFO] [stderr] 461 | .findprev(self.low(value))?; [INFO] [stderr] 462 | return match self.children[self.high(value)].search(offset) { [INFO] [stderr] 463 | Some(n) => { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.60s [INFO] running `"docker" "inspect" "6db634291c9e5c34089a971bb7cc403aa7d36b2d2cd65d71b65d13b521ec29d2"` [INFO] running `"docker" "rm" "-f" "6db634291c9e5c34089a971bb7cc403aa7d36b2d2cd65d71b65d13b521ec29d2"` [INFO] [stdout] 6db634291c9e5c34089a971bb7cc403aa7d36b2d2cd65d71b65d13b521ec29d2