[INFO] crate dds-rs 0.7.0 is already in cache [INFO] extracting crate dds-rs 0.7.0 into work/ex/clippy-test-run/sources/stable/reg/dds-rs/0.7.0 [INFO] extracting crate dds-rs 0.7.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/dds-rs/0.7.0 [INFO] validating manifest of dds-rs-0.7.0 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 dds-rs-0.7.0 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 dds-rs-0.7.0 [INFO] finished frobbing dds-rs-0.7.0 [INFO] frobbed toml for dds-rs-0.7.0 written to work/ex/clippy-test-run/sources/stable/reg/dds-rs/0.7.0/Cargo.toml [INFO] started frobbing dds-rs-0.7.0 [INFO] finished frobbing dds-rs-0.7.0 [INFO] frobbed toml for dds-rs-0.7.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/dds-rs/0.7.0/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 dds-rs-0.7.0 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/dds-rs/0.7.0:/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] 15893f3c221426be504f859e6935d9ec2c1cd9b4494b862c232b00fbc86fae81 [INFO] running `"docker" "start" "-a" "15893f3c221426be504f859e6935d9ec2c1cd9b4494b862c232b00fbc86fae81"` [INFO] [stderr] Checking dds-rs v0.7.0 (/opt/crater/workdir) [INFO] [stderr] Checking image v0.18.0 [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:260:42 [INFO] [stderr] | [INFO] [stderr] 260 | (32, 0x3FF, 0xFFC00, 0x3FF00000, 0xC0000000) => PixelFormat::A2B10G10R10, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x3FF0_0000` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:260:54 [INFO] [stderr] | [INFO] [stderr] 260 | (32, 0x3FF, 0xFFC00, 0x3FF00000, 0xC0000000) => PixelFormat::A2B10G10R10, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xC000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:261:18 [INFO] [stderr] | [INFO] [stderr] 261 | (32, 0x3FF00000, 0xFFC00, 0x3FF, 0xC0000000) => PixelFormat::A2R10G10B10, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x3FF0_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:261:54 [INFO] [stderr] | [INFO] [stderr] 261 | (32, 0x3FF00000, 0xFFC00, 0x3FF, 0xC0000000) => PixelFormat::A2R10G10B10, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xC000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:265:44 [INFO] [stderr] | [INFO] [stderr] 265 | (32, 0xFF, 0xFF00, 0xFF0000, 0xFF000000) => PixelFormat::A8B8G8R8, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x00FF_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:265:54 [INFO] [stderr] | [INFO] [stderr] 265 | (32, 0xFF, 0xFF00, 0xFF0000, 0xFF000000) => PixelFormat::A8B8G8R8, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xFF00_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:268:20 [INFO] [stderr] | [INFO] [stderr] 268 | (32, 0xFF0000, 0xFF00, 0xFF, 0xFF000000) => PixelFormat::A8R8G8B8, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x00FF_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:268:54 [INFO] [stderr] | [INFO] [stderr] 268 | (32, 0xFF0000, 0xFF00, 0xFF, 0xFF000000) => PixelFormat::A8R8G8B8, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xFF00_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:269:30 [INFO] [stderr] | [INFO] [stderr] 269 | (32, 0xFFFF, 0xFFFF0000, 0x0, 0x0) => PixelFormat::G16R16, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xFFFF_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:273:20 [INFO] [stderr] | [INFO] [stderr] 273 | (24, 0xFF0000, 0xFF00, 0xFF, 0x0) => PixelFormat::R8G8B8, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x00FF_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:276:44 [INFO] [stderr] | [INFO] [stderr] 276 | (32, 0xFF, 0xFF00, 0xFF0000, 0x0) => PixelFormat::X8B8G8R8, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x00FF_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:277:20 [INFO] [stderr] | [INFO] [stderr] 277 | (32, 0xFF0000, 0xFF00, 0xFF, 0x0) => PixelFormat::X8R8G8B8, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x00FF_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: operator precedence can trip the unwary [INFO] [stderr] --> src/lib.rs:340:22 [INFO] [stderr] | [INFO] [stderr] 340 | ((pixel & mask) >> mask.trailing_zeros() * 255 / (2u32.pow(mask.count_ones()) - 1)) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider parenthesizing your expression: `(pixel & mask) >> (mask.trailing_zeros() * 255 / (2u32.pow(mask.count_ones()) - 1))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::precedence)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#precedence [INFO] [stderr] [INFO] [stderr] warning: operator precedence can trip the unwary [INFO] [stderr] --> src/lib.rs:493:45 [INFO] [stderr] | [INFO] [stderr] 493 | .fold(0u64, |memo, (i, &x)| memo + ((x as u64) << 8 * i) as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider parenthesizing your expression: `(x as u64) << (8 * i)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#precedence [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:710:40 [INFO] [stderr] | [INFO] [stderr] 710 | blue_bit_mask: 0xFF0000, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x00FF_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:711:41 [INFO] [stderr] | [INFO] [stderr] 711 | alpha_bit_mask: 0xFF000000, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xFF00_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:179:26 [INFO] [stderr] | [INFO] [stderr] 179 | fn from_bytes(bytes: &[u8; 4]) -> Compression { [INFO] [stderr] | ^^^^^^^^ help: consider passing by value instead: `[u8; 4]` [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: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:335:34 [INFO] [stderr] | [INFO] [stderr] 335 | let pixel: u32 = p[0] as u32 + ((p[1] as u32) << 8) + ((p[2] as u32) << 16) + ((p[3] as u32) << 24); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u32::from(p[0])` [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 u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:335:49 [INFO] [stderr] | [INFO] [stderr] 335 | let pixel: u32 = p[0] as u32 + ((p[1] as u32) << 8) + ((p[2] as u32) << 16) + ((p[3] as u32) << 24); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u32::from(p[1])` [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/lib.rs:335:72 [INFO] [stderr] | [INFO] [stderr] 335 | let pixel: u32 = p[0] as u32 + ((p[1] as u32) << 8) + ((p[2] as u32) << 16) + ((p[3] as u32) << 24); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u32::from(p[2])` [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/lib.rs:335:96 [INFO] [stderr] | [INFO] [stderr] 335 | let pixel: u32 = p[0] as u32 + ((p[1] as u32) << 8) + ((p[2] as u32) << 16) + ((p[3] as u32) << 24); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u32::from(p[3])` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:359:22 [INFO] [stderr] | [INFO] [stderr] 359 | let color0 = (((bytes[1] as u16) << 8) + bytes[0] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(((bytes[1] as u16) << 8) + bytes[0] as u16)` [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/lib.rs:359:24 [INFO] [stderr] | [INFO] [stderr] 359 | let color0 = (((bytes[1] as u16) << 8) + bytes[0] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[1])` [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/lib.rs:359:50 [INFO] [stderr] | [INFO] [stderr] 359 | let color0 = (((bytes[1] as u16) << 8) + bytes[0] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[0])` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:360:22 [INFO] [stderr] | [INFO] [stderr] 360 | let color1 = (((bytes[3] as u16) << 8) + bytes[2] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(((bytes[3] as u16) << 8) + bytes[2] as u16)` [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/lib.rs:360:24 [INFO] [stderr] | [INFO] [stderr] 360 | let color1 = (((bytes[3] as u16) << 8) + bytes[2] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[3])` [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/lib.rs:360:50 [INFO] [stderr] | [INFO] [stderr] 360 | let color1 = (((bytes[3] as u16) << 8) + bytes[2] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[2])` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:433:22 [INFO] [stderr] | [INFO] [stderr] 433 | let color0 = (((bytes[9] as u16) << 8) + bytes[8] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(((bytes[9] as u16) << 8) + bytes[8] as u16)` [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/lib.rs:433:24 [INFO] [stderr] | [INFO] [stderr] 433 | let color0 = (((bytes[9] as u16) << 8) + bytes[8] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[9])` [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/lib.rs:433:50 [INFO] [stderr] | [INFO] [stderr] 433 | let color0 = (((bytes[9] as u16) << 8) + bytes[8] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[8])` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:434:22 [INFO] [stderr] | [INFO] [stderr] 434 | let color1 = (((bytes[11] as u16) << 8) + bytes[10] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(((bytes[11] as u16) << 8) + bytes[10] as u16)` [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/lib.rs:434:24 [INFO] [stderr] | [INFO] [stderr] 434 | let color1 = (((bytes[11] as u16) << 8) + bytes[10] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[11])` [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/lib.rs:434:51 [INFO] [stderr] | [INFO] [stderr] 434 | let color1 = (((bytes[11] as u16) << 8) + bytes[10] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[10])` [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/lib.rs:472:25 [INFO] [stderr] | [INFO] [stderr] 472 | a: (alpha_nibble as u32 * 255 / 15) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(alpha_nibble)` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:482:22 [INFO] [stderr] | [INFO] [stderr] 482 | let color0 = (((bytes[9] as u16) << 8) + bytes[8] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(((bytes[9] as u16) << 8) + bytes[8] as u16)` [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/lib.rs:482:24 [INFO] [stderr] | [INFO] [stderr] 482 | let color0 = (((bytes[9] as u16) << 8) + bytes[8] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[9])` [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/lib.rs:482:50 [INFO] [stderr] | [INFO] [stderr] 482 | let color0 = (((bytes[9] as u16) << 8) + bytes[8] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[8])` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:483:22 [INFO] [stderr] | [INFO] [stderr] 483 | let color1 = (((bytes[11] as u16) << 8) + bytes[10] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(((bytes[11] as u16) << 8) + bytes[10] as u16)` [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/lib.rs:483:24 [INFO] [stderr] | [INFO] [stderr] 483 | let color1 = (((bytes[11] as u16) << 8) + bytes[10] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[11])` [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/lib.rs:483:51 [INFO] [stderr] | [INFO] [stderr] 483 | let color1 = (((bytes[11] as u16) << 8) + bytes[10] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[10])` [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/lib.rs:485:22 [INFO] [stderr] | [INFO] [stderr] 485 | let alpha0 = bytes[0] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(bytes[0])` [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/lib.rs:486:22 [INFO] [stderr] | [INFO] [stderr] 486 | let alpha1 = bytes[1] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(bytes[1])` [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 u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:493:45 [INFO] [stderr] | [INFO] [stderr] 493 | .fold(0u64, |memo, (i, &x)| memo + ((x as u64) << 8 * i) as u64); [INFO] [stderr] | ^^^^^^^^^^ help: try: `u64::from(x)` [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 operation is ineffective. Consider reducing it to `alpha1` [INFO] [stderr] --> src/lib.rs:539:48 [INFO] [stderr] | [INFO] [stderr] 539 | (true, 2) => (6 * alpha0 + 1 * alpha1) / 7, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_op)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `alpha0` [INFO] [stderr] --> src/lib.rs:544:35 [INFO] [stderr] | [INFO] [stderr] 544 | (true, 7) => (1 * alpha0 + 6 * alpha1) / 7, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `alpha1` [INFO] [stderr] --> src/lib.rs:547:49 [INFO] [stderr] | [INFO] [stderr] 547 | (false, 2) => (4 * alpha0 + 1 * alpha1) / 5, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `alpha0` [INFO] [stderr] --> src/lib.rs:550:36 [INFO] [stderr] | [INFO] [stderr] 550 | (false, 5) => (1 * alpha0 + 4 * alpha1) / 5, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [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/lib.rs:678:27 [INFO] [stderr] | [INFO] [stderr] 678 | pub fn encode(pixels: &Vec>, size: (u32, u32), compression: Compression) -> Result, EncodeError> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: change this to: `&[RGBA]` [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: long literal lacking separators [INFO] [stderr] --> src/lib.rs:260:42 [INFO] [stderr] | [INFO] [stderr] 260 | (32, 0x3FF, 0xFFC00, 0x3FF00000, 0xC0000000) => PixelFormat::A2B10G10R10, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x3FF0_0000` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:260:54 [INFO] [stderr] | [INFO] [stderr] 260 | (32, 0x3FF, 0xFFC00, 0x3FF00000, 0xC0000000) => PixelFormat::A2B10G10R10, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xC000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:261:18 [INFO] [stderr] | [INFO] [stderr] 261 | (32, 0x3FF00000, 0xFFC00, 0x3FF, 0xC0000000) => PixelFormat::A2R10G10B10, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x3FF0_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:261:54 [INFO] [stderr] | [INFO] [stderr] 261 | (32, 0x3FF00000, 0xFFC00, 0x3FF, 0xC0000000) => PixelFormat::A2R10G10B10, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xC000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:265:44 [INFO] [stderr] | [INFO] [stderr] 265 | (32, 0xFF, 0xFF00, 0xFF0000, 0xFF000000) => PixelFormat::A8B8G8R8, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x00FF_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:265:54 [INFO] [stderr] | [INFO] [stderr] 265 | (32, 0xFF, 0xFF00, 0xFF0000, 0xFF000000) => PixelFormat::A8B8G8R8, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xFF00_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:268:20 [INFO] [stderr] | [INFO] [stderr] 268 | (32, 0xFF0000, 0xFF00, 0xFF, 0xFF000000) => PixelFormat::A8R8G8B8, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x00FF_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:268:54 [INFO] [stderr] | [INFO] [stderr] 268 | (32, 0xFF0000, 0xFF00, 0xFF, 0xFF000000) => PixelFormat::A8R8G8B8, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xFF00_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:269:30 [INFO] [stderr] | [INFO] [stderr] 269 | (32, 0xFFFF, 0xFFFF0000, 0x0, 0x0) => PixelFormat::G16R16, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xFFFF_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:273:20 [INFO] [stderr] | [INFO] [stderr] 273 | (24, 0xFF0000, 0xFF00, 0xFF, 0x0) => PixelFormat::R8G8B8, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x00FF_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:276:44 [INFO] [stderr] | [INFO] [stderr] 276 | (32, 0xFF, 0xFF00, 0xFF0000, 0x0) => PixelFormat::X8B8G8R8, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x00FF_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:277:20 [INFO] [stderr] | [INFO] [stderr] 277 | (32, 0xFF0000, 0xFF00, 0xFF, 0x0) => PixelFormat::X8R8G8B8, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x00FF_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: operator precedence can trip the unwary [INFO] [stderr] --> src/lib.rs:340:22 [INFO] [stderr] | [INFO] [stderr] 340 | ((pixel & mask) >> mask.trailing_zeros() * 255 / (2u32.pow(mask.count_ones()) - 1)) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider parenthesizing your expression: `(pixel & mask) >> (mask.trailing_zeros() * 255 / (2u32.pow(mask.count_ones()) - 1))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::precedence)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#precedence [INFO] [stderr] [INFO] [stderr] warning: operator precedence can trip the unwary [INFO] [stderr] --> src/lib.rs:493:45 [INFO] [stderr] | [INFO] [stderr] 493 | .fold(0u64, |memo, (i, &x)| memo + ((x as u64) << 8 * i) as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider parenthesizing your expression: `(x as u64) << (8 * i)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#precedence [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:710:40 [INFO] [stderr] | [INFO] [stderr] 710 | blue_bit_mask: 0xFF0000, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x00FF_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:711:41 [INFO] [stderr] | [INFO] [stderr] 711 | alpha_bit_mask: 0xFF000000, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xFF00_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:179:26 [INFO] [stderr] | [INFO] [stderr] 179 | fn from_bytes(bytes: &[u8; 4]) -> Compression { [INFO] [stderr] | ^^^^^^^^ help: consider passing by value instead: `[u8; 4]` [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: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:335:34 [INFO] [stderr] | [INFO] [stderr] 335 | let pixel: u32 = p[0] as u32 + ((p[1] as u32) << 8) + ((p[2] as u32) << 16) + ((p[3] as u32) << 24); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u32::from(p[0])` [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 u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:335:49 [INFO] [stderr] | [INFO] [stderr] 335 | let pixel: u32 = p[0] as u32 + ((p[1] as u32) << 8) + ((p[2] as u32) << 16) + ((p[3] as u32) << 24); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u32::from(p[1])` [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/lib.rs:335:72 [INFO] [stderr] | [INFO] [stderr] 335 | let pixel: u32 = p[0] as u32 + ((p[1] as u32) << 8) + ((p[2] as u32) << 16) + ((p[3] as u32) << 24); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u32::from(p[2])` [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/lib.rs:335:96 [INFO] [stderr] | [INFO] [stderr] 335 | let pixel: u32 = p[0] as u32 + ((p[1] as u32) << 8) + ((p[2] as u32) << 16) + ((p[3] as u32) << 24); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u32::from(p[3])` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:359:22 [INFO] [stderr] | [INFO] [stderr] 359 | let color0 = (((bytes[1] as u16) << 8) + bytes[0] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(((bytes[1] as u16) << 8) + bytes[0] as u16)` [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/lib.rs:359:24 [INFO] [stderr] | [INFO] [stderr] 359 | let color0 = (((bytes[1] as u16) << 8) + bytes[0] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[1])` [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/lib.rs:359:50 [INFO] [stderr] | [INFO] [stderr] 359 | let color0 = (((bytes[1] as u16) << 8) + bytes[0] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[0])` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:360:22 [INFO] [stderr] | [INFO] [stderr] 360 | let color1 = (((bytes[3] as u16) << 8) + bytes[2] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(((bytes[3] as u16) << 8) + bytes[2] as u16)` [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/lib.rs:360:24 [INFO] [stderr] | [INFO] [stderr] 360 | let color1 = (((bytes[3] as u16) << 8) + bytes[2] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[3])` [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/lib.rs:360:50 [INFO] [stderr] | [INFO] [stderr] 360 | let color1 = (((bytes[3] as u16) << 8) + bytes[2] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[2])` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:433:22 [INFO] [stderr] | [INFO] [stderr] 433 | let color0 = (((bytes[9] as u16) << 8) + bytes[8] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(((bytes[9] as u16) << 8) + bytes[8] as u16)` [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/lib.rs:433:24 [INFO] [stderr] | [INFO] [stderr] 433 | let color0 = (((bytes[9] as u16) << 8) + bytes[8] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[9])` [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/lib.rs:433:50 [INFO] [stderr] | [INFO] [stderr] 433 | let color0 = (((bytes[9] as u16) << 8) + bytes[8] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[8])` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:434:22 [INFO] [stderr] | [INFO] [stderr] 434 | let color1 = (((bytes[11] as u16) << 8) + bytes[10] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(((bytes[11] as u16) << 8) + bytes[10] as u16)` [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/lib.rs:434:24 [INFO] [stderr] | [INFO] [stderr] 434 | let color1 = (((bytes[11] as u16) << 8) + bytes[10] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[11])` [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/lib.rs:434:51 [INFO] [stderr] | [INFO] [stderr] 434 | let color1 = (((bytes[11] as u16) << 8) + bytes[10] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[10])` [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/lib.rs:472:25 [INFO] [stderr] | [INFO] [stderr] 472 | a: (alpha_nibble as u32 * 255 / 15) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(alpha_nibble)` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:482:22 [INFO] [stderr] | [INFO] [stderr] 482 | let color0 = (((bytes[9] as u16) << 8) + bytes[8] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(((bytes[9] as u16) << 8) + bytes[8] as u16)` [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/lib.rs:482:24 [INFO] [stderr] | [INFO] [stderr] 482 | let color0 = (((bytes[9] as u16) << 8) + bytes[8] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[9])` [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/lib.rs:482:50 [INFO] [stderr] | [INFO] [stderr] 482 | let color0 = (((bytes[9] as u16) << 8) + bytes[8] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[8])` [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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:483:22 [INFO] [stderr] | [INFO] [stderr] 483 | let color1 = (((bytes[11] as u16) << 8) + bytes[10] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(((bytes[11] as u16) << 8) + bytes[10] as u16)` [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/lib.rs:483:24 [INFO] [stderr] | [INFO] [stderr] 483 | let color1 = (((bytes[11] as u16) << 8) + bytes[10] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[11])` [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/lib.rs:483:51 [INFO] [stderr] | [INFO] [stderr] 483 | let color1 = (((bytes[11] as u16) << 8) + bytes[10] as u16) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u16::from(bytes[10])` [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/lib.rs:485:22 [INFO] [stderr] | [INFO] [stderr] 485 | let alpha0 = bytes[0] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(bytes[0])` [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/lib.rs:486:22 [INFO] [stderr] | [INFO] [stderr] 486 | let alpha1 = bytes[1] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(bytes[1])` [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 u64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:493:45 [INFO] [stderr] | [INFO] [stderr] 493 | .fold(0u64, |memo, (i, &x)| memo + ((x as u64) << 8 * i) as u64); [INFO] [stderr] | ^^^^^^^^^^ help: try: `u64::from(x)` [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 operation is ineffective. Consider reducing it to `alpha1` [INFO] [stderr] --> src/lib.rs:539:48 [INFO] [stderr] | [INFO] [stderr] 539 | (true, 2) => (6 * alpha0 + 1 * alpha1) / 7, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_op)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `alpha0` [INFO] [stderr] --> src/lib.rs:544:35 [INFO] [stderr] | [INFO] [stderr] 544 | (true, 7) => (1 * alpha0 + 6 * alpha1) / 7, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `alpha1` [INFO] [stderr] --> src/lib.rs:547:49 [INFO] [stderr] | [INFO] [stderr] 547 | (false, 2) => (4 * alpha0 + 1 * alpha1) / 5, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `alpha0` [INFO] [stderr] --> src/lib.rs:550:36 [INFO] [stderr] | [INFO] [stderr] 550 | (false, 5) => (1 * alpha0 + 4 * alpha1) / 5, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [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/lib.rs:678:27 [INFO] [stderr] | [INFO] [stderr] 678 | pub fn encode(pixels: &Vec>, size: (u32, u32), compression: Compression) -> Result, EncodeError> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: change this to: `&[RGBA]` [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] error[E0554]: #![feature] may not be used on the stable release channel [INFO] [stderr] --> benches/benchmarks.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #![feature(test)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0554`. [INFO] [stderr] error: Could not compile `dds-rs`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: unused imports: `ComponentBytes`, `FromSlice` [INFO] [stderr] --> tests/main.rs:9:11 [INFO] [stderr] | [INFO] [stderr] 9 | use rgb::{ComponentBytes, FromSlice}; [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Read` [INFO] [stderr] --> tests/main.rs:32:9 [INFO] [stderr] | [INFO] [stderr] 32 | use std::io::Read; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: build failed [INFO] running `"docker" "inspect" "15893f3c221426be504f859e6935d9ec2c1cd9b4494b862c232b00fbc86fae81"` [INFO] running `"docker" "rm" "-f" "15893f3c221426be504f859e6935d9ec2c1cd9b4494b862c232b00fbc86fae81"` [INFO] [stdout] 15893f3c221426be504f859e6935d9ec2c1cd9b4494b862c232b00fbc86fae81