[INFO] crate thhp 0.1.1 is already in cache [INFO] extracting crate thhp 0.1.1 into work/ex/clippy-test-run/sources/stable/reg/thhp/0.1.1 [INFO] extracting crate thhp 0.1.1 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/thhp/0.1.1 [INFO] validating manifest of thhp-0.1.1 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of thhp-0.1.1 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing thhp-0.1.1 [INFO] finished frobbing thhp-0.1.1 [INFO] frobbed toml for thhp-0.1.1 written to work/ex/clippy-test-run/sources/stable/reg/thhp/0.1.1/Cargo.toml [INFO] started frobbing thhp-0.1.1 [INFO] finished frobbing thhp-0.1.1 [INFO] frobbed toml for thhp-0.1.1 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/thhp/0.1.1/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting thhp-0.1.1 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-4/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/thhp/0.1.1:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -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] 90a15003ef57b870cf4dc476f7ad6a3ef4da9485e41f61679db0f1fbb8a0722e [INFO] running `"docker" "start" "-a" "90a15003ef57b870cf4dc476f7ad6a3ef4da9485e41f61679db0f1fbb8a0722e"` [INFO] [stderr] Compiling libc v0.2.48 [INFO] [stderr] Compiling cc v1.0.28 [INFO] [stderr] Compiling httparse v1.3.3 [INFO] [stderr] Checking thhp v0.1.1 (/opt/crater/workdir) [INFO] [stderr] error[E0602]: unknown lint: `clippy::into_iter_on_array` [INFO] [stderr] | [INFO] [stderr] = note: requested on the command line with `-D clippy::into_iter_on_array` [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/lib.rs:194:1 [INFO] [stderr] | [INFO] [stderr] 194 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::deprecated_cfg_attr)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/lib.rs:251:1 [INFO] [stderr] | [INFO] [stderr] 251 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] warning: `cfg_attr` is deprecated for rustfmt and got replaced by tool_attributes [INFO] [stderr] --> src/lib.rs:289:1 [INFO] [stderr] | [INFO] [stderr] 289 | #[cfg_attr(rustfmt, rustfmt_skip)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `#[rustfmt::skip]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deprecated_cfg_attr [INFO] [stderr] [INFO] [stderr] error[E0602]: unknown lint: `clippy::into_iter_on_array` [INFO] [stderr] | [INFO] [stderr] = note: requested on the command line with `-D clippy::into_iter_on_array` [INFO] [stderr] [INFO] [stderr] error[E0602]: unknown lint: `clippy::into_iter_on_array` [INFO] [stderr] | [INFO] [stderr] = note: requested on the command line with `-D clippy::into_iter_on_array` [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/scanner.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | return trunk.starts_with(self.buffer); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `trunk.starts_with(self.buffer)` [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/scanner.rs:59:9 [INFO] [stderr] | [INFO] [stderr] 59 | return r; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `r` [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/scanner.rs:66:9 [INFO] [stderr] | [INFO] [stderr] 66 | return result; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `result` [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/scanner.rs:149:9 [INFO] [stderr] | [INFO] [stderr] 149 | return unsafe { Some(self.read_unchecked(i)) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `unsafe { Some(self.read_unchecked(i)) }` [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:431:24 [INFO] [stderr] | [INFO] [stderr] 431 | } else { [INFO] [stderr] | ________________________^ [INFO] [stderr] 432 | | if self.consume_space() { [INFO] [stderr] 433 | | Ok(Complete(v)) [INFO] [stderr] 434 | | } else { [INFO] [stderr] 435 | | Err(InvalidVersion) [INFO] [stderr] 436 | | } [INFO] [stderr] 437 | | } [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] 431 | } else if self.consume_space() { [INFO] [stderr] 432 | Ok(Complete(v)) [INFO] [stderr] 433 | } else { [INFO] [stderr] 434 | Err(InvalidVersion) [INFO] [stderr] 435 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/lib.rs:619:16 [INFO] [stderr] | [INFO] [stderr] 619 | } else { [INFO] [stderr] | ________________^ [INFO] [stderr] 620 | | if self.eof() { [INFO] [stderr] 621 | | Ok(Incomplete) [INFO] [stderr] 622 | | } else { [INFO] [stderr] 623 | | Ok(Complete(false)) [INFO] [stderr] 624 | | } [INFO] [stderr] 625 | | } [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] 619 | } else if self.eof() { [INFO] [stderr] 620 | Ok(Incomplete) [INFO] [stderr] 621 | } else { [INFO] [stderr] 622 | Ok(Complete(false)) [INFO] [stderr] 623 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0602`. [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0602`. [INFO] [stderr] error: Could not compile `httparse`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: Could not compile `libc`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0602`. [INFO] [stderr] error: Could not compile `cc`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/errors.rs:27:19 [INFO] [stderr] | [INFO] [stderr] 27 | pub fn as_str(&self) -> &'static str { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/vec_header.rs:12:17 [INFO] [stderr] | [INFO] [stderr] 12 | Err(OutOfCapacity.into()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `OutOfCapacity` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/lib.rs:385:39 [INFO] [stderr] | [INFO] [stderr] 385 | match self.scanner.read_while(|x| is_tchar(x)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove closure as shown: `is_tchar` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/lib.rs:399:39 [INFO] [stderr] | [INFO] [stderr] 399 | match self.scanner.read_while(|x| is_vchar(x)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove closure as shown: `is_vchar` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/lib.rs:445:39 [INFO] [stderr] | [INFO] [stderr] 445 | match self.scanner.read_while(|x| is_digit(x)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove closure as shown: `is_digit` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/lib.rs:450:30 [INFO] [stderr] | [INFO] [stderr] 450 | .map(|x| Complete(x)) [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove closure as shown: `Complete` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/lib.rs:464:39 [INFO] [stderr] | [INFO] [stderr] 464 | match self.scanner.read_while(|x| is_reason_char(x)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `is_reason_char` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] error: this `if` has identical blocks [INFO] [stderr] --> src/lib.rs:499:55 [INFO] [stderr] | [INFO] [stderr] 499 | } else if self.scanner.is_head_of(b"HTTP/1.") { [INFO] [stderr] | _______________________________________________________^ [INFO] [stderr] 500 | | Ok(Incomplete) [INFO] [stderr] 501 | | } else { [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::if_same_then_else)] on by default [INFO] [stderr] note: same as this [INFO] [stderr] --> src/lib.rs:497:40 [INFO] [stderr] | [INFO] [stderr] 497 | } else if self.scanner.empty() { [INFO] [stderr] | ________________________________________^ [INFO] [stderr] 498 | | Ok(Incomplete) [INFO] [stderr] 499 | | } else if self.scanner.is_head_of(b"HTTP/1.") { [INFO] [stderr] | |_________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/lib.rs:536:39 [INFO] [stderr] | [INFO] [stderr] 536 | match self.scanner.read_while(|x| is_tchar(x)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove closure as shown: `is_tchar` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/lib.rs:577:40 [INFO] [stderr] | [INFO] [stderr] 577 | return self.scanner.read_while(|x| is_field_value_char(x)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `is_field_value_char` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] error: this `if` has identical blocks [INFO] [stderr] --> src/lib.rs:611:47 [INFO] [stderr] | [INFO] [stderr] 611 | } else if self.scanner.skip_if(b"\n") { [INFO] [stderr] | _______________________________________________^ [INFO] [stderr] 612 | | Ok(Complete(true)) [INFO] [stderr] 613 | | } else if self.scanner.skip_if(b"\r") { [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] note: same as this [INFO] [stderr] --> src/lib.rs:609:42 [INFO] [stderr] | [INFO] [stderr] 609 | if self.scanner.skip_if(b"\r\n") { [INFO] [stderr] | __________________________________________^ [INFO] [stderr] 610 | | Ok(Complete(true)) [INFO] [stderr] 611 | | } else if self.scanner.skip_if(b"\n") { [INFO] [stderr] | |_________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `thhp`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "90a15003ef57b870cf4dc476f7ad6a3ef4da9485e41f61679db0f1fbb8a0722e"` [INFO] running `"docker" "rm" "-f" "90a15003ef57b870cf4dc476f7ad6a3ef4da9485e41f61679db0f1fbb8a0722e"` [INFO] [stdout] 90a15003ef57b870cf4dc476f7ad6a3ef4da9485e41f61679db0f1fbb8a0722e