[INFO] crate reed-solomon 0.2.1 is already in cache [INFO] extracting crate reed-solomon 0.2.1 into work/ex/clippy-test-run/sources/stable/reg/reed-solomon/0.2.1 [INFO] extracting crate reed-solomon 0.2.1 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/reed-solomon/0.2.1 [INFO] validating manifest of reed-solomon-0.2.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 reed-solomon-0.2.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 reed-solomon-0.2.1 [INFO] finished frobbing reed-solomon-0.2.1 [INFO] frobbed toml for reed-solomon-0.2.1 written to work/ex/clippy-test-run/sources/stable/reg/reed-solomon/0.2.1/Cargo.toml [INFO] started frobbing reed-solomon-0.2.1 [INFO] finished frobbing reed-solomon-0.2.1 [INFO] frobbed toml for reed-solomon-0.2.1 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/reed-solomon/0.2.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 reed-solomon-0.2.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-7/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/reed-solomon/0.2.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] 9111241a7e84f29891479bb7d53da771c5b19dabd28d843a54ef18cfba8a6712 [INFO] running `"docker" "start" "-a" "9111241a7e84f29891479bb7d53da771c5b19dabd28d843a54ef18cfba8a6712"` [INFO] [stderr] Checking reed-solomon v0.2.1 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/decoder.rs:32:19 [INFO] [stderr] | [INFO] [stderr] 32 | Decoder { ecc_len: ecc_len } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `ecc_len` [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/buffer.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | poly: poly, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `poly` [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/buffer.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | data_len: data_len, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `data_len` [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/buffer.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | data_len: data_len, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `data_len` [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/decoder.rs:32:19 [INFO] [stderr] | [INFO] [stderr] 32 | Decoder { ecc_len: ecc_len } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `ecc_len` [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/buffer.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | poly: poly, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `poly` [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/buffer.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | data_len: data_len, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `data_len` [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/buffer.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | data_len: data_len, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `data_len` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/gf/mod.rs:104:17 [INFO] [stderr] | [INFO] [stderr] 104 | let mut i = uncheck!(LOG[x as usize]) as i32 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 104 | let mut i = i32::from(if cfg!(feature = "unsafe_indexing") { [INFO] [stderr] 105 | unsafe { [INFO] [stderr] 106 | *$array.get_unchecked($index) [INFO] [stderr] 107 | } [INFO] [stderr] 108 | } else { [INFO] [stderr] 109 | $array[$index] [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:63:30 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn correct_err_count(&self, [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:137:20 [INFO] [stderr] | [INFO] [stderr] 137 | pub fn correct(&self, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:166:25 [INFO] [stderr] | [INFO] [stderr] 166 | pub fn is_corrupted(&self, msg: &[u8]) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:170:23 [INFO] [stderr] | [INFO] [stderr] 170 | fn calc_syndromes(&self, msg: &[u8]) -> Polynom { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:180:28 [INFO] [stderr] | [INFO] [stderr] 180 | fn find_errata_locator(&self, e_pos: &[u8]) -> Polynom { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/decoder.rs:186:37 [INFO] [stderr] | [INFO] [stderr] 186 | add_rhs[0] = gf::pow(2, *i as i32); [INFO] [stderr] | ^^^^^^^^^ help: try: `i32::from(*i)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:193:29 [INFO] [stderr] | [INFO] [stderr] 193 | fn find_error_evaluator(&self, synd: &[u8], err_loc: &[u8], syms: usize) -> Polynom { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:203:23 [INFO] [stderr] | [INFO] [stderr] 203 | fn correct_errata(&self, msg: &[u8], synd: &[u8], err_pos: &[u8]) -> (Polynom, usize) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/decoder.rs:218:21 [INFO] [stderr] | [INFO] [stderr] 218 | let l = (255 - px) as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `i32::from(255 - px)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:255:27 [INFO] [stderr] | [INFO] [stderr] 255 | fn find_error_locator(&self, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:315:20 [INFO] [stderr] | [INFO] [stderr] 315 | fn find_errors(&self, err_loc: &[u8], msg_len: usize) -> Result { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:333:25 [INFO] [stderr] | [INFO] [stderr] 333 | fn forney_syndromes(&self, synd: &[u8], pos: &[u8], msg_len: usize) -> Polynom { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/decoder.rs:342:32 [INFO] [stderr] | [INFO] [stderr] 342 | let x = gf::pow(2, *pos as i32); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(*pos)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> examples/bandwidth.rs:120:13 [INFO] [stderr] | [INFO] [stderr] 120 | data_len: data_len, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `data_len` [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] --> examples/bandwidth.rs:121:13 [INFO] [stderr] | [INFO] [stderr] 121 | ecc_len: ecc_len, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `ecc_len` [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: the loop variable `j` is used to index `poly` [INFO] [stderr] --> src/gf/poly.rs:115:22 [INFO] [stderr] | [INFO] [stderr] 115 | for j in 0..(i as usize) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 115 | for (j, ) in poly.iter().enumerate().take((i as usize)) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/gf/mod.rs:104:17 [INFO] [stderr] | [INFO] [stderr] 104 | let mut i = uncheck!(LOG[x as usize]) as i32 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 104 | let mut i = i32::from(if cfg!(feature = "unsafe_indexing") { [INFO] [stderr] 105 | unsafe { [INFO] [stderr] 106 | *$array.get_unchecked($index) [INFO] [stderr] 107 | } [INFO] [stderr] 108 | } else { [INFO] [stderr] 109 | $array[$index] [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/gf/mod.rs:232:43 [INFO] [stderr] | [INFO] [stderr] 232 | assert_eq!(super::pow(LOG[i], EXP[i] as i32), answers[i]); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `i32::from(EXP[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `answers`. [INFO] [stderr] --> src/encoder.rs:96:18 [INFO] [stderr] | [INFO] [stderr] 96 | for i in 0..6 { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 96 | for in &answers { [INFO] [stderr] | ^^^^^^ ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:63:30 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn correct_err_count(&self, [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:137:20 [INFO] [stderr] | [INFO] [stderr] 137 | pub fn correct(&self, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:166:25 [INFO] [stderr] | [INFO] [stderr] 166 | pub fn is_corrupted(&self, msg: &[u8]) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:170:23 [INFO] [stderr] | [INFO] [stderr] 170 | fn calc_syndromes(&self, msg: &[u8]) -> Polynom { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:180:28 [INFO] [stderr] | [INFO] [stderr] 180 | fn find_errata_locator(&self, e_pos: &[u8]) -> Polynom { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/decoder.rs:186:37 [INFO] [stderr] | [INFO] [stderr] 186 | add_rhs[0] = gf::pow(2, *i as i32); [INFO] [stderr] | ^^^^^^^^^ help: try: `i32::from(*i)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:193:29 [INFO] [stderr] | [INFO] [stderr] 193 | fn find_error_evaluator(&self, synd: &[u8], err_loc: &[u8], syms: usize) -> Polynom { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:203:23 [INFO] [stderr] | [INFO] [stderr] 203 | fn correct_errata(&self, msg: &[u8], synd: &[u8], err_pos: &[u8]) -> (Polynom, usize) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/decoder.rs:218:21 [INFO] [stderr] | [INFO] [stderr] 218 | let l = (255 - px) as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `i32::from(255 - px)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:255:27 [INFO] [stderr] | [INFO] [stderr] 255 | fn find_error_locator(&self, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:315:20 [INFO] [stderr] | [INFO] [stderr] 315 | fn find_errors(&self, err_loc: &[u8], msg_len: usize) -> Result { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/decoder.rs:333:25 [INFO] [stderr] | [INFO] [stderr] 333 | fn forney_syndromes(&self, synd: &[u8], pos: &[u8], msg_len: usize) -> Polynom { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/decoder.rs:342:32 [INFO] [stderr] | [INFO] [stderr] 342 | let x = gf::pow(2, *pos as i32); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(*pos)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: The function/method `correct` doesn't need a mutable reference [INFO] [stderr] --> src/decoder.rs:481:39 [INFO] [stderr] | [INFO] [stderr] 481 | let decoded = decoder.correct(&mut msg[..], Some(&erase_pos)).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: The function/method `correct` doesn't need a mutable reference [INFO] [stderr] --> examples/helloworld.rs:27:33 [INFO] [stderr] | [INFO] [stderr] 27 | let recovered = dec.correct(&mut corrupted, Some(&known_erasures)).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `corrupted`. [INFO] [stderr] --> tests/simple.rs:21:14 [INFO] [stderr] | [INFO] [stderr] 21 | for i in 0..4 { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 21 | for in corrupted.iter_mut().take(4) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: The function/method `correct` doesn't need a mutable reference [INFO] [stderr] --> tests/simple.rs:26:33 [INFO] [stderr] | [INFO] [stderr] 26 | let recovered = dec.correct(&mut corrupted, None).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `corrupted`. [INFO] [stderr] --> tests/simple.rs:44:14 [INFO] [stderr] | [INFO] [stderr] 44 | for i in 0..4 { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 44 | for in corrupted.iter_mut().take(4) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: The function/method `correct` doesn't need a mutable reference [INFO] [stderr] --> tests/simple.rs:50:33 [INFO] [stderr] | [INFO] [stderr] 50 | let recovered = dec.correct(&mut corrupted, Some(&known_erasures)).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: The function/method `correct` doesn't need a mutable reference [INFO] [stderr] --> examples/bandwidth.rs:79:33 [INFO] [stderr] | [INFO] [stderr] 79 | decoder.correct(&mut encoded, None).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> examples/bandwidth.rs:125:22 [INFO] [stderr] | [INFO] [stderr] 125 | decoder: (0..(ecc_len / 2) + 1).map(|e| DecoderResult { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use: `(0..=(ecc_len / 2))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.73s [INFO] running `"docker" "inspect" "9111241a7e84f29891479bb7d53da771c5b19dabd28d843a54ef18cfba8a6712"` [INFO] running `"docker" "rm" "-f" "9111241a7e84f29891479bb7d53da771c5b19dabd28d843a54ef18cfba8a6712"` [INFO] [stdout] 9111241a7e84f29891479bb7d53da771c5b19dabd28d843a54ef18cfba8a6712