[INFO] updating cached repository vitiral/replace.rs [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/vitiral/replace.rs [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/vitiral/replace.rs" "work/ex/clippy-test-run/sources/stable/gh/vitiral/replace.rs"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/vitiral/replace.rs'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/vitiral/replace.rs" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/vitiral/replace.rs"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/vitiral/replace.rs'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 246ff7c9b8b91c5d81d8ee41d25d42020e731f03 [INFO] sha for GitHub repo vitiral/replace.rs: 246ff7c9b8b91c5d81d8ee41d25d42020e731f03 [INFO] validating manifest of vitiral/replace.rs 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 vitiral/replace.rs 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 vitiral/replace.rs [INFO] finished frobbing vitiral/replace.rs [INFO] frobbed toml for vitiral/replace.rs written to work/ex/clippy-test-run/sources/stable/gh/vitiral/replace.rs/Cargo.toml [INFO] started frobbing vitiral/replace.rs [INFO] finished frobbing vitiral/replace.rs [INFO] frobbed toml for vitiral/replace.rs written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/vitiral/replace.rs/Cargo.toml [INFO] crate vitiral/replace.rs 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 vitiral/replace.rs against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-2/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/vitiral/replace.rs:/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] e6a05a503a4534727cc53f6e3cb1d41d662077102c5810644f3a94507d74f545 [INFO] running `"docker" "start" "-a" "e6a05a503a4534727cc53f6e3cb1d41d662077102c5810644f3a94507d74f545"` [INFO] [stderr] Compiling backtrace v0.3.0 [INFO] [stderr] Checking rustc-demangle v0.1.3 [INFO] [stderr] Checking same-file v0.1.3 [INFO] [stderr] Checking unicode-segmentation v1.1.0 [INFO] [stderr] Compiling backtrace-sys v0.1.7 [INFO] [stderr] Checking term_size v0.2.2 [INFO] [stderr] Checking aho-corasick v0.6.2 [INFO] [stderr] Checking walkdir v1.0.7 [INFO] [stderr] Checking clap v2.20.3 [INFO] [stderr] Checking regex v0.2.1 [INFO] [stderr] Checking error-chain v0.9.0 [INFO] [stderr] Checking replace v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/cmd.rs:140:9 [INFO] [stderr] | [INFO] [stderr] 140 | regex: regex, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `regex` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/cmd.rs:141:9 [INFO] [stderr] | [INFO] [stderr] 141 | paths: paths, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `paths` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/cmd.rs:142:9 [INFO] [stderr] | [INFO] [stderr] 142 | groups: groups, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `groups` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/load.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | data: data, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/replace.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 101 | path: path, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `path` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/replace.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | data: data, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/cmd.rs:140:9 [INFO] [stderr] | [INFO] [stderr] 140 | regex: regex, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `regex` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/cmd.rs:141:9 [INFO] [stderr] | [INFO] [stderr] 141 | paths: paths, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `paths` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/cmd.rs:142:9 [INFO] [stderr] | [INFO] [stderr] 142 | groups: groups, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `groups` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/load.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | data: data, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/replace.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 101 | path: path, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `path` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/replace.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | data: data, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/main.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `g` [INFO] [stderr] --> src/replace.rs:86:32 [INFO] [stderr] | [INFO] [stderr] 86 | &Groups::Named(ref g) => panic!(), [INFO] [stderr] | ^ help: consider using `_g` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `g` [INFO] [stderr] --> src/replace.rs:86:32 [INFO] [stderr] | [INFO] [stderr] 86 | &Groups::Named(ref g) => panic!(), [INFO] [stderr] | ^ help: consider using `_g` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Named` [INFO] [stderr] --> src/types.rs:51:5 [INFO] [stderr] | [INFO] [stderr] 51 | Named(NamedGroups<'a>), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/cmd.rs:78:37 [INFO] [stderr] | [INFO] [stderr] 78 | let mut split = r.splitn(2, "="); [INFO] [stderr] | ^^^ help: try using a char instead: `'='` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/cmd.rs:120:31 [INFO] [stderr] | [INFO] [stderr] 120 | let groups = parse_groups(itrail.map(|s| *s))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `itrail.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: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/cmd.rs:155:35 [INFO] [stderr] | [INFO] [stderr] 155 | let result = parse_groups(vec!["foo", "0=bar"].iter().map(|s| *s)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `vec!["foo", "0=bar"].iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/cmd.rs:162:35 [INFO] [stderr] | [INFO] [stderr] 162 | let result = parse_groups(args.iter().map(|s| *s)).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `args.iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: calling `as_bytes()` on a string literal [INFO] [stderr] --> src/cmd.rs:164:18 [INFO] [stderr] | [INFO] [stderr] 164 | 0 => "all".as_bytes(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: consider using a byte string literal instead: `b"all"` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::string_lit_as_bytes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_lit_as_bytes [INFO] [stderr] [INFO] [stderr] warning: calling `as_bytes()` on a string literal [INFO] [stderr] --> src/cmd.rs:165:18 [INFO] [stderr] | [INFO] [stderr] 165 | 1 => "a".as_bytes(), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider using a byte string literal instead: `b"a"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_lit_as_bytes [INFO] [stderr] [INFO] [stderr] warning: calling `as_bytes()` on a string literal [INFO] [stderr] --> src/cmd.rs:166:18 [INFO] [stderr] | [INFO] [stderr] 166 | 2 => "b".as_bytes() [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider using a byte string literal instead: `b"b"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_lit_as_bytes [INFO] [stderr] [INFO] [stderr] warning: calling `as_bytes()` on a string literal [INFO] [stderr] --> src/cmd.rs:176:18 [INFO] [stderr] | [INFO] [stderr] 176 | 1 => "a".as_bytes(), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider using a byte string literal instead: `b"a"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_lit_as_bytes [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/load.rs:33:26 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn load_paths(paths: &Vec<&Path>) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^ help: change this to: `&[&Path]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/replace.rs:84:9 [INFO] [stderr] | [INFO] [stderr] 84 | / match self.groups { [INFO] [stderr] 85 | | &Groups::Pos(ref g) => replace_append_pos(g, caps, dst), [INFO] [stderr] 86 | | &Groups::Named(ref g) => panic!(), [INFO] [stderr] 87 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 84 | match *self.groups { [INFO] [stderr] 85 | Groups::Pos(ref g) => replace_append_pos(g, caps, dst), [INFO] [stderr] 86 | Groups::Named(ref g) => panic!(), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: calling `as_bytes()` on a string literal [INFO] [stderr] --> src/replace.rs:114:43 [INFO] [stderr] | [INFO] [stderr] 114 | let groups: PosGroups = hashmap!{1 => "r1".as_bytes(), 2 => "r2".as_bytes()}; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: consider using a byte string literal instead: `b"r1"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_lit_as_bytes [INFO] [stderr] [INFO] [stderr] warning: calling `as_bytes()` on a string literal [INFO] [stderr] --> src/replace.rs:114:65 [INFO] [stderr] | [INFO] [stderr] 114 | let groups: PosGroups = hashmap!{1 => "r1".as_bytes(), 2 => "r2".as_bytes()}; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: consider using a byte string literal instead: `b"r2"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_lit_as_bytes [INFO] [stderr] [INFO] [stderr] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/replace.rs:117:31 [INFO] [stderr] | [INFO] [stderr] 117 | let cmd = Cmd::simple(pat.clone(), groups.clone()); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::clone_double_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_double_ref [INFO] [stderr] help: try dereferencing it [INFO] [stderr] | [INFO] [stderr] 117 | let cmd = Cmd::simple(&(*pat).clone(), groups.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 117 | let cmd = Cmd::simple(&str::clone(pat), groups.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/replace.rs:128:31 [INFO] [stderr] | [INFO] [stderr] 128 | let cmd = Cmd::simple(pat.clone(), groups); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_double_ref [INFO] [stderr] help: try dereferencing it [INFO] [stderr] | [INFO] [stderr] 128 | let cmd = Cmd::simple(&(*pat).clone(), groups); [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 128 | let cmd = Cmd::simple(&str::clone(pat), groups); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/replace.rs:138:31 [INFO] [stderr] | [INFO] [stderr] 138 | let cmd = Cmd::simple(pat.clone(), groups); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_double_ref [INFO] [stderr] help: try dereferencing it [INFO] [stderr] | [INFO] [stderr] 138 | let cmd = Cmd::simple(&(*pat).clone(), groups); [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 138 | let cmd = Cmd::simple(&str::clone(pat), groups); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: calling `as_bytes()` on a string literal [INFO] [stderr] --> src/replace.rs:147:26 [INFO] [stderr] | [INFO] [stderr] 147 | groups.insert(0, "ALL".as_bytes()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: consider using a byte string literal instead: `b"ALL"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#string_lit_as_bytes [INFO] [stderr] [INFO] [stderr] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/replace.rs:148:31 [INFO] [stderr] | [INFO] [stderr] 148 | let cmd = Cmd::simple(pat.clone(), groups); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_double_ref [INFO] [stderr] help: try dereferencing it [INFO] [stderr] | [INFO] [stderr] 148 | let cmd = Cmd::simple(&(*pat).clone(), groups); [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 148 | let cmd = Cmd::simple(&str::clone(pat), groups); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/types.rs:95:9 [INFO] [stderr] | [INFO] [stderr] 95 | / if self.mat.start() <= other.mat.start() && [INFO] [stderr] 96 | | self.mat.end() >= other.mat.end() && [INFO] [stderr] 97 | | self.group_id < other.group_id { [INFO] [stderr] 98 | | true [INFO] [stderr] 99 | | } else { [INFO] [stderr] 100 | | false [INFO] [stderr] 101 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] help: you can reduce it to [INFO] [stderr] | [INFO] [stderr] 95 | self.mat.start() <= other.mat.start() && [INFO] [stderr] 96 | self.mat.end() >= other.mat.end() && [INFO] [stderr] 97 | self.group_id < other.group_id [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: aborting due to 4 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `replace`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: function is never used: `do_replace` [INFO] [stderr] --> src/replace.rs:106:1 [INFO] [stderr] | [INFO] [stderr] 106 | fn do_replace(c: &Cmd, d: &[u8]) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Named` [INFO] [stderr] --> src/types.rs:51:5 [INFO] [stderr] | [INFO] [stderr] 51 | Named(NamedGroups<'a>), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/cmd.rs:78:37 [INFO] [stderr] | [INFO] [stderr] 78 | let mut split = r.splitn(2, "="); [INFO] [stderr] | ^^^ help: try using a char instead: `'='` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/cmd.rs:120:31 [INFO] [stderr] | [INFO] [stderr] 120 | let groups = parse_groups(itrail.map(|s| *s))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `itrail.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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/load.rs:33:26 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn load_paths(paths: &Vec<&Path>) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^ help: change this to: `&[&Path]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/replace.rs:84:9 [INFO] [stderr] | [INFO] [stderr] 84 | / match self.groups { [INFO] [stderr] 85 | | &Groups::Pos(ref g) => replace_append_pos(g, caps, dst), [INFO] [stderr] 86 | | &Groups::Named(ref g) => panic!(), [INFO] [stderr] 87 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 84 | match *self.groups { [INFO] [stderr] 85 | Groups::Pos(ref g) => replace_append_pos(g, caps, dst), [INFO] [stderr] 86 | Groups::Named(ref g) => panic!(), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/types.rs:95:9 [INFO] [stderr] | [INFO] [stderr] 95 | / if self.mat.start() <= other.mat.start() && [INFO] [stderr] 96 | | self.mat.end() >= other.mat.end() && [INFO] [stderr] 97 | | self.group_id < other.group_id { [INFO] [stderr] 98 | | true [INFO] [stderr] 99 | | } else { [INFO] [stderr] 100 | | false [INFO] [stderr] 101 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] help: you can reduce it to [INFO] [stderr] | [INFO] [stderr] 95 | self.mat.start() <= other.mat.start() && [INFO] [stderr] 96 | self.mat.end() >= other.mat.end() && [INFO] [stderr] 97 | self.group_id < other.group_id [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: build failed [INFO] running `"docker" "inspect" "e6a05a503a4534727cc53f6e3cb1d41d662077102c5810644f3a94507d74f545"` [INFO] running `"docker" "rm" "-f" "e6a05a503a4534727cc53f6e3cb1d41d662077102c5810644f3a94507d74f545"` [INFO] [stdout] e6a05a503a4534727cc53f6e3cb1d41d662077102c5810644f3a94507d74f545