[INFO] updating cached repository jFransham/unicode-snowlang [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/jFransham/unicode-snowlang [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/jFransham/unicode-snowlang" "work/ex/clippy-test-run/sources/stable/gh/jFransham/unicode-snowlang"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/jFransham/unicode-snowlang'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/jFransham/unicode-snowlang" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/jFransham/unicode-snowlang"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/jFransham/unicode-snowlang'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 892600fee7c103ff1f9fc563c4f263eca65479be [INFO] sha for GitHub repo jFransham/unicode-snowlang: 892600fee7c103ff1f9fc563c4f263eca65479be [INFO] validating manifest of jFransham/unicode-snowlang 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 jFransham/unicode-snowlang 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 jFransham/unicode-snowlang [INFO] finished frobbing jFransham/unicode-snowlang [INFO] frobbed toml for jFransham/unicode-snowlang written to work/ex/clippy-test-run/sources/stable/gh/jFransham/unicode-snowlang/Cargo.toml [INFO] started frobbing jFransham/unicode-snowlang [INFO] finished frobbing jFransham/unicode-snowlang [INFO] frobbed toml for jFransham/unicode-snowlang written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/jFransham/unicode-snowlang/Cargo.toml [INFO] crate jFransham/unicode-snowlang 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 jFransham/unicode-snowlang 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-5/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/gh/jFransham/unicode-snowlang:/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] 8e88934c624e059da970516acb29d932031e5fffad4d8881f00432bf76c18eeb [INFO] running `"docker" "start" "-a" "8e88934c624e059da970516acb29d932031e5fffad4d8881f00432bf76c18eeb"` [INFO] [stderr] Checking unicode_snowlang v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/main.rs:67:32 [INFO] [stderr] | [INFO] [stderr] 67 | fn run(program: &LanguageNode) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_unit)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/main.rs:135:11 [INFO] [stderr] | [INFO] [stderr] 135 | fn main() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/main.rs:144:16 [INFO] [stderr] | [INFO] [stderr] 144 | } else { [INFO] [stderr] | ________________^ [INFO] [stderr] 145 | | if let Ok(mut file) = File::open(first_arg.clone()) { [INFO] [stderr] 146 | | let mut s = String::new(); [INFO] [stderr] 147 | | if let Ok(_) = file.read_to_string(&mut s) { [INFO] [stderr] ... | [INFO] [stderr] 160 | | } [INFO] [stderr] 161 | | } [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] 144 | } else if let Ok(mut file) = File::open(first_arg.clone()) { [INFO] [stderr] 145 | let mut s = String::new(); [INFO] [stderr] 146 | if let Ok(_) = file.read_to_string(&mut s) { [INFO] [stderr] 147 | let mut program = s.split_whitespace().map(|s| s.to_string()); [INFO] [stderr] 148 | [INFO] [stderr] 149 | // let mut p2 = s.split_whitespace().map(|s| s.to_string()); [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/main.rs:67:32 [INFO] [stderr] | [INFO] [stderr] 67 | fn run(program: &LanguageNode) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_unit)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/main.rs:135:11 [INFO] [stderr] | [INFO] [stderr] 135 | fn main() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/main.rs:144:16 [INFO] [stderr] | [INFO] [stderr] 144 | } else { [INFO] [stderr] | ________________^ [INFO] [stderr] 145 | | if let Ok(mut file) = File::open(first_arg.clone()) { [INFO] [stderr] 146 | | let mut s = String::new(); [INFO] [stderr] 147 | | if let Ok(_) = file.read_to_string(&mut s) { [INFO] [stderr] ... | [INFO] [stderr] 160 | | } [INFO] [stderr] 161 | | } [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] 144 | } else if let Ok(mut file) = File::open(first_arg.clone()) { [INFO] [stderr] 145 | let mut s = String::new(); [INFO] [stderr] 146 | if let Ok(_) = file.read_to_string(&mut s) { [INFO] [stderr] 147 | let mut program = s.split_whitespace().map(|s| s.to_string()); [INFO] [stderr] 148 | [INFO] [stderr] 149 | // let mut p2 = s.split_whitespace().map(|s| s.to_string()); [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/main.rs:112:37 [INFO] [stderr] | [INFO] [stderr] 112 | let maybe_counter = buffer.get(point).map(|a| *a).clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `buffer.get(point).map(|a| *a)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/main.rs:112:37 [INFO] [stderr] | [INFO] [stderr] 112 | let maybe_counter = buffer.get(point).map(|a| *a).clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `buffer.get(point).cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stderr] --> src/main.rs:147:24 [INFO] [stderr] | [INFO] [stderr] 147 | if let Ok(_) = file.read_to_string(&mut s) { [INFO] [stderr] | _________________- ^^^^^ [INFO] [stderr] 148 | | let mut program = s.split_whitespace().map(|s| s.to_string()); [INFO] [stderr] 149 | | [INFO] [stderr] 150 | | // let mut p2 = s.split_whitespace().map(|s| s.to_string()); [INFO] [stderr] ... | [INFO] [stderr] 156 | | panic!("File read failed for {}.", first_arg); [INFO] [stderr] 157 | | } [INFO] [stderr] | |_________________- help: try this: `if file.read_to_string(&mut s).is_ok()` [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/main.rs:112:37 [INFO] [stderr] | [INFO] [stderr] 112 | let maybe_counter = buffer.get(point).map(|a| *a).clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `buffer.get(point).map(|a| *a)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/main.rs:112:37 [INFO] [stderr] | [INFO] [stderr] 112 | let maybe_counter = buffer.get(point).map(|a| *a).clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `buffer.get(point).cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stderr] --> src/main.rs:147:24 [INFO] [stderr] | [INFO] [stderr] 147 | if let Ok(_) = file.read_to_string(&mut s) { [INFO] [stderr] | _________________- ^^^^^ [INFO] [stderr] 148 | | let mut program = s.split_whitespace().map(|s| s.to_string()); [INFO] [stderr] 149 | | [INFO] [stderr] 150 | | // let mut p2 = s.split_whitespace().map(|s| s.to_string()); [INFO] [stderr] ... | [INFO] [stderr] 156 | | panic!("File read failed for {}.", first_arg); [INFO] [stderr] 157 | | } [INFO] [stderr] | |_________________- help: try this: `if file.read_to_string(&mut s).is_ok()` [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] Finished dev [unoptimized + debuginfo] target(s) in 0.75s [INFO] running `"docker" "inspect" "8e88934c624e059da970516acb29d932031e5fffad4d8881f00432bf76c18eeb"` [INFO] running `"docker" "rm" "-f" "8e88934c624e059da970516acb29d932031e5fffad4d8881f00432bf76c18eeb"` [INFO] [stdout] 8e88934c624e059da970516acb29d932031e5fffad4d8881f00432bf76c18eeb