[INFO] crate undither 1.0.1 is already in cache [INFO] extracting crate undither 1.0.1 into work/ex/clippy-test-run/sources/stable/reg/undither/1.0.1 [INFO] extracting crate undither 1.0.1 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/undither/1.0.1 [INFO] validating manifest of undither-1.0.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 undither-1.0.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 undither-1.0.1 [INFO] finished frobbing undither-1.0.1 [INFO] frobbed toml for undither-1.0.1 written to work/ex/clippy-test-run/sources/stable/reg/undither/1.0.1/Cargo.toml [INFO] started frobbing undither-1.0.1 [INFO] finished frobbing undither-1.0.1 [INFO] frobbed toml for undither-1.0.1 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/undither/1.0.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 undither-1.0.1 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/reg/undither/1.0.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" "-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] a82f39264402457d0189221539357f84ad0153c65d3b2aea3b6ac13bc9234956 [INFO] running `"docker" "start" "-a" "a82f39264402457d0189221539357f84ad0153c65d3b2aea3b6ac13bc9234956"` [INFO] [stderr] Checking imgref v1.3.5 [INFO] [stderr] Checking rgb v0.8.12 [INFO] [stderr] Checking vpsearch v1.3.5 [INFO] [stderr] Checking loop9 v0.1.1 [INFO] [stderr] Checking undither v1.0.1 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/acc.rs:60:13 [INFO] [stderr] | [INFO] [stderr] 60 | pal: pal, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `pal` [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/acc.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | index1: index1, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `index1` [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/acc.rs:96:13 [INFO] [stderr] | [INFO] [stderr] 96 | index2: index2, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `index2` [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/acc.rs:123:13 [INFO] [stderr] | [INFO] [stderr] 123 | transparent: transparent, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `transparent` [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/acc.rs:124:13 [INFO] [stderr] | [INFO] [stderr] 124 | similarity: similarity, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `similarity` [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/acc.rs:125:13 [INFO] [stderr] | [INFO] [stderr] 125 | center_index: center_index, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `center_index` [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/acc.rs:126:13 [INFO] [stderr] | [INFO] [stderr] 126 | weight: weight, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `weight` [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/palalpha.rs:9:18 [INFO] [stderr] | [INFO] [stderr] 9 | PalAlpha{idx:idx, a:true} [INFO] [stderr] | ^^^^^^^ help: replace it with: `idx` [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/palalpha.rs:15:25 [INFO] [stderr] | [INFO] [stderr] 15 | PalAlpha{idx:0, a:a} [INFO] [stderr] | ^^^ help: replace it with: `a` [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/pal.rs:17:13 [INFO] [stderr] | [INFO] [stderr] 17 | pal: pal, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `pal` [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/acc.rs:60:13 [INFO] [stderr] | [INFO] [stderr] 60 | pal: pal, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `pal` [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/acc.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | index1: index1, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `index1` [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/acc.rs:96:13 [INFO] [stderr] | [INFO] [stderr] 96 | index2: index2, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `index2` [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/acc.rs:123:13 [INFO] [stderr] | [INFO] [stderr] 123 | transparent: transparent, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `transparent` [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/acc.rs:124:13 [INFO] [stderr] | [INFO] [stderr] 124 | similarity: similarity, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `similarity` [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/acc.rs:125:13 [INFO] [stderr] | [INFO] [stderr] 125 | center_index: center_index, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `center_index` [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/acc.rs:126:13 [INFO] [stderr] | [INFO] [stderr] 126 | weight: weight, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `weight` [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/palalpha.rs:9:18 [INFO] [stderr] | [INFO] [stderr] 9 | PalAlpha{idx:idx, a:true} [INFO] [stderr] | ^^^^^^^ help: replace it with: `idx` [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/palalpha.rs:15:25 [INFO] [stderr] | [INFO] [stderr] 15 | PalAlpha{idx:0, a:a} [INFO] [stderr] | ^^^ help: replace it with: `a` [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/pal.rs:17:13 [INFO] [stderr] | [INFO] [stderr] 17 | pal: pal, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `pal` [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: unneeded return statement [INFO] [stderr] --> src/acc.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | / return ((p1.r as i32 - p2.r as i32) * (p1.r as i32 - p2.r as i32) + [INFO] [stderr] 7 | | (p1.g as i32 - p2.g as i32) * (p1.g as i32 - p2.g as i32) + [INFO] [stderr] 8 | | (p1.b as i32 - p2.b as i32) * (p1.b as i32 - p2.b as i32)) as u32; [INFO] [stderr] | |______________________________________________________________________________^ [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] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 6 | ((p1.r as i32 - p2.r as i32) * (p1.r as i32 - p2.r as i32) + [INFO] [stderr] 7 | (p1.g as i32 - p2.g as i32) * (p1.g as i32 - p2.g as i32) + [INFO] [stderr] 8 | (p1.b as i32 - p2.b as i32) * (p1.b as i32 - p2.b as i32)) as u32 [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/acc.rs:105:9 [INFO] [stderr] | [INFO] [stderr] 105 | return (res as u32, p2); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(res as u32, p2)` [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/palalpha.rs:36:9 [INFO] [stderr] | [INFO] [stderr] 36 | return false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [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/palalpha.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | return !self.a; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `!self.a` [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/acc.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | / return ((p1.r as i32 - p2.r as i32) * (p1.r as i32 - p2.r as i32) + [INFO] [stderr] 7 | | (p1.g as i32 - p2.g as i32) * (p1.g as i32 - p2.g as i32) + [INFO] [stderr] 8 | | (p1.b as i32 - p2.b as i32) * (p1.b as i32 - p2.b as i32)) as u32; [INFO] [stderr] | |______________________________________________________________________________^ [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] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 6 | ((p1.r as i32 - p2.r as i32) * (p1.r as i32 - p2.r as i32) + [INFO] [stderr] 7 | (p1.g as i32 - p2.g as i32) * (p1.g as i32 - p2.g as i32) + [INFO] [stderr] 8 | (p1.b as i32 - p2.b as i32) * (p1.b as i32 - p2.b as i32)) as u32 [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/acc.rs:105:9 [INFO] [stderr] | [INFO] [stderr] 105 | return (res as u32, p2); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(res as u32, p2)` [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/palalpha.rs:36:9 [INFO] [stderr] | [INFO] [stderr] 36 | return false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [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/palalpha.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | return !self.a; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `!self.a` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:6:14 [INFO] [stderr] | [INFO] [stderr] 6 | return ((p1.r as i32 - p2.r as i32) * (p1.r as i32 - p2.r as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p1.r)` [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] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:6:28 [INFO] [stderr] | [INFO] [stderr] 6 | return ((p1.r as i32 - p2.r as i32) * (p1.r as i32 - p2.r as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p2.r)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:6:44 [INFO] [stderr] | [INFO] [stderr] 6 | return ((p1.r as i32 - p2.r as i32) * (p1.r as i32 - p2.r as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p1.r)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:6:58 [INFO] [stderr] | [INFO] [stderr] 6 | return ((p1.r as i32 - p2.r as i32) * (p1.r as i32 - p2.r as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p2.r)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:7:14 [INFO] [stderr] | [INFO] [stderr] 7 | (p1.g as i32 - p2.g as i32) * (p1.g as i32 - p2.g as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p1.g)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:7:28 [INFO] [stderr] | [INFO] [stderr] 7 | (p1.g as i32 - p2.g as i32) * (p1.g as i32 - p2.g as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p2.g)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:7:44 [INFO] [stderr] | [INFO] [stderr] 7 | (p1.g as i32 - p2.g as i32) * (p1.g as i32 - p2.g as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p1.g)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:7:58 [INFO] [stderr] | [INFO] [stderr] 7 | (p1.g as i32 - p2.g as i32) * (p1.g as i32 - p2.g as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p2.g)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:8:14 [INFO] [stderr] | [INFO] [stderr] 8 | (p1.b as i32 - p2.b as i32) * (p1.b as i32 - p2.b as i32)) as u32; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p1.b)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:8:28 [INFO] [stderr] | [INFO] [stderr] 8 | (p1.b as i32 - p2.b as i32) * (p1.b as i32 - p2.b as i32)) as u32; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p2.b)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:8:44 [INFO] [stderr] | [INFO] [stderr] 8 | (p1.b as i32 - p2.b as i32) * (p1.b as i32 - p2.b as i32)) as u32; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p1.b)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:8:58 [INFO] [stderr] | [INFO] [stderr] 8 | (p1.b as i32 - p2.b as i32) * (p1.b as i32 - p2.b as i32)) as u32; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p2.b)` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:83:18 [INFO] [stderr] | [INFO] [stderr] 83 | r: ((p1.r as u16 + p2.r as u16) / 2) as u8, [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u16::from(p1.r)` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:83:32 [INFO] [stderr] | [INFO] [stderr] 83 | r: ((p1.r as u16 + p2.r as u16) / 2) as u8, [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u16::from(p2.r)` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:84:18 [INFO] [stderr] | [INFO] [stderr] 84 | g: ((p1.g as u16 + p2.g as u16) / 2) as u8, [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u16::from(p1.g)` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:84:32 [INFO] [stderr] | [INFO] [stderr] 84 | g: ((p1.g as u16 + p2.g as u16) / 2) as u8, [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u16::from(p2.g)` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:85:18 [INFO] [stderr] | [INFO] [stderr] 85 | b: ((p1.b as u16 + p2.b as u16) / 2) as u8, [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u16::from(p1.b)` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:85:32 [INFO] [stderr] | [INFO] [stderr] 85 | b: ((p1.b as u16 + p2.b as u16) / 2) as u8, [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u16::from(p2.b)` [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: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:127:29 [INFO] [stderr] | [INFO] [stderr] 127 | acc: px.map(|c| c as u32 * weight), [INFO] [stderr] | ^^^^^^^^ help: try: `u32::from(c)` [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: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:139:27 [INFO] [stderr] | [INFO] [stderr] 139 | self.acc.r += new_px.r as u32 * weight; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(new_px.r)` [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: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:140:27 [INFO] [stderr] | [INFO] [stderr] 140 | self.acc.g += new_px.g as u32 * weight; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(new_px.g)` [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: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:141:27 [INFO] [stderr] | [INFO] [stderr] 141 | self.acc.b += new_px.b as u32 * weight; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(new_px.b)` [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: casting u8 to i16 may become silently lossy if types change [INFO] [stderr] --> src/prewitt.rs:15:31 [INFO] [stderr] | [INFO] [stderr] 15 | let px = self.map(|c| c as i16); [INFO] [stderr] | ^^^^^^^^ help: try: `i16::from(c)` [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 function has too many arguments (8/7) [INFO] [stderr] --> src/prewitt.rs:38:1 [INFO] [stderr] | [INFO] [stderr] 38 | / pub fn prewitt_squared>(top_prev: T, top_curr: T, top_next: T, mid_prev: T, mid_next: T, bot_prev: T, bot_curr: T, bot_next: T) -> u16 { [INFO] [stderr] 39 | | let top_prev = top_prev.into(); [INFO] [stderr] 40 | | let top_curr = top_curr.into(); [INFO] [stderr] 41 | | let top_next = top_next.into(); [INFO] [stderr] ... | [INFO] [stderr] 57 | | ((gx*gx + gy*gy) / 256) as u16 [INFO] [stderr] 58 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::too_many_arguments)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: casting i16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/prewitt.rs:48:14 [INFO] [stderr] | [INFO] [stderr] 48 | let gx = ( [INFO] [stderr] | ______________^ [INFO] [stderr] 49 | | top_next - top_prev + [INFO] [stderr] 50 | | mid_next - mid_prev + [INFO] [stderr] 51 | | bot_next - bot_prev) as i32; [INFO] [stderr] | |___________________________________^ [INFO] [stderr] | [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] 48 | let gx = i32::from( [INFO] [stderr] 49 | top_next - top_prev + [INFO] [stderr] 50 | mid_next - mid_prev + [INFO] [stderr] 51 | bot_next - bot_prev); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting i16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/prewitt.rs:53:14 [INFO] [stderr] | [INFO] [stderr] 53 | let gy = ( [INFO] [stderr] | ______________^ [INFO] [stderr] 54 | | bot_prev + bot_curr + bot_next - [INFO] [stderr] 55 | | top_prev - top_curr - top_next) as i32; [INFO] [stderr] | |______________________________________________^ [INFO] [stderr] | [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] 53 | let gy = i32::from( [INFO] [stderr] 54 | bot_prev + bot_curr + bot_next - [INFO] [stderr] 55 | top_prev - top_curr - top_next); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (9/7) [INFO] [stderr] --> src/undither.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | / pub fn undith_into(&self, src_img: ImgRef, transparent: Option, local_pal: Option<&Pal>, [INFO] [stderr] 23 | | left: usize, top: usize, width: usize, height: usize, inout: &mut ImgVec) [INFO] [stderr] 24 | | where Pixel: PixAlphaAble + Copy { [INFO] [stderr] 25 | | [INFO] [stderr] ... | [INFO] [stderr] 72 | | }); [INFO] [stderr] 73 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: use of `or` followed by a function call [INFO] [stderr] --> src/undither.rs:28:29 [INFO] [stderr] | [INFO] [stderr] 28 | let pal = local_pal.or(self.global_pal.as_ref()).expect("there must be some palette"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `or_else(|| self.global_pal.as_ref())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:6:14 [INFO] [stderr] | [INFO] [stderr] 6 | return ((p1.r as i32 - p2.r as i32) * (p1.r as i32 - p2.r as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p1.r)` [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] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:6:28 [INFO] [stderr] | [INFO] [stderr] 6 | return ((p1.r as i32 - p2.r as i32) * (p1.r as i32 - p2.r as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p2.r)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:6:44 [INFO] [stderr] | [INFO] [stderr] 6 | return ((p1.r as i32 - p2.r as i32) * (p1.r as i32 - p2.r as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p1.r)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:6:58 [INFO] [stderr] | [INFO] [stderr] 6 | return ((p1.r as i32 - p2.r as i32) * (p1.r as i32 - p2.r as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p2.r)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:7:14 [INFO] [stderr] | [INFO] [stderr] 7 | (p1.g as i32 - p2.g as i32) * (p1.g as i32 - p2.g as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p1.g)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:7:28 [INFO] [stderr] | [INFO] [stderr] 7 | (p1.g as i32 - p2.g as i32) * (p1.g as i32 - p2.g as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p2.g)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:7:44 [INFO] [stderr] | [INFO] [stderr] 7 | (p1.g as i32 - p2.g as i32) * (p1.g as i32 - p2.g as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p1.g)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:7:58 [INFO] [stderr] | [INFO] [stderr] 7 | (p1.g as i32 - p2.g as i32) * (p1.g as i32 - p2.g as i32) + [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p2.g)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:8:14 [INFO] [stderr] | [INFO] [stderr] 8 | (p1.b as i32 - p2.b as i32) * (p1.b as i32 - p2.b as i32)) as u32; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p1.b)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:8:28 [INFO] [stderr] | [INFO] [stderr] 8 | (p1.b as i32 - p2.b as i32) * (p1.b as i32 - p2.b as i32)) as u32; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p2.b)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:8:44 [INFO] [stderr] | [INFO] [stderr] 8 | (p1.b as i32 - p2.b as i32) * (p1.b as i32 - p2.b as i32)) as u32; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p1.b)` [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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:8:58 [INFO] [stderr] | [INFO] [stderr] 8 | (p1.b as i32 - p2.b as i32) * (p1.b as i32 - p2.b as i32)) as u32; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `i32::from(p2.b)` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:83:18 [INFO] [stderr] | [INFO] [stderr] 83 | r: ((p1.r as u16 + p2.r as u16) / 2) as u8, [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u16::from(p1.r)` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:83:32 [INFO] [stderr] | [INFO] [stderr] 83 | r: ((p1.r as u16 + p2.r as u16) / 2) as u8, [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u16::from(p2.r)` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:84:18 [INFO] [stderr] | [INFO] [stderr] 84 | g: ((p1.g as u16 + p2.g as u16) / 2) as u8, [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u16::from(p1.g)` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:84:32 [INFO] [stderr] | [INFO] [stderr] 84 | g: ((p1.g as u16 + p2.g as u16) / 2) as u8, [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u16::from(p2.g)` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:85:18 [INFO] [stderr] | [INFO] [stderr] 85 | b: ((p1.b as u16 + p2.b as u16) / 2) as u8, [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u16::from(p1.b)` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:85:32 [INFO] [stderr] | [INFO] [stderr] 85 | b: ((p1.b as u16 + p2.b as u16) / 2) as u8, [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u16::from(p2.b)` [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: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:127:29 [INFO] [stderr] | [INFO] [stderr] 127 | acc: px.map(|c| c as u32 * weight), [INFO] [stderr] | ^^^^^^^^ help: try: `u32::from(c)` [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: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:139:27 [INFO] [stderr] | [INFO] [stderr] 139 | self.acc.r += new_px.r as u32 * weight; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(new_px.r)` [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: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:140:27 [INFO] [stderr] | [INFO] [stderr] 140 | self.acc.g += new_px.g as u32 * weight; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(new_px.g)` [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: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/acc.rs:141:27 [INFO] [stderr] | [INFO] [stderr] 141 | self.acc.b += new_px.b as u32 * weight; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(new_px.b)` [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: needlessly taken reference of both operands [INFO] [stderr] --> src/pal.rs:51:13 [INFO] [stderr] | [INFO] [stderr] 51 | assert!(&Pal::new(&a) == &Pal::new(&b)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::op_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref [INFO] [stderr] help: use the values directly [INFO] [stderr] | [INFO] [stderr] 51 | assert!(Pal::new(&a) == Pal::new(&b)); [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i16 may become silently lossy if types change [INFO] [stderr] --> src/prewitt.rs:15:31 [INFO] [stderr] | [INFO] [stderr] 15 | let px = self.map(|c| c as i16); [INFO] [stderr] | ^^^^^^^^ help: try: `i16::from(c)` [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 function has too many arguments (8/7) [INFO] [stderr] --> src/prewitt.rs:38:1 [INFO] [stderr] | [INFO] [stderr] 38 | / pub fn prewitt_squared>(top_prev: T, top_curr: T, top_next: T, mid_prev: T, mid_next: T, bot_prev: T, bot_curr: T, bot_next: T) -> u16 { [INFO] [stderr] 39 | | let top_prev = top_prev.into(); [INFO] [stderr] 40 | | let top_curr = top_curr.into(); [INFO] [stderr] 41 | | let top_next = top_next.into(); [INFO] [stderr] ... | [INFO] [stderr] 57 | | ((gx*gx + gy*gy) / 256) as u16 [INFO] [stderr] 58 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::too_many_arguments)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: casting i16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/prewitt.rs:48:14 [INFO] [stderr] | [INFO] [stderr] 48 | let gx = ( [INFO] [stderr] | ______________^ [INFO] [stderr] 49 | | top_next - top_prev + [INFO] [stderr] 50 | | mid_next - mid_prev + [INFO] [stderr] 51 | | bot_next - bot_prev) as i32; [INFO] [stderr] | |___________________________________^ [INFO] [stderr] | [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] 48 | let gx = i32::from( [INFO] [stderr] 49 | top_next - top_prev + [INFO] [stderr] 50 | mid_next - mid_prev + [INFO] [stderr] 51 | bot_next - bot_prev); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting i16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/prewitt.rs:53:14 [INFO] [stderr] | [INFO] [stderr] 53 | let gy = ( [INFO] [stderr] | ______________^ [INFO] [stderr] 54 | | bot_prev + bot_curr + bot_next - [INFO] [stderr] 55 | | top_prev - top_curr - top_next) as i32; [INFO] [stderr] | |______________________________________________^ [INFO] [stderr] | [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] 53 | let gy = i32::from( [INFO] [stderr] 54 | bot_prev + bot_curr + bot_next - [INFO] [stderr] 55 | top_prev - top_curr - top_next); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (9/7) [INFO] [stderr] --> src/undither.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | / pub fn undith_into(&self, src_img: ImgRef, transparent: Option, local_pal: Option<&Pal>, [INFO] [stderr] 23 | | left: usize, top: usize, width: usize, height: usize, inout: &mut ImgVec) [INFO] [stderr] 24 | | where Pixel: PixAlphaAble + Copy { [INFO] [stderr] 25 | | [INFO] [stderr] ... | [INFO] [stderr] 72 | | }); [INFO] [stderr] 73 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: use of `or` followed by a function call [INFO] [stderr] --> src/undither.rs:28:29 [INFO] [stderr] | [INFO] [stderr] 28 | let pal = local_pal.or(self.global_pal.as_ref()).expect("there must be some palette"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `or_else(|| self.global_pal.as_ref())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 3.83s [INFO] running `"docker" "inspect" "a82f39264402457d0189221539357f84ad0153c65d3b2aea3b6ac13bc9234956"` [INFO] running `"docker" "rm" "-f" "a82f39264402457d0189221539357f84ad0153c65d3b2aea3b6ac13bc9234956"` [INFO] [stdout] a82f39264402457d0189221539357f84ad0153c65d3b2aea3b6ac13bc9234956