[INFO] updating cached repository jrozner/rust-trie [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/jrozner/rust-trie [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/jrozner/rust-trie" "work/ex/clippy-test-run/sources/stable/gh/jrozner/rust-trie"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/jrozner/rust-trie'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/jrozner/rust-trie" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/jrozner/rust-trie"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/jrozner/rust-trie'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 4ed9d6ccd5bcaff6fd14c24b562b2091c043013f [INFO] sha for GitHub repo jrozner/rust-trie: 4ed9d6ccd5bcaff6fd14c24b562b2091c043013f [INFO] validating manifest of jrozner/rust-trie 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 jrozner/rust-trie 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 jrozner/rust-trie [INFO] finished frobbing jrozner/rust-trie [INFO] frobbed toml for jrozner/rust-trie written to work/ex/clippy-test-run/sources/stable/gh/jrozner/rust-trie/Cargo.toml [INFO] started frobbing jrozner/rust-trie [INFO] finished frobbing jrozner/rust-trie [INFO] frobbed toml for jrozner/rust-trie written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/jrozner/rust-trie/Cargo.toml [INFO] crate jrozner/rust-trie has a lockfile. skipping [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 jrozner/rust-trie against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-3/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/jrozner/rust-trie:/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] 6a64694b3bde4f3d57c38e8f7c9e05f19a27bd1563fea85077705b6ab407e2f4 [INFO] running `"docker" "start" "-a" "6a64694b3bde4f3d57c38e8f7c9e05f19a27bd1563fea85077705b6ab407e2f4"` [INFO] [stderr] Checking trie v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/main.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::println_empty_string)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/main.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/main.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::println_empty_string)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/main.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:164:5 [INFO] [stderr] | [INFO] [stderr] 164 | return trie.boundary; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `trie.boundary` [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: redundant pattern matching, consider using `is_none()` [INFO] [stderr] --> src/main.rs:91:20 [INFO] [stderr] | [INFO] [stderr] 91 | if let None = self.stack.last() { [INFO] [stderr] | _____________- ^^^^ [INFO] [stderr] 92 | | return None; [INFO] [stderr] 93 | | } [INFO] [stderr] | |_____________- help: try this: `if self.stack.last().is_none()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern_matching)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/main.rs:98:26 [INFO] [stderr] | [INFO] [stderr] 98 | let ret = if boundary == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `boundary` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::bool_comparison)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/main.rs:112:32 [INFO] [stderr] | [INFO] [stderr] 112 | let next = current.trie.children.get(&key).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `¤t.trie.children[&key]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::get_unwrap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/main.rs:144:9 [INFO] [stderr] | [INFO] [stderr] 144 | / match trie.children.contains_key(&c) { [INFO] [stderr] 145 | | true => insert(trie.children.get_mut(&c).unwrap(), iter), [INFO] [stderr] 146 | | false => { [INFO] [stderr] 147 | | trie.children.insert(c, Trie::new()); [INFO] [stderr] 148 | | insert(trie.children.get_mut(&c).unwrap(), iter); [INFO] [stderr] 149 | | } [INFO] [stderr] 150 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] help: consider using an if/else expression [INFO] [stderr] | [INFO] [stderr] 144 | if trie.children.contains_key(&c) { insert(trie.children.get_mut(&c).unwrap(), iter) } else { [INFO] [stderr] 145 | trie.children.insert(c, Trie::new()); [INFO] [stderr] 146 | insert(trie.children.get_mut(&c).unwrap(), iter); [INFO] [stderr] 147 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/main.rs:158:9 [INFO] [stderr] | [INFO] [stderr] 158 | / match trie.children.contains_key(&c) { [INFO] [stderr] 159 | | true => return lookup(trie.children.get(&c).unwrap(), iter, prefix), [INFO] [stderr] 160 | | false => return if prefix { trie.boundary } else { false }, [INFO] [stderr] 161 | | } [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if trie.children.contains_key(&c) { return lookup(trie.children.get(&c).unwrap(), iter, prefix) } else { return if prefix { trie.boundary } else { false } }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/main.rs:159:35 [INFO] [stderr] | [INFO] [stderr] 159 | true => return lookup(trie.children.get(&c).unwrap(), iter, prefix), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&trie.children[&c]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:164:5 [INFO] [stderr] | [INFO] [stderr] 164 | return trie.boundary; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `trie.boundary` [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: redundant pattern matching, consider using `is_none()` [INFO] [stderr] --> src/main.rs:91:20 [INFO] [stderr] | [INFO] [stderr] 91 | if let None = self.stack.last() { [INFO] [stderr] | _____________- ^^^^ [INFO] [stderr] 92 | | return None; [INFO] [stderr] 93 | | } [INFO] [stderr] | |_____________- help: try this: `if self.stack.last().is_none()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern_matching)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/main.rs:98:26 [INFO] [stderr] | [INFO] [stderr] 98 | let ret = if boundary == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `boundary` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::bool_comparison)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/main.rs:112:32 [INFO] [stderr] | [INFO] [stderr] 112 | let next = current.trie.children.get(&key).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `¤t.trie.children[&key]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::get_unwrap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/main.rs:144:9 [INFO] [stderr] | [INFO] [stderr] 144 | / match trie.children.contains_key(&c) { [INFO] [stderr] 145 | | true => insert(trie.children.get_mut(&c).unwrap(), iter), [INFO] [stderr] 146 | | false => { [INFO] [stderr] 147 | | trie.children.insert(c, Trie::new()); [INFO] [stderr] 148 | | insert(trie.children.get_mut(&c).unwrap(), iter); [INFO] [stderr] 149 | | } [INFO] [stderr] 150 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] help: consider using an if/else expression [INFO] [stderr] | [INFO] [stderr] 144 | if trie.children.contains_key(&c) { insert(trie.children.get_mut(&c).unwrap(), iter) } else { [INFO] [stderr] 145 | trie.children.insert(c, Trie::new()); [INFO] [stderr] 146 | insert(trie.children.get_mut(&c).unwrap(), iter); [INFO] [stderr] 147 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/main.rs:158:9 [INFO] [stderr] | [INFO] [stderr] 158 | / match trie.children.contains_key(&c) { [INFO] [stderr] 159 | | true => return lookup(trie.children.get(&c).unwrap(), iter, prefix), [INFO] [stderr] 160 | | false => return if prefix { trie.boundary } else { false }, [INFO] [stderr] 161 | | } [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if trie.children.contains_key(&c) { return lookup(trie.children.get(&c).unwrap(), iter, prefix) } else { return if prefix { trie.boundary } else { false } }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/main.rs:159:35 [INFO] [stderr] | [INFO] [stderr] 159 | true => return lookup(trie.children.get(&c).unwrap(), iter, prefix), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&trie.children[&c]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.74s [INFO] running `"docker" "inspect" "6a64694b3bde4f3d57c38e8f7c9e05f19a27bd1563fea85077705b6ab407e2f4"` [INFO] running `"docker" "rm" "-f" "6a64694b3bde4f3d57c38e8f7c9e05f19a27bd1563fea85077705b6ab407e2f4"` [INFO] [stdout] 6a64694b3bde4f3d57c38e8f7c9e05f19a27bd1563fea85077705b6ab407e2f4