[INFO] updating cached repository phongngtuan/seamless [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/phongngtuan/seamless [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/phongngtuan/seamless" "work/ex/clippy-test-run/sources/stable/gh/phongngtuan/seamless"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/phongngtuan/seamless'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/phongngtuan/seamless" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/phongngtuan/seamless"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/phongngtuan/seamless'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] b213793b71bcf31272dbdb72ff00cddc6008f653 [INFO] sha for GitHub repo phongngtuan/seamless: b213793b71bcf31272dbdb72ff00cddc6008f653 [INFO] validating manifest of phongngtuan/seamless 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 phongngtuan/seamless 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 phongngtuan/seamless [INFO] finished frobbing phongngtuan/seamless [INFO] frobbed toml for phongngtuan/seamless written to work/ex/clippy-test-run/sources/stable/gh/phongngtuan/seamless/Cargo.toml [INFO] started frobbing phongngtuan/seamless [INFO] finished frobbing phongngtuan/seamless [INFO] frobbed toml for phongngtuan/seamless written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/phongngtuan/seamless/Cargo.toml [INFO] crate phongngtuan/seamless 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 phongngtuan/seamless 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/phongngtuan/seamless:/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] be506ba3b6d7ad4150e6be230bec2afbc7d3fae96bf8911afc767591283fc665 [INFO] running `"docker" "start" "-a" "be506ba3b6d7ad4150e6be230bec2afbc7d3fae96bf8911afc767591283fc665"` [INFO] [stderr] Checking seamless v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: field is never used: `chunks` [INFO] [stderr] --> src/main.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | chunks: Vec [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: field is never used: `length` [INFO] [stderr] --> src/main.rs:116:5 [INFO] [stderr] | [INFO] [stderr] 116 | length: u32, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `chunk_type` [INFO] [stderr] --> src/main.rs:117:5 [INFO] [stderr] | [INFO] [stderr] 117 | chunk_type: ChunkType, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `chunk_data` [INFO] [stderr] --> src/main.rs:118:5 [INFO] [stderr] | [INFO] [stderr] 118 | chunk_data: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `crc` [INFO] [stderr] --> src/main.rs:119:5 [INFO] [stderr] | [INFO] [stderr] 119 | crc: u32 [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `tRNS` should have a camel case name such as `Trns` [INFO] [stderr] --> src/main.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | tRNS(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] warning: field is never used: `chunks` [INFO] [stderr] --> src/main.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | chunks: Vec [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: field is never used: `length` [INFO] [stderr] --> src/main.rs:116:5 [INFO] [stderr] | [INFO] [stderr] 116 | length: u32, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `chunk_type` [INFO] [stderr] --> src/main.rs:117:5 [INFO] [stderr] | [INFO] [stderr] 117 | chunk_type: ChunkType, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `chunk_data` [INFO] [stderr] --> src/main.rs:118:5 [INFO] [stderr] | [INFO] [stderr] 118 | chunk_data: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `crc` [INFO] [stderr] --> src/main.rs:119:5 [INFO] [stderr] | [INFO] [stderr] 119 | crc: u32 [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_camel_case_types)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant `cHRM` should have a camel case name such as `Chrm` [INFO] [stderr] --> src/main.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | cHRM(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `gAMA` should have a camel case name such as `Gama` [INFO] [stderr] --> src/main.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | gAMA(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `iCCP` should have a camel case name such as `Iccp` [INFO] [stderr] --> src/main.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | iCCP(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `sBIT` should have a camel case name such as `Sbit` [INFO] [stderr] --> src/main.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | sBIT(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `sRGB` should have a camel case name such as `Srgb` [INFO] [stderr] --> src/main.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | sRGB(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `iTXt` should have a camel case name such as `Itxt` [INFO] [stderr] --> src/main.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | iTXt(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `tEXt` should have a camel case name such as `Text` [INFO] [stderr] --> src/main.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | tEXt(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `zTXt` should have a camel case name such as `Ztxt` [INFO] [stderr] --> src/main.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | zTXt(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `bKGD` should have a camel case name such as `Bkgd` [INFO] [stderr] --> src/main.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | bKGD(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `hIST` should have a camel case name such as `Hist` [INFO] [stderr] --> src/main.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | hIST(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `pHYs` should have a camel case name such as `Phys` [INFO] [stderr] --> src/main.rs:42:5 [INFO] [stderr] | [INFO] [stderr] 42 | pHYs(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `sPLT` should have a camel case name such as `Splt` [INFO] [stderr] --> src/main.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 43 | sPLT(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `tIME` should have a camel case name such as `Time` [INFO] [stderr] --> src/main.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | tIME(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/main.rs:48:18 [INFO] [stderr] | [INFO] [stderr] 48 | fn to_string(tag: u32) -> String { [INFO] [stderr] | ^^^ [INFO] [stderr] warning: variant `tRNS` should have a camel case name such as `Trns` [INFO] [stderr] --> src/main.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | tRNS(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_camel_case_types)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant `cHRM` should have a camel case name such as `Chrm` [INFO] [stderr] --> src/main.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | cHRM(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `gAMA` should have a camel case name such as `Gama` [INFO] [stderr] --> src/main.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | gAMA(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `iCCP` should have a camel case name such as `Iccp` [INFO] [stderr] --> src/main.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | iCCP(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `sBIT` should have a camel case name such as `Sbit` [INFO] [stderr] --> src/main.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | sBIT(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `sRGB` should have a camel case name such as `Srgb` [INFO] [stderr] --> src/main.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | sRGB(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `iTXt` should have a camel case name such as `Itxt` [INFO] [stderr] --> src/main.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | iTXt(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `tEXt` should have a camel case name such as `Text` [INFO] [stderr] --> src/main.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | tEXt(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `zTXt` should have a camel case name such as `Ztxt` [INFO] [stderr] --> src/main.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | zTXt(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `bKGD` should have a camel case name such as `Bkgd` [INFO] [stderr] --> src/main.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | bKGD(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `hIST` should have a camel case name such as `Hist` [INFO] [stderr] --> src/main.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | hIST(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `pHYs` should have a camel case name such as `Phys` [INFO] [stderr] --> src/main.rs:42:5 [INFO] [stderr] | [INFO] [stderr] 42 | pHYs(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `sPLT` should have a camel case name such as `Splt` [INFO] [stderr] --> src/main.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 43 | sPLT(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `tIME` should have a camel case name such as `Time` [INFO] [stderr] --> src/main.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | tIME(u32), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::wrong_self_convention)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/main.rs:48:18 [INFO] [stderr] | [INFO] [stderr] 48 | fn to_string(tag: u32) -> String { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::wrong_self_convention)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [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/main.rs:158:9 [INFO] [stderr] | [INFO] [stderr] 158 | / match chunk_type { [INFO] [stderr] 159 | | ChunkType::IHDR(_) => { [INFO] [stderr] 160 | | println!("IHDR: {:?}", DataIHDR::from_buf(&chunk_data)); [INFO] [stderr] 161 | | } [INFO] [stderr] 162 | | _ => { } [INFO] [stderr] 163 | | } [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] 158 | if let ChunkType::IHDR(_) = chunk_type { [INFO] [stderr] 159 | println!("IHDR: {:?}", DataIHDR::from_buf(&chunk_data)); [INFO] [stderr] 160 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/main.rs:176:18 [INFO] [stderr] | [INFO] [stderr] 176 | for i in 0..8 { [INFO] [stderr] | ^^^^ help: try replacing the loop by: `header[..8].clone_from_slice(&buf[..8])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_memcpy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [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/main.rs:158:9 [INFO] [stderr] | [INFO] [stderr] 158 | / match chunk_type { [INFO] [stderr] 159 | | ChunkType::IHDR(_) => { [INFO] [stderr] 160 | | println!("IHDR: {:?}", DataIHDR::from_buf(&chunk_data)); [INFO] [stderr] 161 | | } [INFO] [stderr] 162 | | _ => { } [INFO] [stderr] 163 | | } [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] 158 | if let ChunkType::IHDR(_) = chunk_type { [INFO] [stderr] 159 | println!("IHDR: {:?}", DataIHDR::from_buf(&chunk_data)); [INFO] [stderr] 160 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/main.rs:176:18 [INFO] [stderr] | [INFO] [stderr] 176 | for i in 0..8 { [INFO] [stderr] | ^^^^ help: try replacing the loop by: `header[..8].clone_from_slice(&buf[..8])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_memcpy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.78s [INFO] running `"docker" "inspect" "be506ba3b6d7ad4150e6be230bec2afbc7d3fae96bf8911afc767591283fc665"` [INFO] running `"docker" "rm" "-f" "be506ba3b6d7ad4150e6be230bec2afbc7d3fae96bf8911afc767591283fc665"` [INFO] [stdout] be506ba3b6d7ad4150e6be230bec2afbc7d3fae96bf8911afc767591283fc665