[INFO] updating cached repository Addisonbean/gcmod [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/Addisonbean/gcmod [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/Addisonbean/gcmod" "work/ex/clippy-test-run/sources/stable/gh/Addisonbean/gcmod"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/Addisonbean/gcmod'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/Addisonbean/gcmod" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/Addisonbean/gcmod"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/Addisonbean/gcmod'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 2fe1d3eb5632937b894dfec290b047e161ac9bff [INFO] sha for GitHub repo Addisonbean/gcmod: 2fe1d3eb5632937b894dfec290b047e161ac9bff [INFO] validating manifest of Addisonbean/gcmod 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 Addisonbean/gcmod 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 Addisonbean/gcmod [INFO] finished frobbing Addisonbean/gcmod [INFO] frobbed toml for Addisonbean/gcmod written to work/ex/clippy-test-run/sources/stable/gh/Addisonbean/gcmod/Cargo.toml [INFO] started frobbing Addisonbean/gcmod [INFO] finished frobbing Addisonbean/gcmod [INFO] frobbed toml for Addisonbean/gcmod written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/Addisonbean/gcmod/Cargo.toml [INFO] crate Addisonbean/gcmod has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting Addisonbean/gcmod against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-4/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/Addisonbean/gcmod:/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] f6761780c9f95015269ebf8b77c33a9c9c461a600af0ca86f1214a74e088a615 [INFO] running `"docker" "start" "-a" "f6761780c9f95015269ebf8b77c33a9c9c461a600af0ca86f1214a74e088a615"` [INFO] [stderr] Checking gcmod v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/game.rs:21:29 [INFO] [stderr] | [INFO] [stderr] 21 | pub const ROM_SIZE: usize = 0x57058000; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x5705_8000` [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: operator precedence can trip the unwary [INFO] [stderr] --> src/sections/fst/entry.rs:16:20 [INFO] [stderr] | [INFO] [stderr] 16 | buf[i] = ((num >> 8 * (buf.len() - i - 1)) & 0xff) as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider parenthesizing your expression: `num >> (8 * (buf.len() - i - 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: long literal lacking separators [INFO] [stderr] --> src/sections/header.rs:27:29 [INFO] [stderr] | [INFO] [stderr] 27 | pub const MAGIC_WORD: u32 = 0xc2339f3d; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xc233_9f3d` [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/rom_rebuilder.rs:21:29 [INFO] [stderr] | [INFO] [stderr] 21 | pub const ROM_SIZE: usize = 0x57058000; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x5705_8000` [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:22:37 [INFO] [stderr] | [INFO] [stderr] 22 | pub const WRITE_CHUNK_SIZE: usize = 1048576; [INFO] [stderr] | ^^^^^^^ help: consider: `1_048_576` [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: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib.rs:29:32 [INFO] [stderr] | [INFO] [stderr] 29 | pub const APPLOADER_PATH: &'static str = "&&systemdata/Apploader.ldr"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib.rs:30:26 [INFO] [stderr] | [INFO] [stderr] 30 | pub const DOL_PATH: &'static str = "&&systemdata/Start.dol"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib.rs:31:26 [INFO] [stderr] | [INFO] [stderr] 31 | pub const FST_PATH: &'static str = "&&systemdata/Game.toc"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib.rs:32:29 [INFO] [stderr] | [INFO] [stderr] 32 | pub const HEADER_PATH: &'static str = "&&systemdata/ISO.hdr"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/game.rs:21:29 [INFO] [stderr] | [INFO] [stderr] 21 | pub const ROM_SIZE: usize = 0x57058000; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x5705_8000` [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: operator precedence can trip the unwary [INFO] [stderr] --> src/sections/fst/entry.rs:16:20 [INFO] [stderr] | [INFO] [stderr] 16 | buf[i] = ((num >> 8 * (buf.len() - i - 1)) & 0xff) as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider parenthesizing your expression: `num >> (8 * (buf.len() - i - 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: long literal lacking separators [INFO] [stderr] --> src/sections/header.rs:27:29 [INFO] [stderr] | [INFO] [stderr] 27 | pub const MAGIC_WORD: u32 = 0xc2339f3d; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xc233_9f3d` [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/rom_rebuilder.rs:21:29 [INFO] [stderr] | [INFO] [stderr] 21 | pub const ROM_SIZE: usize = 0x57058000; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x5705_8000` [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:22:37 [INFO] [stderr] | [INFO] [stderr] 22 | pub const WRITE_CHUNK_SIZE: usize = 1048576; [INFO] [stderr] | ^^^^^^^ help: consider: `1_048_576` [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: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib.rs:29:32 [INFO] [stderr] | [INFO] [stderr] 29 | pub const APPLOADER_PATH: &'static str = "&&systemdata/Apploader.ldr"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib.rs:30:26 [INFO] [stderr] | [INFO] [stderr] 30 | pub const DOL_PATH: &'static str = "&&systemdata/Start.dol"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib.rs:31:26 [INFO] [stderr] | [INFO] [stderr] 31 | pub const FST_PATH: &'static str = "&&systemdata/Game.toc"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib.rs:32:29 [INFO] [stderr] | [INFO] [stderr] 32 | pub const HEADER_PATH: &'static str = "&&systemdata/ISO.hdr"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `APPLOADER_ENTRY_POINT_ADDR` [INFO] [stderr] --> src/sections/apploader.rs:23:1 [INFO] [stderr] | [INFO] [stderr] 23 | const APPLOADER_ENTRY_POINT_ADDR: u64 = 0x2450; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `APPLOADER_ENTRY_POINT_SIZE` [INFO] [stderr] --> src/sections/apploader.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | const APPLOADER_ENTRY_POINT_SIZE: u64 = 0xA0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `APPLOADER_ENTRY_POINT_ADDR` [INFO] [stderr] --> src/sections/apploader.rs:23:1 [INFO] [stderr] | [INFO] [stderr] 23 | const APPLOADER_ENTRY_POINT_ADDR: u64 = 0x2450; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `APPLOADER_ENTRY_POINT_SIZE` [INFO] [stderr] --> src/sections/apploader.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | const APPLOADER_ENTRY_POINT_SIZE: u64 = 0xA0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/game.rs:185:44 [INFO] [stderr] | [INFO] [stderr] 185 | println!("Version: {}", format_u64(self.header.version as u64, style)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.header.version)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/apploader.rs:47:27 [INFO] [stderr] | [INFO] [stderr] 47 | let entry_point = reader.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(reader.read_u32::()?)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/apploader.rs:70:25 [INFO] [stderr] | [INFO] [stderr] 70 | let code_size = iso.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(iso.read_u32::()?)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/apploader.rs:71:28 [INFO] [stderr] | [INFO] [stderr] 71 | let trailer_size = iso.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(iso.read_u32::()?)` [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/game.rs:185:44 [INFO] [stderr] | [INFO] [stderr] 185 | println!("Version: {}", format_u64(self.header.version as u64, style)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(self.header.version)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/apploader.rs:47:27 [INFO] [stderr] | [INFO] [stderr] 47 | let entry_point = reader.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(reader.read_u32::()?)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/apploader.rs:70:25 [INFO] [stderr] | [INFO] [stderr] 70 | let code_size = iso.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(iso.read_u32::()?)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/apploader.rs:71:28 [INFO] [stderr] | [INFO] [stderr] 71 | let trailer_size = iso.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(iso.read_u32::()?)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/dol/mod.rs:82:33 [INFO] [stderr] | [INFO] [stderr] 82 | s.offset = offset + file.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(file.read_u32::()?)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/dol/mod.rs:94:33 [INFO] [stderr] | [INFO] [stderr] 94 | s.loading_address = file.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(file.read_u32::()?)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/dol/mod.rs:98:27 [INFO] [stderr] | [INFO] [stderr] 98 | let entry_point = file.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(file.read_u32::()?)` [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 `dol_addr` [INFO] [stderr] --> src/sections/dol/mod.rs:139:38 [INFO] [stderr] | [INFO] [stderr] 139 | iso.seek(SeekFrom::Start(dol_addr + 0x00 + i * 4))?; [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: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/dol/mod.rs:82:33 [INFO] [stderr] | [INFO] [stderr] 82 | s.offset = offset + file.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(file.read_u32::()?)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/dol/mod.rs:94:33 [INFO] [stderr] | [INFO] [stderr] 94 | s.loading_address = file.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(file.read_u32::()?)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/dol/mod.rs:98:27 [INFO] [stderr] | [INFO] [stderr] 98 | let entry_point = file.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(file.read_u32::()?)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/fst/entry.rs:75:13 [INFO] [stderr] | [INFO] [stderr] 75 | (&entry[1..4]).read_u24::().unwrap() as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from((&entry[1..4]).read_u24::().unwrap())` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/fst/entry.rs:92:30 [INFO] [stderr] | [INFO] [stderr] 92 | file_offset: f2 as u64, [INFO] [stderr] | ^^^^^^^^^ help: try: `u64::from(f2)` [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 `dol_addr` [INFO] [stderr] --> src/sections/dol/mod.rs:139:38 [INFO] [stderr] | [INFO] [stderr] 139 | iso.seek(SeekFrom::Start(dol_addr + 0x00 + i * 4))?; [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: identical conversion [INFO] [stderr] --> src/sections/fst/entry.rs:306:9 [INFO] [stderr] | [INFO] [stderr] 306 | self.info.full_path.to_string_lossy().into() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `self.info.full_path.to_string_lossy()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/fst/entry.rs:75:13 [INFO] [stderr] | [INFO] [stderr] 75 | (&entry[1..4]).read_u24::().unwrap() as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from((&entry[1..4]).read_u24::().unwrap())` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/fst/entry.rs:92:30 [INFO] [stderr] | [INFO] [stderr] 92 | file_offset: f2 as u64, [INFO] [stderr] | ^^^^^^^^^ help: try: `u64::from(f2)` [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: identical conversion [INFO] [stderr] --> src/sections/fst/entry.rs:306:9 [INFO] [stderr] | [INFO] [stderr] 306 | self.info.full_path.to_string_lossy().into() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `self.info.full_path.to_string_lossy()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: you seem to want to iterate on a map's values [INFO] [stderr] --> src/sections/fst/mod.rs:154:26 [INFO] [stderr] | [INFO] [stderr] 154 | for (_, name) in &sorted_names { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::for_kv_map)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stderr] help: use the corresponding method [INFO] [stderr] | [INFO] [stderr] 154 | for name in sorted_names.values() { [INFO] [stderr] | ^^^^ ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/sections/fst/mod.rs:155:13 [INFO] [stderr] | [INFO] [stderr] 155 | (&mut writer).write(name.as_bytes())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/sections/fst/mod.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | (&mut writer).write(&null_byte[..])?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: you seem to want to iterate on a map's values [INFO] [stderr] --> src/sections/fst/mod.rs:154:26 [INFO] [stderr] | [INFO] [stderr] 154 | for (_, name) in &sorted_names { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::for_kv_map)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stderr] help: use the corresponding method [INFO] [stderr] | [INFO] [stderr] 154 | for name in sorted_names.values() { [INFO] [stderr] | ^^^^ ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/sections/fst/mod.rs:155:13 [INFO] [stderr] | [INFO] [stderr] 155 | (&mut writer).write(name.as_bytes())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/sections/fst/mod.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | (&mut writer).write(&null_byte[..])?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/header.rs:176:26 [INFO] [stderr] | [INFO] [stderr] 176 | let dol_offset = file.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(file.read_u32::()?)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/header.rs:177:26 [INFO] [stderr] | [INFO] [stderr] 177 | let fst_offset = file.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(file.read_u32::()?)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/header.rs:176:26 [INFO] [stderr] | [INFO] [stderr] 176 | let dol_offset = file.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(file.read_u32::()?)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/sections/header.rs:177:26 [INFO] [stderr] | [INFO] [stderr] 177 | let fst_offset = file.read_u32::()? as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(file.read_u32::()?)` [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: trait `LayoutSection` has a `len` method but no (possibly inherited) `is_empty` method [INFO] [stderr] --> src/sections/layout_section.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | / pub trait LayoutSection<'a> { [INFO] [stderr] 15 | | fn name(&'a self) -> Cow<'a, str>; [INFO] [stderr] 16 | | [INFO] [stderr] 17 | | fn section_type(&self) -> SectionType; [INFO] [stderr] ... | [INFO] [stderr] 60 | | // } [INFO] [stderr] 61 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_without_is_empty)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_without_is_empty [INFO] [stderr] [INFO] [stderr] warning: trait `LayoutSection` has a `len` method but no (possibly inherited) `is_empty` method [INFO] [stderr] --> src/sections/layout_section.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | / pub trait LayoutSection<'a> { [INFO] [stderr] 15 | | fn name(&'a self) -> Cow<'a, str>; [INFO] [stderr] 16 | | [INFO] [stderr] 17 | | fn section_type(&self) -> SectionType; [INFO] [stderr] ... | [INFO] [stderr] 60 | | // } [INFO] [stderr] 61 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_without_is_empty)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_without_is_empty [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/rom_rebuilder.rs:221:26 [INFO] [stderr] | [INFO] [stderr] 221 | name.starts_with(".") || name == "&&systemdata" [INFO] [stderr] | ^^^ help: try using a char instead: `'.'` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/rom_rebuilder.rs:221:26 [INFO] [stderr] | [INFO] [stderr] 221 | name.starts_with(".") || name == "&&systemdata" [INFO] [stderr] | ^^^ help: try using a char instead: `'.'` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/rom_rebuilder.rs:393:14 [INFO] [stderr] | [INFO] [stderr] 393 | for i in 0..(count / WRITE_CHUNK_SIZE + 1) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=count / WRITE_CHUNK_SIZE` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/rom_rebuilder.rs:393:14 [INFO] [stderr] | [INFO] [stderr] 393 | for i in 0..(count / WRITE_CHUNK_SIZE + 1) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `0..=count / WRITE_CHUNK_SIZE` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `gcmod`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `gcmod`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "f6761780c9f95015269ebf8b77c33a9c9c461a600af0ca86f1214a74e088a615"` [INFO] running `"docker" "rm" "-f" "f6761780c9f95015269ebf8b77c33a9c9c461a600af0ca86f1214a74e088a615"` [INFO] [stdout] f6761780c9f95015269ebf8b77c33a9c9c461a600af0ca86f1214a74e088a615