[INFO] updating cached repository angusholder/gba-emulator [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/angusholder/gba-emulator [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/angusholder/gba-emulator" "work/ex/clippy-test-run/sources/stable/gh/angusholder/gba-emulator"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/angusholder/gba-emulator'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/angusholder/gba-emulator" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/angusholder/gba-emulator"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/angusholder/gba-emulator'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] cfb6389cea44792cd616705bba72ee423dee7448 [INFO] sha for GitHub repo angusholder/gba-emulator: cfb6389cea44792cd616705bba72ee423dee7448 [INFO] validating manifest of angusholder/gba-emulator 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 angusholder/gba-emulator 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 angusholder/gba-emulator [INFO] finished frobbing angusholder/gba-emulator [INFO] frobbed toml for angusholder/gba-emulator written to work/ex/clippy-test-run/sources/stable/gh/angusholder/gba-emulator/Cargo.toml [INFO] started frobbing angusholder/gba-emulator [INFO] finished frobbing angusholder/gba-emulator [INFO] frobbed toml for angusholder/gba-emulator written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/angusholder/gba-emulator/Cargo.toml [INFO] crate angusholder/gba-emulator 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 angusholder/gba-emulator against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-6/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/angusholder/gba-emulator:/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] d8551070529416352a81fa7b8aebe8935961e350c0272067196816c486c685fc [INFO] running `"docker" "start" "-a" "d8551070529416352a81fa7b8aebe8935961e350c0272067196816c486c685fc"` [INFO] [stderr] Checking bitintr v0.2.0 [INFO] [stderr] Checking gba v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: digits grouped inconsistently by underscores [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:621:37 [INFO] [stderr] | [INFO] [stderr] 621 | let thumb_fn_indices = (0..=0b1111_1111_11).map(|discriminant| { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider: `0b11_1111_1111` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::inconsistent_digit_grouping)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inconsistent_digit_grouping [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/disassemble.rs:144:29 [INFO] [stderr] | [INFO] [stderr] 144 | 0b001111 => format!("MRS{cond} {rd}, {psr}", [INFO] [stderr] | ^^^^^^^^ help: consider: `0b00_1111` [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/disassemble.rs:149:29 [INFO] [stderr] | [INFO] [stderr] 149 | 0b101001 => format!("MSR{cond} {psr}, {rm}", [INFO] [stderr] | ^^^^^^^^ help: consider: `0b10_1001` [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/disassemble.rs:154:29 [INFO] [stderr] | [INFO] [stderr] 154 | 0b101000 => format!("MSR{cond} {psr}_flg, {imm}", [INFO] [stderr] | ^^^^^^^^ help: consider: `0b10_1000` [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/disassemble.rs:159:29 [INFO] [stderr] | [INFO] [stderr] 159 | 0b101111 => format!("BX{cond} {rn}", [INFO] [stderr] | ^^^^^^^^ help: consider: `0b10_1111` [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/disassemble.rs:181:36 [INFO] [stderr] | [INFO] [stderr] 181 | let accumulate = (op & 0x00200000) != 0; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0020_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/disassemble.rs:182:32 [INFO] [stderr] | [INFO] [stderr] 182 | let set_cc = (op & 0x00100000) != 0; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0010_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/disassemble.rs:205:34 [INFO] [stderr] | [INFO] [stderr] 205 | let unsigned = (op & 0x00400000) != 0; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0040_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/disassemble.rs:206:36 [INFO] [stderr] | [INFO] [stderr] 206 | let accumulate = (op & 0x00200000) != 0; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0020_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/disassemble.rs:207:32 [INFO] [stderr] | [INFO] [stderr] 207 | let set_cc = (op & 0x00100000) != 0; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0010_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/disassemble.rs:450:39 [INFO] [stderr] | [INFO] [stderr] 450 | assert_eq!(disassemble_arm_opcode(0xE0110002, 0), "ANDS R0, R1, R2"); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xE011_0002` [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/disassemble.rs:451:39 [INFO] [stderr] | [INFO] [stderr] 451 | assert_eq!(disassemble_arm_opcode(0x022C900F, 0), "EOREQ R9, R12, #15 ; 0xF"); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x022C_900F` [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/disassemble.rs:452:39 [INFO] [stderr] | [INFO] [stderr] 452 | assert_eq!(disassemble_arm_opcode(0xC255BC0F, 0), "SUBSGT R11, R5, #3840 ; 0xF00"); // 0xFF ROR 24 (half the shift) [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xC255_BC0F` [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/disassemble.rs:453:39 [INFO] [stderr] | [INFO] [stderr] 453 | assert_eq!(disassemble_arm_opcode(0x3087320D, 0), "ADDCC R3, R7, SP LSL #4"); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x3087_320D` [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/disassemble.rs:454:39 [INFO] [stderr] | [INFO] [stderr] 454 | assert_eq!(disassemble_arm_opcode(0x51865C5A, 0), "ORRPL R5, R6, R10 ASR R12"); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x5186_5C5A` [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/disassemble.rs:455:39 [INFO] [stderr] | [INFO] [stderr] 455 | assert_eq!(disassemble_arm_opcode(0xE1E01001, 0), "MVN R1, R1"); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xE1E0_1001` [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/disassemble.rs:456:39 [INFO] [stderr] | [INFO] [stderr] 456 | assert_eq!(disassemble_arm_opcode(0xE1130424, 0), "TST R3, R4 LSR #8"); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xE113_0424` [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: digits grouped inconsistently by underscores [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:621:37 [INFO] [stderr] | [INFO] [stderr] 621 | let thumb_fn_indices = (0..=0b1111_1111_11).map(|discriminant| { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider: `0b11_1111_1111` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::inconsistent_digit_grouping)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inconsistent_digit_grouping [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/renderer/mod.rs:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | mod renderer; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::module_inception)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: operator precedence can trip the unwary [INFO] [stderr] --> src/renderer/renderer.rs:384:20 [INFO] [stderr] | [INFO] [stderr] 384 | let read = self.palette_read16(addr).1 >> 8*(addr&1); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider parenthesizing your expression: `self.palette_read16(addr).1 >> (8*(addr&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/renderer/renderer.rs:418:20 [INFO] [stderr] | [INFO] [stderr] 418 | let read = self.oam_read16(addr & OAM_MASK).1 >> 8*(addr&1); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider parenthesizing your expression: `self.oam_read16(addr & OAM_MASK).1 >> (8*(addr&1))` [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: All variants have the same prefix: `Div` [INFO] [stderr] --> src/timer.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | / enum_from_primitive! { [INFO] [stderr] 10 | | #[derive(Clone, Copy, PartialEq, Eq)] [INFO] [stderr] 11 | | enum TimerScale { [INFO] [stderr] 12 | | Div1 = 0, [INFO] [stderr] ... | [INFO] [stderr] 16 | | } [INFO] [stderr] 17 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::enum_variant_names)] on by default [INFO] [stderr] = help: remove the prefixes and use full paths to the variants instead of glob imports [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#enum_variant_names [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/disassemble.rs:144:29 [INFO] [stderr] | [INFO] [stderr] 144 | 0b001111 => format!("MRS{cond} {rd}, {psr}", [INFO] [stderr] | ^^^^^^^^ help: consider: `0b00_1111` [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/disassemble.rs:149:29 [INFO] [stderr] | [INFO] [stderr] 149 | 0b101001 => format!("MSR{cond} {psr}, {rm}", [INFO] [stderr] | ^^^^^^^^ help: consider: `0b10_1001` [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/disassemble.rs:154:29 [INFO] [stderr] | [INFO] [stderr] 154 | 0b101000 => format!("MSR{cond} {psr}_flg, {imm}", [INFO] [stderr] | ^^^^^^^^ help: consider: `0b10_1000` [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/disassemble.rs:159:29 [INFO] [stderr] | [INFO] [stderr] 159 | 0b101111 => format!("BX{cond} {rn}", [INFO] [stderr] | ^^^^^^^^ help: consider: `0b10_1111` [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/disassemble.rs:181:36 [INFO] [stderr] | [INFO] [stderr] 181 | let accumulate = (op & 0x00200000) != 0; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0020_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/iomap.rs:248:26 [INFO] [stderr] | [INFO] [stderr] 248 | const REG_DISPCNT: u32 = 0x4000000; // 2 R/W LCD Control [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0000` [INFO] [stderr] --> src/disassemble.rs:182:32 [INFO] [stderr] | [INFO] [stderr] 182 | let set_cc = (op & 0x00100000) != 0; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0010_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] | [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/iomap.rs:249:28 [INFO] [stderr] | [INFO] [stderr] 249 | const REG_GREENSWAP: u32 = 0x4000002; // 2 R/W Undocumented - Green Swap [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0002` [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/iomap.rs:250:27 [INFO] [stderr] | [INFO] [stderr] 250 | const REG_DISPSTAT: u32 = 0x4000004; // 2 R/W General LCD Status (STAT,LYC) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0004` [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/disassemble.rs:205:34 [INFO] [stderr] | [INFO] [stderr] 205 | let unsigned = (op & 0x00400000) != 0; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0040_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/iomap.rs:251:25 [INFO] [stderr] | [INFO] [stderr] 251 | const REG_VCOUNT: u32 = 0x4000006; // 2 R Vertical Counter (LY) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0006` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/disassemble.rs:206:36 [INFO] [stderr] | [INFO] [stderr] 206 | let accumulate = (op & 0x00200000) != 0; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0020_0000` [INFO] [stderr] | [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] warning: long literal lacking separators [INFO] [stderr] --> src/disassemble.rs:207:32 [INFO] [stderr] | [INFO] [stderr] --> src/iomap.rs:252:25 [INFO] [stderr] 207 | let set_cc = (op & 0x00100000) != 0; [INFO] [stderr] | [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0010_0000` [INFO] [stderr] 252 | const REG_BG0CNT: u32 = 0x4000008; // 2 R/W BG0 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0008` [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] | [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/iomap.rs:253:25 [INFO] [stderr] | [INFO] [stderr] 253 | const REG_BG1CNT: u32 = 0x400000A; // 2 R/W BG1 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_000A` [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/iomap.rs:254:25 [INFO] [stderr] | [INFO] [stderr] 254 | const REG_BG2CNT: u32 = 0x400000C; // 2 R/W BG2 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_000C` [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/iomap.rs:255:25 [INFO] [stderr] | [INFO] [stderr] 255 | const REG_BG3CNT: u32 = 0x400000E; // 2 R/W BG3 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_000E` [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/iomap.rs:256:26 [INFO] [stderr] | [INFO] [stderr] 256 | const REG_BG0HOFS: u32 = 0x4000010; // 2 W BG0 X-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0010` [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/iomap.rs:257:26 [INFO] [stderr] | [INFO] [stderr] 257 | const REG_BG0VOFS: u32 = 0x4000012; // 2 W BG0 Y-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0012` [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/iomap.rs:258:26 [INFO] [stderr] | [INFO] [stderr] 258 | const REG_BG1HOFS: u32 = 0x4000014; // 2 W BG1 X-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0014` [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/iomap.rs:259:26 [INFO] [stderr] | [INFO] [stderr] 259 | const REG_BG1VOFS: u32 = 0x4000016; // 2 W BG1 Y-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0016` [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/iomap.rs:260:26 [INFO] [stderr] | [INFO] [stderr] 260 | const REG_BG2HOFS: u32 = 0x4000018; // 2 W BG2 X-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0018` [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/iomap.rs:261:26 [INFO] [stderr] | [INFO] [stderr] 261 | const REG_BG2VOFS: u32 = 0x400001A; // 2 W BG2 Y-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_001A` [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/iomap.rs:262:26 [INFO] [stderr] | [INFO] [stderr] 262 | const REG_BG3HOFS: u32 = 0x400001C; // 2 W BG3 X-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_001C` [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/iomap.rs:263:26 [INFO] [stderr] | [INFO] [stderr] 263 | const REG_BG3VOFS: u32 = 0x400001E; // 2 W BG3 Y-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_001E` [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/iomap.rs:264:24 [INFO] [stderr] | [INFO] [stderr] 264 | const REG_BG2PA: u32 = 0x4000020; // 2 W BG2 Rotation/Scaling Parameter A (dx) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0020` [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/iomap.rs:265:24 [INFO] [stderr] | [INFO] [stderr] 265 | const REG_BG2PB: u32 = 0x4000022; // 2 W BG2 Rotation/Scaling Parameter B (dmx) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0022` [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/iomap.rs:266:24 [INFO] [stderr] | [INFO] [stderr] 266 | const REG_BG2PC: u32 = 0x4000024; // 2 W BG2 Rotation/Scaling Parameter C (dy) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0024` [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/iomap.rs:267:24 [INFO] [stderr] | [INFO] [stderr] 267 | const REG_BG2PD: u32 = 0x4000026; // 2 W BG2 Rotation/Scaling Parameter D (dmy) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0026` [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/iomap.rs:268:26 [INFO] [stderr] | [INFO] [stderr] 268 | const REG_BG2X_LO: u32 = 0x4000028; // 4 W BG2 Reference Point X-Coordinate [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0028` [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/iomap.rs:269:26 [INFO] [stderr] | [INFO] [stderr] 269 | const REG_BG2X_HI: u32 = 0x400002A; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_002A` [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/iomap.rs:270:26 [INFO] [stderr] | [INFO] [stderr] 270 | const REG_BG2Y_LO: u32 = 0x400002C; // 4 W BG2 Reference Point Y-Coordinate [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_002C` [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/iomap.rs:271:26 [INFO] [stderr] | [INFO] [stderr] 271 | const REG_BG2Y_HI: u32 = 0x400002E; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_002E` [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/iomap.rs:272:24 [INFO] [stderr] | [INFO] [stderr] 272 | const REG_BG3PA: u32 = 0x4000030; // 2 W BG3 Rotation/Scaling Parameter A (dx) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0030` [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/iomap.rs:273:24 [INFO] [stderr] | [INFO] [stderr] 273 | const REG_BG3PB: u32 = 0x4000032; // 2 W BG3 Rotation/Scaling Parameter B (dmx) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0032` [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/iomap.rs:274:24 [INFO] [stderr] | [INFO] [stderr] 274 | const REG_BG3PC: u32 = 0x4000034; // 2 W BG3 Rotation/Scaling Parameter C (dy) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0034` [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/iomap.rs:275:24 [INFO] [stderr] | [INFO] [stderr] 275 | const REG_BG3PD: u32 = 0x4000036; // 2 W BG3 Rotation/Scaling Parameter D (dmy) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0036` [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/iomap.rs:276:26 [INFO] [stderr] | [INFO] [stderr] 276 | const REG_BG3X_LO: u32 = 0x4000038; // 4 W BG3 Reference Point X-Coordinate [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0038` [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/iomap.rs:277:26 [INFO] [stderr] | [INFO] [stderr] 277 | const REG_BG3X_HI: u32 = 0x400003A; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_003A` [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/iomap.rs:278:26 [INFO] [stderr] | [INFO] [stderr] 278 | const REG_BG3Y_LO: u32 = 0x400003C; // 4 W BG3 Reference Point Y-Coordinate [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_003C` [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/iomap.rs:279:26 [INFO] [stderr] | [INFO] [stderr] 279 | const REG_BG3Y_HI: u32 = 0x400003E; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_003E` [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/iomap.rs:280:24 [INFO] [stderr] | [INFO] [stderr] 280 | const REG_WIN0H: u32 = 0x4000040; // 2 W Window 0 Horizontal Dimensions [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0040` [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/iomap.rs:281:24 [INFO] [stderr] | [INFO] [stderr] 281 | const REG_WIN1H: u32 = 0x4000042; // 2 W Window 1 Horizontal Dimensions [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0042` [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/iomap.rs:282:24 [INFO] [stderr] | [INFO] [stderr] 282 | const REG_WIN0V: u32 = 0x4000044; // 2 W Window 0 Vertical Dimensions [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0044` [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/iomap.rs:283:24 [INFO] [stderr] | [INFO] [stderr] 283 | const REG_WIN1V: u32 = 0x4000046; // 2 W Window 1 Vertical Dimensions [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0046` [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/iomap.rs:284:24 [INFO] [stderr] | [INFO] [stderr] 284 | const REG_WININ: u32 = 0x4000048; // 2 R/W Inside of Window 0 and 1 [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0048` [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/iomap.rs:285:25 [INFO] [stderr] | [INFO] [stderr] 285 | const REG_WINOUT: u32 = 0x400004A; // 2 R/W Inside of OBJ Window & Outside of Windows [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_004A` [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/iomap.rs:286:25 [INFO] [stderr] | [INFO] [stderr] 286 | const REG_MOSAIC: u32 = 0x400004C; // 2 W Mosaic Size [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_004C` [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/iomap.rs:287:25 [INFO] [stderr] | [INFO] [stderr] 287 | const REG_BLDCNT: u32 = 0x4000050; // 2 R/W Color Special Effects Selection [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0050` [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/iomap.rs:288:27 [INFO] [stderr] | [INFO] [stderr] 288 | const REG_BLDALPHA: u32 = 0x4000052; // 2 W Alpha Blending Coefficients [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0052` [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/iomap.rs:289:23 [INFO] [stderr] | [INFO] [stderr] 289 | const REG_BLDY: u32 = 0x4000054; // 2 W Brightness (Fade-In/Out) Coefficient [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0054` [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/iomap.rs:290:30 [INFO] [stderr] | [INFO] [stderr] 290 | const REG_SOUND1CNT_L: u32 = 0x4000060; // 2 R/W Channel 1 Sweep register (NR10) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0060` [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/iomap.rs:291:30 [INFO] [stderr] | [INFO] [stderr] 291 | const REG_SOUND1CNT_H: u32 = 0x4000062; // 2 R/W Channel 1 Duty/Length/Envelope (NR11, NR12) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0062` [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/iomap.rs:292:30 [INFO] [stderr] | [INFO] [stderr] 292 | const REG_SOUND1CNT_X: u32 = 0x4000064; // 2 R/W Channel 1 Frequency/Control (NR13, NR14) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0064` [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/iomap.rs:293:30 [INFO] [stderr] | [INFO] [stderr] 293 | const REG_SOUND2CNT_L: u32 = 0x4000068; // 2 R/W Channel 2 Duty/Length/Envelope (NR21, NR22) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0068` [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/iomap.rs:294:30 [INFO] [stderr] | [INFO] [stderr] 294 | const REG_SOUND2CNT_H: u32 = 0x400006C; // 2 R/W Channel 2 Frequency/Control (NR23, NR24) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_006C` [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/iomap.rs:295:30 [INFO] [stderr] | [INFO] [stderr] 295 | const REG_SOUND3CNT_L: u32 = 0x4000070; // 2 R/W Channel 3 Stop/Wave RAM select (NR30) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0070` [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/iomap.rs:296:30 [INFO] [stderr] | [INFO] [stderr] 296 | const REG_SOUND3CNT_H: u32 = 0x4000072; // 2 R/W Channel 3 Length/Volume (NR31, NR32) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0072` [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/iomap.rs:297:30 [INFO] [stderr] | [INFO] [stderr] 297 | const REG_SOUND3CNT_X: u32 = 0x4000074; // 2 R/W Channel 3 Frequency/Control (NR33, NR34) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0074` [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/iomap.rs:298:30 [INFO] [stderr] | [INFO] [stderr] 298 | const REG_SOUND4CNT_L: u32 = 0x4000078; // 2 R/W Channel 4 Length/Envelope (NR41, NR42) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0078` [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/iomap.rs:299:30 [INFO] [stderr] | [INFO] [stderr] 299 | const REG_SOUND4CNT_H: u32 = 0x400007C; // 2 R/W Channel 4 Frequency/Control (NR43, NR44) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_007C` [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/iomap.rs:300:29 [INFO] [stderr] | [INFO] [stderr] 300 | const REG_SOUNDCNT_L: u32 = 0x4000080; // 2 R/W Control Stereo/Volume/Enable (NR50, NR51) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0080` [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/iomap.rs:301:29 [INFO] [stderr] | [INFO] [stderr] 301 | const REG_SOUNDCNT_H: u32 = 0x4000082; // 2 R/W Control Mixing/DMA Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0082` [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/iomap.rs:302:29 [INFO] [stderr] | [INFO] [stderr] 302 | const REG_SOUNDCNT_X: u32 = 0x4000084; // 2 R/W Control Sound on/off (NR52) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0084` [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/iomap.rs:303:28 [INFO] [stderr] | [INFO] [stderr] 303 | const REG_SOUNDBIAS: u32 = 0x4000088; // 2 BIOS Sound PWM Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0088` [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/iomap.rs:305:29 [INFO] [stderr] | [INFO] [stderr] 305 | const REG_WAVE_RAM_0: u32 = 0x4000090; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0090` [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/iomap.rs:306:29 [INFO] [stderr] | [INFO] [stderr] 306 | const REG_WAVE_RAM_1: u32 = 0x4000092; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0092` [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/iomap.rs:307:29 [INFO] [stderr] | [INFO] [stderr] 307 | const REG_WAVE_RAM_2: u32 = 0x4000094; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0094` [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/iomap.rs:308:29 [INFO] [stderr] | [INFO] [stderr] 308 | const REG_WAVE_RAM_3: u32 = 0x4000096; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0096` [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/iomap.rs:309:29 [INFO] [stderr] | [INFO] [stderr] 309 | const REG_WAVE_RAM_4: u32 = 0x4000098; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0098` [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/iomap.rs:310:29 [INFO] [stderr] | [INFO] [stderr] 310 | const REG_WAVE_RAM_5: u32 = 0x400009A; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_009A` [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/iomap.rs:311:29 [INFO] [stderr] | [INFO] [stderr] 311 | const REG_WAVE_RAM_6: u32 = 0x400009C; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_009C` [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/iomap.rs:312:29 [INFO] [stderr] | [INFO] [stderr] 312 | const REG_WAVE_RAM_7: u32 = 0x400009E; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_009E` [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/iomap.rs:313:25 [INFO] [stderr] | [INFO] [stderr] 313 | const REG_FIFO_A: u32 = 0x40000A0; // 4 W Channel A FIFO, Data 0-3 [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00A0` [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/iomap.rs:314:25 [INFO] [stderr] | [INFO] [stderr] 314 | const REG_FIFO_B: u32 = 0x40000A4; // 4 W Channel B FIFO, Data 0-3 [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00A4` [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/iomap.rs:315:29 [INFO] [stderr] | [INFO] [stderr] 315 | const REG_DMA0SAD_LO: u32 = 0x40000B0; // 4 W DMA 0 Source Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00B0` [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/iomap.rs:316:29 [INFO] [stderr] | [INFO] [stderr] 316 | const REG_DMA0SAD_HI: u32 = 0x40000B2; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00B2` [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/iomap.rs:317:29 [INFO] [stderr] | [INFO] [stderr] 317 | const REG_DMA0DAD_LO: u32 = 0x40000B4; // 4 W DMA 0 Destination Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00B4` [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/iomap.rs:318:29 [INFO] [stderr] | [INFO] [stderr] 318 | const REG_DMA0DAD_HI: u32 = 0x40000B6; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00B6` [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/iomap.rs:319:28 [INFO] [stderr] | [INFO] [stderr] 319 | const REG_DMA0CNT_L: u32 = 0x40000B8; // 2 W DMA 0 Word Count [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00B8` [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/iomap.rs:320:28 [INFO] [stderr] | [INFO] [stderr] 320 | const REG_DMA0CNT_H: u32 = 0x40000BA; // 2 R/W DMA 0 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00BA` [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/iomap.rs:321:29 [INFO] [stderr] | [INFO] [stderr] 321 | const REG_DMA1SAD_LO: u32 = 0x40000BC; // 4 W DMA 1 Source Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00BC` [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/iomap.rs:322:29 [INFO] [stderr] | [INFO] [stderr] 322 | const REG_DMA1SAD_HI: u32 = 0x40000BE; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00BE` [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/iomap.rs:323:29 [INFO] [stderr] | [INFO] [stderr] 323 | const REG_DMA1DAD_LO: u32 = 0x40000C0; // 4 W DMA 1 Destination Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00C0` [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/iomap.rs:324:29 [INFO] [stderr] | [INFO] [stderr] 324 | const REG_DMA1DAD_HI: u32 = 0x40000C2; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00C2` [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/iomap.rs:325:28 [INFO] [stderr] | [INFO] [stderr] 325 | const REG_DMA1CNT_L: u32 = 0x40000C4; // 2 W DMA 1 Word Count [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00C4` [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/iomap.rs:326:28 [INFO] [stderr] | [INFO] [stderr] 326 | const REG_DMA1CNT_H: u32 = 0x40000C6; // 2 R/W DMA 1 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00C6` [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/iomap.rs:327:29 [INFO] [stderr] | [INFO] [stderr] 327 | const REG_DMA2SAD_LO: u32 = 0x40000C8; // 4 W DMA 2 Source Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00C8` [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/iomap.rs:328:29 [INFO] [stderr] | [INFO] [stderr] 328 | const REG_DMA2SAD_HI: u32 = 0x40000CA; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00CA` [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/iomap.rs:329:29 [INFO] [stderr] | [INFO] [stderr] 329 | const REG_DMA2DAD_LO: u32 = 0x40000CC; // 4 W DMA 2 Destination Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00CC` [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/iomap.rs:330:29 [INFO] [stderr] | [INFO] [stderr] 330 | const REG_DMA2DAD_HI: u32 = 0x40000CE; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00CE` [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/iomap.rs:331:28 [INFO] [stderr] | [INFO] [stderr] 331 | const REG_DMA2CNT_L: u32 = 0x40000D0; // 2 W DMA 2 Word Count [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00D0` [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/iomap.rs:332:28 [INFO] [stderr] | [INFO] [stderr] 332 | const REG_DMA2CNT_H: u32 = 0x40000D2; // 2 R/W DMA 2 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00D2` [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/iomap.rs:333:29 [INFO] [stderr] | [INFO] [stderr] 333 | const REG_DMA3SAD_LO: u32 = 0x40000D4; // 4 W DMA 3 Source Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00D4` [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/iomap.rs:334:29 [INFO] [stderr] | [INFO] [stderr] 334 | const REG_DMA3SAD_HI: u32 = 0x40000D6; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00D6` [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/iomap.rs:335:29 [INFO] [stderr] | [INFO] [stderr] 335 | const REG_DMA3DAD_LO: u32 = 0x40000D8; // 4 W DMA 3 Destination Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00D8` [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/iomap.rs:336:29 [INFO] [stderr] | [INFO] [stderr] 336 | const REG_DMA3DAD_HI: u32 = 0x40000DA; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00DA` [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/iomap.rs:337:28 [INFO] [stderr] | [INFO] [stderr] 337 | const REG_DMA3CNT_L: u32 = 0x40000DC; // 2 W DMA 3 Word Count [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00DC` [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/iomap.rs:338:28 [INFO] [stderr] | [INFO] [stderr] 338 | const REG_DMA3CNT_H: u32 = 0x40000DE; // 2 R/W DMA 3 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00DE` [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/iomap.rs:339:27 [INFO] [stderr] | [INFO] [stderr] 339 | const REG_TM0CNT_L: u32 = 0x4000100; // 2 R/W Timer 0 Counter/Reload [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0100` [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/iomap.rs:340:27 [INFO] [stderr] | [INFO] [stderr] 340 | const REG_TM0CNT_H: u32 = 0x4000102; // 2 R/W Timer 0 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0102` [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/iomap.rs:341:27 [INFO] [stderr] | [INFO] [stderr] 341 | const REG_TM1CNT_L: u32 = 0x4000104; // 2 R/W Timer 1 Counter/Reload [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0104` [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/iomap.rs:342:27 [INFO] [stderr] | [INFO] [stderr] 342 | const REG_TM1CNT_H: u32 = 0x4000106; // 2 R/W Timer 1 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0106` [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/iomap.rs:343:27 [INFO] [stderr] | [INFO] [stderr] 343 | const REG_TM2CNT_L: u32 = 0x4000108; // 2 R/W Timer 2 Counter/Reload [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0108` [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/iomap.rs:344:27 [INFO] [stderr] | [INFO] [stderr] 344 | const REG_TM2CNT_H: u32 = 0x400010A; // 2 R/W Timer 2 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_010A` [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/iomap.rs:345:27 [INFO] [stderr] | [INFO] [stderr] 345 | const REG_TM3CNT_L: u32 = 0x400010C; // 2 R/W Timer 3 Counter/Reload [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_010C` [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/iomap.rs:346:27 [INFO] [stderr] | [INFO] [stderr] 346 | const REG_TM3CNT_H: u32 = 0x400010E; // 2 R/W Timer 3 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_010E` [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/iomap.rs:347:28 [INFO] [stderr] | [INFO] [stderr] 347 | const REG_SIODATA32: u32 = 0x4000120; // 4 R/W SIO Data (Normal-32bit Mode; shared with below) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0120` [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/iomap.rs:348:28 [INFO] [stderr] | [INFO] [stderr] 348 | const REG_SIOMULTI0: u32 = 0x4000120; // 2 R/W SIO Data 0 (Parent) (Multi-Player Mode) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0120` [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/iomap.rs:349:28 [INFO] [stderr] | [INFO] [stderr] 349 | const REG_SIOMULTI1: u32 = 0x4000122; // 2 R/W SIO Data 1 (1st Child) (Multi-Player Mode) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0122` [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/iomap.rs:350:28 [INFO] [stderr] | [INFO] [stderr] 350 | const REG_SIOMULTI2: u32 = 0x4000124; // 2 R/W SIO Data 2 (2nd Child) (Multi-Player Mode) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0124` [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/iomap.rs:351:28 [INFO] [stderr] | [INFO] [stderr] 351 | const REG_SIOMULTI3: u32 = 0x4000126; // 2 R/W SIO Data 3 (3rd Child) (Multi-Player Mode) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0126` [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/iomap.rs:352:25 [INFO] [stderr] | [INFO] [stderr] 352 | const REG_SIOCNT: u32 = 0x4000128; // 2 R/W SIO Control Register [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0128` [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/iomap.rs:353:30 [INFO] [stderr] | [INFO] [stderr] 353 | const REG_SIOMLT_SEND: u32 = 0x400012A; // 2 R/W SIO Data (Local of MultiPlayer; shared below) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_012A` [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/iomap.rs:354:27 [INFO] [stderr] | [INFO] [stderr] 354 | const REG_SIODATA8: u32 = 0x400012A; // 2 R/W SIO Data (Normal-8bit and UART Mode) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_012A` [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/iomap.rs:355:27 [INFO] [stderr] | [INFO] [stderr] 355 | const REG_KEYINPUT: u32 = 0x4000130; // 2 R Key Status [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0130` [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/iomap.rs:356:25 [INFO] [stderr] | [INFO] [stderr] 356 | const REG_KEYCNT: u32 = 0x4000132; // 2 R/W Key Interrupt Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0132` [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/iomap.rs:357:23 [INFO] [stderr] | [INFO] [stderr] 357 | const REG_RCNT: u32 = 0x4000134; // 2 R/W SIO Mode Select/General Purpose Data [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0134` [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/iomap.rs:358:21 [INFO] [stderr] | [INFO] [stderr] 358 | const REG_IR: u32 = 0x4000136; // - - Ancient - Infrared Register (Prototypes only) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0136` [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/iomap.rs:359:25 [INFO] [stderr] | [INFO] [stderr] 359 | const REG_JOYCNT: u32 = 0x4000140; // 2 R/W SIO JOY Bus Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0140` [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/iomap.rs:360:27 [INFO] [stderr] | [INFO] [stderr] 360 | const REG_JOY_RECV: u32 = 0x4000150; // 4 R/W SIO JOY Bus Receive Data [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0150` [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/iomap.rs:361:28 [INFO] [stderr] | [INFO] [stderr] 361 | const REG_JOY_TRANS: u32 = 0x4000154; // 4 R/W SIO JOY Bus Transmit Data [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0154` [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/iomap.rs:362:26 [INFO] [stderr] | [INFO] [stderr] 362 | const REG_JOYSTAT: u32 = 0x4000158; // 2 R/? SIO JOY Bus Receive Status [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0158` [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/iomap.rs:363:21 [INFO] [stderr] | [INFO] [stderr] 363 | const REG_IE: u32 = 0x4000200; // 2 R/W Interrupt Enable Register [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0200` [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/iomap.rs:364:21 [INFO] [stderr] | [INFO] [stderr] 364 | const REG_IF: u32 = 0x4000202; // 2 R/W Interrupt Request Flags / IRQ Acknowledge [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0202` [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/iomap.rs:365:26 [INFO] [stderr] | [INFO] [stderr] 365 | const REG_WAITCNT: u32 = 0x4000204; // 2 R/W Game Pak Waitstate Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0204` [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/iomap.rs:366:22 [INFO] [stderr] | [INFO] [stderr] 366 | const REG_IME: u32 = 0x4000208; // 2 R/W Interrupt Master Enable Register [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0208` [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/iomap.rs:367:26 [INFO] [stderr] | [INFO] [stderr] 367 | const REG_POSTFLG: u32 = 0x4000300; // 1 R/W Undocumented - Post Boot Flag [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0300` [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/iomap.rs:368:26 [INFO] [stderr] | [INFO] [stderr] 368 | const REG_HALTCNT: u32 = 0x4000301; // 1 W Undocumented - Power Down Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0301` [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: module has the same name as its containing module [INFO] [stderr] --> src/renderer/mod.rs:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | mod renderer; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::module_inception)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: operator precedence can trip the unwary [INFO] [stderr] --> src/renderer/renderer.rs:384:20 [INFO] [stderr] | [INFO] [stderr] 384 | let read = self.palette_read16(addr).1 >> 8*(addr&1); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider parenthesizing your expression: `self.palette_read16(addr).1 >> (8*(addr&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/renderer/renderer.rs:418:20 [INFO] [stderr] | [INFO] [stderr] 418 | let read = self.oam_read16(addr & OAM_MASK).1 >> 8*(addr&1); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider parenthesizing your expression: `self.oam_read16(addr & OAM_MASK).1 >> (8*(addr&1))` [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: All variants have the same prefix: `Div` [INFO] [stderr] --> src/timer.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | / enum_from_primitive! { [INFO] [stderr] 10 | | #[derive(Clone, Copy, PartialEq, Eq)] [INFO] [stderr] 11 | | enum TimerScale { [INFO] [stderr] 12 | | Div1 = 0, [INFO] [stderr] ... | [INFO] [stderr] 16 | | } [INFO] [stderr] 17 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::enum_variant_names)] on by default [INFO] [stderr] = help: remove the prefixes and use full paths to the variants instead of glob imports [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#enum_variant_names [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/iomap.rs:248:26 [INFO] [stderr] | [INFO] [stderr] 248 | const REG_DISPCNT: u32 = 0x4000000; // 2 R/W LCD Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_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/iomap.rs:249:28 [INFO] [stderr] | [INFO] [stderr] 249 | const REG_GREENSWAP: u32 = 0x4000002; // 2 R/W Undocumented - Green Swap [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0002` [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/iomap.rs:250:27 [INFO] [stderr] | [INFO] [stderr] 250 | const REG_DISPSTAT: u32 = 0x4000004; // 2 R/W General LCD Status (STAT,LYC) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0004` [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/iomap.rs:251:25 [INFO] [stderr] | [INFO] [stderr] 251 | const REG_VCOUNT: u32 = 0x4000006; // 2 R Vertical Counter (LY) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0006` [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/iomap.rs:252:25 [INFO] [stderr] | [INFO] [stderr] 252 | const REG_BG0CNT: u32 = 0x4000008; // 2 R/W BG0 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0008` [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/iomap.rs:253:25 [INFO] [stderr] | [INFO] [stderr] 253 | const REG_BG1CNT: u32 = 0x400000A; // 2 R/W BG1 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_000A` [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/iomap.rs:254:25 [INFO] [stderr] | [INFO] [stderr] 254 | const REG_BG2CNT: u32 = 0x400000C; // 2 R/W BG2 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_000C` [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/iomap.rs:255:25 [INFO] [stderr] | [INFO] [stderr] 255 | const REG_BG3CNT: u32 = 0x400000E; // 2 R/W BG3 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_000E` [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/iomap.rs:256:26 [INFO] [stderr] | [INFO] [stderr] 256 | const REG_BG0HOFS: u32 = 0x4000010; // 2 W BG0 X-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0010` [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/iomap.rs:257:26 [INFO] [stderr] | [INFO] [stderr] 257 | const REG_BG0VOFS: u32 = 0x4000012; // 2 W BG0 Y-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0012` [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/iomap.rs:258:26 [INFO] [stderr] | [INFO] [stderr] 258 | const REG_BG1HOFS: u32 = 0x4000014; // 2 W BG1 X-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0014` [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/iomap.rs:259:26 [INFO] [stderr] | [INFO] [stderr] 259 | const REG_BG1VOFS: u32 = 0x4000016; // 2 W BG1 Y-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0016` [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/iomap.rs:260:26 [INFO] [stderr] | [INFO] [stderr] 260 | const REG_BG2HOFS: u32 = 0x4000018; // 2 W BG2 X-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0018` [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/iomap.rs:261:26 [INFO] [stderr] | [INFO] [stderr] 261 | const REG_BG2VOFS: u32 = 0x400001A; // 2 W BG2 Y-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_001A` [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/iomap.rs:262:26 [INFO] [stderr] | [INFO] [stderr] 262 | const REG_BG3HOFS: u32 = 0x400001C; // 2 W BG3 X-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_001C` [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/iomap.rs:263:26 [INFO] [stderr] | [INFO] [stderr] 263 | const REG_BG3VOFS: u32 = 0x400001E; // 2 W BG3 Y-Offset [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_001E` [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/iomap.rs:264:24 [INFO] [stderr] | [INFO] [stderr] 264 | const REG_BG2PA: u32 = 0x4000020; // 2 W BG2 Rotation/Scaling Parameter A (dx) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0020` [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/iomap.rs:265:24 [INFO] [stderr] | [INFO] [stderr] 265 | const REG_BG2PB: u32 = 0x4000022; // 2 W BG2 Rotation/Scaling Parameter B (dmx) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0022` [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/iomap.rs:266:24 [INFO] [stderr] | [INFO] [stderr] 266 | const REG_BG2PC: u32 = 0x4000024; // 2 W BG2 Rotation/Scaling Parameter C (dy) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0024` [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/iomap.rs:267:24 [INFO] [stderr] | [INFO] [stderr] 267 | const REG_BG2PD: u32 = 0x4000026; // 2 W BG2 Rotation/Scaling Parameter D (dmy) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0026` [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/iomap.rs:268:26 [INFO] [stderr] | [INFO] [stderr] 268 | const REG_BG2X_LO: u32 = 0x4000028; // 4 W BG2 Reference Point X-Coordinate [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0028` [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/iomap.rs:269:26 [INFO] [stderr] | [INFO] [stderr] 269 | const REG_BG2X_HI: u32 = 0x400002A; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_002A` [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/iomap.rs:270:26 [INFO] [stderr] | [INFO] [stderr] 270 | const REG_BG2Y_LO: u32 = 0x400002C; // 4 W BG2 Reference Point Y-Coordinate [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_002C` [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/iomap.rs:271:26 [INFO] [stderr] | [INFO] [stderr] 271 | const REG_BG2Y_HI: u32 = 0x400002E; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_002E` [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/iomap.rs:272:24 [INFO] [stderr] | [INFO] [stderr] 272 | const REG_BG3PA: u32 = 0x4000030; // 2 W BG3 Rotation/Scaling Parameter A (dx) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0030` [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/iomap.rs:273:24 [INFO] [stderr] | [INFO] [stderr] 273 | const REG_BG3PB: u32 = 0x4000032; // 2 W BG3 Rotation/Scaling Parameter B (dmx) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0032` [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/iomap.rs:274:24 [INFO] [stderr] | [INFO] [stderr] 274 | const REG_BG3PC: u32 = 0x4000034; // 2 W BG3 Rotation/Scaling Parameter C (dy) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0034` [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/iomap.rs:275:24 [INFO] [stderr] | [INFO] [stderr] 275 | const REG_BG3PD: u32 = 0x4000036; // 2 W BG3 Rotation/Scaling Parameter D (dmy) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0036` [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/iomap.rs:276:26 [INFO] [stderr] | [INFO] [stderr] 276 | const REG_BG3X_LO: u32 = 0x4000038; // 4 W BG3 Reference Point X-Coordinate [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0038` [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/iomap.rs:277:26 [INFO] [stderr] | [INFO] [stderr] 277 | const REG_BG3X_HI: u32 = 0x400003A; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_003A` [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/iomap.rs:278:26 [INFO] [stderr] | [INFO] [stderr] 278 | const REG_BG3Y_LO: u32 = 0x400003C; // 4 W BG3 Reference Point Y-Coordinate [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_003C` [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/iomap.rs:279:26 [INFO] [stderr] | [INFO] [stderr] 279 | const REG_BG3Y_HI: u32 = 0x400003E; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_003E` [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/iomap.rs:280:24 [INFO] [stderr] | [INFO] [stderr] 280 | const REG_WIN0H: u32 = 0x4000040; // 2 W Window 0 Horizontal Dimensions [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0040` [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/iomap.rs:281:24 [INFO] [stderr] | [INFO] [stderr] 281 | const REG_WIN1H: u32 = 0x4000042; // 2 W Window 1 Horizontal Dimensions [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0042` [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/iomap.rs:282:24 [INFO] [stderr] | [INFO] [stderr] 282 | const REG_WIN0V: u32 = 0x4000044; // 2 W Window 0 Vertical Dimensions [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0044` [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/iomap.rs:283:24 [INFO] [stderr] | [INFO] [stderr] 283 | const REG_WIN1V: u32 = 0x4000046; // 2 W Window 1 Vertical Dimensions [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0046` [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/iomap.rs:284:24 [INFO] [stderr] | [INFO] [stderr] 284 | const REG_WININ: u32 = 0x4000048; // 2 R/W Inside of Window 0 and 1 [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0048` [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/iomap.rs:285:25 [INFO] [stderr] | [INFO] [stderr] 285 | const REG_WINOUT: u32 = 0x400004A; // 2 R/W Inside of OBJ Window & Outside of Windows [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_004A` [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/iomap.rs:286:25 [INFO] [stderr] | [INFO] [stderr] 286 | const REG_MOSAIC: u32 = 0x400004C; // 2 W Mosaic Size [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_004C` [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/iomap.rs:287:25 [INFO] [stderr] | [INFO] [stderr] 287 | const REG_BLDCNT: u32 = 0x4000050; // 2 R/W Color Special Effects Selection [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0050` [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/iomap.rs:288:27 [INFO] [stderr] | [INFO] [stderr] 288 | const REG_BLDALPHA: u32 = 0x4000052; // 2 W Alpha Blending Coefficients [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0052` [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/iomap.rs:289:23 [INFO] [stderr] | [INFO] [stderr] 289 | const REG_BLDY: u32 = 0x4000054; // 2 W Brightness (Fade-In/Out) Coefficient [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0054` [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/iomap.rs:290:30 [INFO] [stderr] | [INFO] [stderr] 290 | const REG_SOUND1CNT_L: u32 = 0x4000060; // 2 R/W Channel 1 Sweep register (NR10) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0060` [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/iomap.rs:291:30 [INFO] [stderr] | [INFO] [stderr] 291 | const REG_SOUND1CNT_H: u32 = 0x4000062; // 2 R/W Channel 1 Duty/Length/Envelope (NR11, NR12) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0062` [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/iomap.rs:292:30 [INFO] [stderr] | [INFO] [stderr] 292 | const REG_SOUND1CNT_X: u32 = 0x4000064; // 2 R/W Channel 1 Frequency/Control (NR13, NR14) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0064` [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/iomap.rs:293:30 [INFO] [stderr] | [INFO] [stderr] 293 | const REG_SOUND2CNT_L: u32 = 0x4000068; // 2 R/W Channel 2 Duty/Length/Envelope (NR21, NR22) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0068` [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/iomap.rs:294:30 [INFO] [stderr] | [INFO] [stderr] 294 | const REG_SOUND2CNT_H: u32 = 0x400006C; // 2 R/W Channel 2 Frequency/Control (NR23, NR24) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_006C` [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/iomap.rs:295:30 [INFO] [stderr] | [INFO] [stderr] 295 | const REG_SOUND3CNT_L: u32 = 0x4000070; // 2 R/W Channel 3 Stop/Wave RAM select (NR30) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0070` [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/iomap.rs:296:30 [INFO] [stderr] | [INFO] [stderr] 296 | const REG_SOUND3CNT_H: u32 = 0x4000072; // 2 R/W Channel 3 Length/Volume (NR31, NR32) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0072` [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/iomap.rs:297:30 [INFO] [stderr] | [INFO] [stderr] 297 | const REG_SOUND3CNT_X: u32 = 0x4000074; // 2 R/W Channel 3 Frequency/Control (NR33, NR34) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0074` [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/iomap.rs:298:30 [INFO] [stderr] | [INFO] [stderr] 298 | const REG_SOUND4CNT_L: u32 = 0x4000078; // 2 R/W Channel 4 Length/Envelope (NR41, NR42) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0078` [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/iomap.rs:299:30 [INFO] [stderr] | [INFO] [stderr] 299 | const REG_SOUND4CNT_H: u32 = 0x400007C; // 2 R/W Channel 4 Frequency/Control (NR43, NR44) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_007C` [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/iomap.rs:300:29 [INFO] [stderr] | [INFO] [stderr] 300 | const REG_SOUNDCNT_L: u32 = 0x4000080; // 2 R/W Control Stereo/Volume/Enable (NR50, NR51) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0080` [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/iomap.rs:301:29 [INFO] [stderr] | [INFO] [stderr] 301 | const REG_SOUNDCNT_H: u32 = 0x4000082; // 2 R/W Control Mixing/DMA Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0082` [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/iomap.rs:302:29 [INFO] [stderr] | [INFO] [stderr] 302 | const REG_SOUNDCNT_X: u32 = 0x4000084; // 2 R/W Control Sound on/off (NR52) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0084` [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/iomap.rs:303:28 [INFO] [stderr] | [INFO] [stderr] 303 | const REG_SOUNDBIAS: u32 = 0x4000088; // 2 BIOS Sound PWM Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0088` [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/iomap.rs:305:29 [INFO] [stderr] | [INFO] [stderr] 305 | const REG_WAVE_RAM_0: u32 = 0x4000090; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0090` [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/iomap.rs:306:29 [INFO] [stderr] | [INFO] [stderr] 306 | const REG_WAVE_RAM_1: u32 = 0x4000092; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0092` [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/iomap.rs:307:29 [INFO] [stderr] | [INFO] [stderr] 307 | const REG_WAVE_RAM_2: u32 = 0x4000094; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0094` [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/iomap.rs:308:29 [INFO] [stderr] | [INFO] [stderr] 308 | const REG_WAVE_RAM_3: u32 = 0x4000096; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0096` [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/iomap.rs:309:29 [INFO] [stderr] | [INFO] [stderr] 309 | const REG_WAVE_RAM_4: u32 = 0x4000098; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0098` [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/iomap.rs:310:29 [INFO] [stderr] | [INFO] [stderr] 310 | const REG_WAVE_RAM_5: u32 = 0x400009A; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_009A` [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/iomap.rs:311:29 [INFO] [stderr] | [INFO] [stderr] 311 | const REG_WAVE_RAM_6: u32 = 0x400009C; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_009C` [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/iomap.rs:312:29 [INFO] [stderr] | [INFO] [stderr] 312 | const REG_WAVE_RAM_7: u32 = 0x400009E; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_009E` [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/iomap.rs:313:25 [INFO] [stderr] | [INFO] [stderr] 313 | const REG_FIFO_A: u32 = 0x40000A0; // 4 W Channel A FIFO, Data 0-3 [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00A0` [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/iomap.rs:314:25 [INFO] [stderr] | [INFO] [stderr] 314 | const REG_FIFO_B: u32 = 0x40000A4; // 4 W Channel B FIFO, Data 0-3 [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00A4` [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/iomap.rs:315:29 [INFO] [stderr] | [INFO] [stderr] 315 | const REG_DMA0SAD_LO: u32 = 0x40000B0; // 4 W DMA 0 Source Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00B0` [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/iomap.rs:316:29 [INFO] [stderr] | [INFO] [stderr] 316 | const REG_DMA0SAD_HI: u32 = 0x40000B2; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00B2` [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/iomap.rs:317:29 [INFO] [stderr] | [INFO] [stderr] 317 | const REG_DMA0DAD_LO: u32 = 0x40000B4; // 4 W DMA 0 Destination Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00B4` [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/iomap.rs:318:29 [INFO] [stderr] | [INFO] [stderr] 318 | const REG_DMA0DAD_HI: u32 = 0x40000B6; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00B6` [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/iomap.rs:319:28 [INFO] [stderr] | [INFO] [stderr] 319 | const REG_DMA0CNT_L: u32 = 0x40000B8; // 2 W DMA 0 Word Count [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00B8` [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/iomap.rs:320:28 [INFO] [stderr] | [INFO] [stderr] 320 | const REG_DMA0CNT_H: u32 = 0x40000BA; // 2 R/W DMA 0 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00BA` [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/iomap.rs:321:29 [INFO] [stderr] | [INFO] [stderr] 321 | const REG_DMA1SAD_LO: u32 = 0x40000BC; // 4 W DMA 1 Source Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00BC` [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/iomap.rs:322:29 [INFO] [stderr] | [INFO] [stderr] 322 | const REG_DMA1SAD_HI: u32 = 0x40000BE; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00BE` [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/iomap.rs:323:29 [INFO] [stderr] | [INFO] [stderr] 323 | const REG_DMA1DAD_LO: u32 = 0x40000C0; // 4 W DMA 1 Destination Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00C0` [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/iomap.rs:324:29 [INFO] [stderr] | [INFO] [stderr] 324 | const REG_DMA1DAD_HI: u32 = 0x40000C2; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00C2` [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/iomap.rs:325:28 [INFO] [stderr] | [INFO] [stderr] 325 | const REG_DMA1CNT_L: u32 = 0x40000C4; // 2 W DMA 1 Word Count [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00C4` [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/iomap.rs:326:28 [INFO] [stderr] | [INFO] [stderr] 326 | const REG_DMA1CNT_H: u32 = 0x40000C6; // 2 R/W DMA 1 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00C6` [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/iomap.rs:327:29 [INFO] [stderr] | [INFO] [stderr] 327 | const REG_DMA2SAD_LO: u32 = 0x40000C8; // 4 W DMA 2 Source Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00C8` [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/iomap.rs:328:29 [INFO] [stderr] | [INFO] [stderr] 328 | const REG_DMA2SAD_HI: u32 = 0x40000CA; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00CA` [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/iomap.rs:329:29 [INFO] [stderr] | [INFO] [stderr] 329 | const REG_DMA2DAD_LO: u32 = 0x40000CC; // 4 W DMA 2 Destination Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00CC` [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/iomap.rs:330:29 [INFO] [stderr] | [INFO] [stderr] 330 | const REG_DMA2DAD_HI: u32 = 0x40000CE; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00CE` [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/iomap.rs:331:28 [INFO] [stderr] | [INFO] [stderr] 331 | const REG_DMA2CNT_L: u32 = 0x40000D0; // 2 W DMA 2 Word Count [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00D0` [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/iomap.rs:332:28 [INFO] [stderr] | [INFO] [stderr] 332 | const REG_DMA2CNT_H: u32 = 0x40000D2; // 2 R/W DMA 2 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00D2` [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/iomap.rs:333:29 [INFO] [stderr] | [INFO] [stderr] 333 | const REG_DMA3SAD_LO: u32 = 0x40000D4; // 4 W DMA 3 Source Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00D4` [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/iomap.rs:334:29 [INFO] [stderr] | [INFO] [stderr] 334 | const REG_DMA3SAD_HI: u32 = 0x40000D6; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00D6` [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/iomap.rs:335:29 [INFO] [stderr] | [INFO] [stderr] 335 | const REG_DMA3DAD_LO: u32 = 0x40000D8; // 4 W DMA 3 Destination Address [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00D8` [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/iomap.rs:336:29 [INFO] [stderr] | [INFO] [stderr] 336 | const REG_DMA3DAD_HI: u32 = 0x40000DA; [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00DA` [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/iomap.rs:337:28 [INFO] [stderr] | [INFO] [stderr] 337 | const REG_DMA3CNT_L: u32 = 0x40000DC; // 2 W DMA 3 Word Count [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00DC` [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/iomap.rs:338:28 [INFO] [stderr] | [INFO] [stderr] 338 | const REG_DMA3CNT_H: u32 = 0x40000DE; // 2 R/W DMA 3 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_00DE` [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/iomap.rs:339:27 [INFO] [stderr] | [INFO] [stderr] 339 | const REG_TM0CNT_L: u32 = 0x4000100; // 2 R/W Timer 0 Counter/Reload [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0100` [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/iomap.rs:340:27 [INFO] [stderr] | [INFO] [stderr] 340 | const REG_TM0CNT_H: u32 = 0x4000102; // 2 R/W Timer 0 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0102` [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/iomap.rs:341:27 [INFO] [stderr] | [INFO] [stderr] 341 | const REG_TM1CNT_L: u32 = 0x4000104; // 2 R/W Timer 1 Counter/Reload [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0104` [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/iomap.rs:342:27 [INFO] [stderr] | [INFO] [stderr] 342 | const REG_TM1CNT_H: u32 = 0x4000106; // 2 R/W Timer 1 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0106` [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/iomap.rs:343:27 [INFO] [stderr] | [INFO] [stderr] 343 | const REG_TM2CNT_L: u32 = 0x4000108; // 2 R/W Timer 2 Counter/Reload [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0108` [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/iomap.rs:344:27 [INFO] [stderr] | [INFO] [stderr] 344 | const REG_TM2CNT_H: u32 = 0x400010A; // 2 R/W Timer 2 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_010A` [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/iomap.rs:345:27 [INFO] [stderr] | [INFO] [stderr] 345 | const REG_TM3CNT_L: u32 = 0x400010C; // 2 R/W Timer 3 Counter/Reload [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_010C` [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/iomap.rs:346:27 [INFO] [stderr] | [INFO] [stderr] 346 | const REG_TM3CNT_H: u32 = 0x400010E; // 2 R/W Timer 3 Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_010E` [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/iomap.rs:347:28 [INFO] [stderr] | [INFO] [stderr] 347 | const REG_SIODATA32: u32 = 0x4000120; // 4 R/W SIO Data (Normal-32bit Mode; shared with below) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0120` [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/iomap.rs:348:28 [INFO] [stderr] | [INFO] [stderr] 348 | const REG_SIOMULTI0: u32 = 0x4000120; // 2 R/W SIO Data 0 (Parent) (Multi-Player Mode) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0120` [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/iomap.rs:349:28 [INFO] [stderr] | [INFO] [stderr] 349 | const REG_SIOMULTI1: u32 = 0x4000122; // 2 R/W SIO Data 1 (1st Child) (Multi-Player Mode) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0122` [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/iomap.rs:350:28 [INFO] [stderr] | [INFO] [stderr] 350 | const REG_SIOMULTI2: u32 = 0x4000124; // 2 R/W SIO Data 2 (2nd Child) (Multi-Player Mode) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0124` [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/iomap.rs:351:28 [INFO] [stderr] | [INFO] [stderr] 351 | const REG_SIOMULTI3: u32 = 0x4000126; // 2 R/W SIO Data 3 (3rd Child) (Multi-Player Mode) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0126` [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/iomap.rs:352:25 [INFO] [stderr] | [INFO] [stderr] 352 | const REG_SIOCNT: u32 = 0x4000128; // 2 R/W SIO Control Register [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0128` [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/iomap.rs:353:30 [INFO] [stderr] | [INFO] [stderr] 353 | const REG_SIOMLT_SEND: u32 = 0x400012A; // 2 R/W SIO Data (Local of MultiPlayer; shared below) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_012A` [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/iomap.rs:354:27 [INFO] [stderr] | [INFO] [stderr] 354 | const REG_SIODATA8: u32 = 0x400012A; // 2 R/W SIO Data (Normal-8bit and UART Mode) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_012A` [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/iomap.rs:355:27 [INFO] [stderr] | [INFO] [stderr] 355 | const REG_KEYINPUT: u32 = 0x4000130; // 2 R Key Status [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0130` [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/iomap.rs:356:25 [INFO] [stderr] | [INFO] [stderr] 356 | const REG_KEYCNT: u32 = 0x4000132; // 2 R/W Key Interrupt Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0132` [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/iomap.rs:357:23 [INFO] [stderr] | [INFO] [stderr] 357 | const REG_RCNT: u32 = 0x4000134; // 2 R/W SIO Mode Select/General Purpose Data [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0134` [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/iomap.rs:358:21 [INFO] [stderr] | [INFO] [stderr] 358 | const REG_IR: u32 = 0x4000136; // - - Ancient - Infrared Register (Prototypes only) [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0136` [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/iomap.rs:359:25 [INFO] [stderr] | [INFO] [stderr] 359 | const REG_JOYCNT: u32 = 0x4000140; // 2 R/W SIO JOY Bus Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0140` [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/iomap.rs:360:27 [INFO] [stderr] | [INFO] [stderr] 360 | const REG_JOY_RECV: u32 = 0x4000150; // 4 R/W SIO JOY Bus Receive Data [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0150` [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/iomap.rs:361:28 [INFO] [stderr] | [INFO] [stderr] 361 | const REG_JOY_TRANS: u32 = 0x4000154; // 4 R/W SIO JOY Bus Transmit Data [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0154` [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/iomap.rs:362:26 [INFO] [stderr] | [INFO] [stderr] 362 | const REG_JOYSTAT: u32 = 0x4000158; // 2 R/? SIO JOY Bus Receive Status [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0158` [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/iomap.rs:363:21 [INFO] [stderr] | [INFO] [stderr] 363 | const REG_IE: u32 = 0x4000200; // 2 R/W Interrupt Enable Register [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0200` [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/iomap.rs:364:21 [INFO] [stderr] | [INFO] [stderr] 364 | const REG_IF: u32 = 0x4000202; // 2 R/W Interrupt Request Flags / IRQ Acknowledge [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0202` [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/iomap.rs:365:26 [INFO] [stderr] | [INFO] [stderr] 365 | const REG_WAITCNT: u32 = 0x4000204; // 2 R/W Game Pak Waitstate Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0204` [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/iomap.rs:366:22 [INFO] [stderr] | [INFO] [stderr] 366 | const REG_IME: u32 = 0x4000208; // 2 R/W Interrupt Master Enable Register [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0208` [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/iomap.rs:367:26 [INFO] [stderr] | [INFO] [stderr] 367 | const REG_POSTFLG: u32 = 0x4000300; // 1 R/W Undocumented - Post Boot Flag [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0300` [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/iomap.rs:368:26 [INFO] [stderr] | [INFO] [stderr] 368 | const REG_HALTCNT: u32 = 0x4000301; // 1 W Undocumented - Power Down Control [INFO] [stderr] | ^^^^^^^^^ help: consider: `0x0400_0301` [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] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u16`) [INFO] [stderr] --> src/utils.rs:159:19 [INFO] [stderr] | [INFO] [stderr] 159 | unsafe { *(self.buffer.as_ptr().offset(index as isize) as * const u16) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::cast_ptr_alignment)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/utils.rs:163:17 [INFO] [stderr] | [INFO] [stderr] 163 | assert!(index & 3 == 0); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `index.trailing_zeros() >= 2` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::verbose_bit_mask)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u32`) [INFO] [stderr] --> src/utils.rs:165:19 [INFO] [stderr] | [INFO] [stderr] 165 | unsafe { *(self.buffer.as_ptr().offset(index as isize) as * const u32) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*mut u16`) [INFO] [stderr] --> src/utils.rs:175:19 [INFO] [stderr] | [INFO] [stderr] 175 | unsafe { *(self.buffer.as_ptr().offset(index as isize) as * mut u16) = value; } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/utils.rs:179:17 [INFO] [stderr] | [INFO] [stderr] 179 | assert!(index & 3 == 0); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `index.trailing_zeros() >= 2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*mut u32`) [INFO] [stderr] --> src/utils.rs:181:19 [INFO] [stderr] | [INFO] [stderr] 181 | unsafe { *(self.buffer.as_ptr().offset(index as isize) as * mut u32) = value; } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u16`) [INFO] [stderr] --> src/utils.rs:204:35 [INFO] [stderr] | [INFO] [stderr] 204 | slice::from_raw_parts(self.buffer[base..base+size].as_ptr() as *const u16, size) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/utils.rs:211:17 [INFO] [stderr] | [INFO] [stderr] 211 | assert!(base & 3 == 0); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `base.trailing_zeros() >= 2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u32`) [INFO] [stderr] --> src/utils.rs:213:35 [INFO] [stderr] | [INFO] [stderr] 213 | slice::from_raw_parts(self.buffer[base..base+size].as_ptr() as *const u32, size) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/arm7tdmi/core_common.rs:227:5 [INFO] [stderr] | [INFO] [stderr] 227 | / if saw_a_one == Some(false) || saw_a_zero == Some(false) { [INFO] [stderr] 228 | | false [INFO] [stderr] 229 | | } else { [INFO] [stderr] 230 | | true [INFO] [stderr] 231 | | } [INFO] [stderr] | |_____^ help: you can reduce it to: `!(saw_a_one == Some(false) || saw_a_zero == Some(false))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:25:14 [INFO] [stderr] | [INFO] [stderr] 25 | fn field(&self, offset: u32, width: u32) -> u32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:30:12 [INFO] [stderr] | [INFO] [stderr] 30 | fn reg(&self, offset: u32) -> usize { self.field(offset, 4) as usize } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | fn flag(&self, offset: u32) -> bool { self.field(offset, 1) != 0 } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:32:25 [INFO] [stderr] | [INFO] [stderr] 32 | pub fn discriminant(&self) -> u32 { self.field(4, 4) | self.field(20, 8) << 8 } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:33:17 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn cond(&self) -> ConditionCode { ConditionCode::from_u32(self.field(28, 4)).unwrap() } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:85:15 [INFO] [stderr] | [INFO] [stderr] 85 | let old = interconnect.read8(addr) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(interconnect.read8(addr))` [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 i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:207:28 [INFO] [stderr] | [INFO] [stderr] 207 | ic.add_internal_cycles((rs.leading_zeros() / 8) as _); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(rs.leading_zeros() / 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 u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:244:32 [INFO] [stderr] | [INFO] [stderr] 244 | ic.add_internal_cycles((1 + cmp::max(rs.leading_zeros(), (!rs).leading_zeros()) / 8) as _); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(1 + cmp::max(rs.leading_zeros(), (!rs).leading_zeros()) / 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 u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:246:32 [INFO] [stderr] | [INFO] [stderr] 246 | ic.add_internal_cycles((1 + rs.leading_zeros() / 8) as _); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(1 + rs.leading_zeros() / 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 i32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:254:18 [INFO] [stderr] | [INFO] [stderr] 254 | let rm = arm.regs[rm_index] as i32 as i64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(arm.regs[rm_index] as i32)` [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 i32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:255:18 [INFO] [stderr] | [INFO] [stderr] 255 | let rs = arm.regs[rs_index] as i32 as i64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(arm.regs[rs_index] as i32)` [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 i32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:258:23 [INFO] [stderr] | [INFO] [stderr] 258 | let rlo = arm.regs[rd_lo_index] as i32 as i64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(arm.regs[rd_lo_index] as i32)` [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 i32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:259:23 [INFO] [stderr] | [INFO] [stderr] 259 | let rhi = arm.regs[rd_hi_index] as i32 as i64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(arm.regs[rd_hi_index] as i32)` [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/arm7tdmi/core_arm.rs:266:18 [INFO] [stderr] | [INFO] [stderr] 266 | let rm = arm.regs[rm_index] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(arm.regs[rm_index])` [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/arm7tdmi/core_arm.rs:267:18 [INFO] [stderr] | [INFO] [stderr] 267 | let rs = arm.regs[rs_index] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(arm.regs[rs_index])` [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/arm7tdmi/core_arm.rs:270:23 [INFO] [stderr] | [INFO] [stderr] 270 | let rlo = arm.regs[rd_lo_index] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(arm.regs[rd_lo_index])` [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/arm7tdmi/core_arm.rs:271:23 [INFO] [stderr] | [INFO] [stderr] 271 | let rhi = arm.regs[rd_hi_index] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(arm.regs[rd_hi_index])` [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: manual implementation of an assign operation [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:353:5 [INFO] [stderr] | [INFO] [stderr] 353 | addr = addr - reglist.count_ones() * 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `addr -= reglist.count_ones() * 4` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:411:5 [INFO] [stderr] | [INFO] [stderr] 411 | addr = addr - reglist.count_ones() * 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `addr -= reglist.count_ones() * 4` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:27:26 [INFO] [stderr] | [INFO] [stderr] 27 | fn field(&self, offset: u16, width: u16) -> T { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | fn reg3(&self, offset: u16) -> usize { self.field(offset, 3) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:33:13 [INFO] [stderr] | [INFO] [stderr] 33 | fn imm3(&self, offset: u16) -> u32 { self.field(offset, 3) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:34:13 [INFO] [stderr] | [INFO] [stderr] 34 | fn imm5(&self, offset: u16) -> u32 { self.field(offset, 5) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | fn imm8(&self) -> u32 { self.field(0, 8) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:36:12 [INFO] [stderr] | [INFO] [stderr] 36 | fn hrs(&self) -> usize { self.field(3, 4) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:37:12 [INFO] [stderr] | [INFO] [stderr] 37 | fn hrd(&self) -> usize { self.field::(0, 3) | (self.field::(8, 1) << 3) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:39:25 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn discriminant(&self) -> u32 { self.field(6, 10) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:41:15 [INFO] [stderr] | [INFO] [stderr] 41 | fn get_rd(&self) -> &'static str { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:164:36 [INFO] [stderr] | [INFO] [stderr] 164 | ic.add_internal_cycles((rs.leading_zeros() / 8) as _); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(rs.leading_zeros() / 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] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u16`) [INFO] [stderr] --> src/utils.rs:159:19 [INFO] [stderr] | [INFO] [stderr] 159 | unsafe { *(self.buffer.as_ptr().offset(index as isize) as * const u16) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::cast_ptr_alignment)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/utils.rs:163:17 [INFO] [stderr] | [INFO] [stderr] 163 | assert!(index & 3 == 0); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `index.trailing_zeros() >= 2` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::verbose_bit_mask)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u32`) [INFO] [stderr] --> src/utils.rs:165:19 [INFO] [stderr] | [INFO] [stderr] 165 | unsafe { *(self.buffer.as_ptr().offset(index as isize) as * const u32) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*mut u16`) [INFO] [stderr] --> src/utils.rs:175:19 [INFO] [stderr] | [INFO] [stderr] 175 | unsafe { *(self.buffer.as_ptr().offset(index as isize) as * mut u16) = value; } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/utils.rs:179:17 [INFO] [stderr] | [INFO] [stderr] 179 | assert!(index & 3 == 0); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `index.trailing_zeros() >= 2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*mut u32`) [INFO] [stderr] --> src/utils.rs:181:19 [INFO] [stderr] | [INFO] [stderr] 181 | unsafe { *(self.buffer.as_ptr().offset(index as isize) as * mut u32) = value; } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u16`) [INFO] [stderr] --> src/utils.rs:204:35 [INFO] [stderr] | [INFO] [stderr] 204 | slice::from_raw_parts(self.buffer[base..base+size].as_ptr() as *const u16, size) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/utils.rs:211:17 [INFO] [stderr] | [INFO] [stderr] 211 | assert!(base & 3 == 0); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `base.trailing_zeros() >= 2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u32`) [INFO] [stderr] --> src/utils.rs:213:35 [INFO] [stderr] | [INFO] [stderr] 213 | slice::from_raw_parts(self.buffer[base..base+size].as_ptr() as *const u32, size) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/arm7tdmi/core_common.rs:227:5 [INFO] [stderr] | [INFO] [stderr] 227 | / if saw_a_one == Some(false) || saw_a_zero == Some(false) { [INFO] [stderr] 228 | | false [INFO] [stderr] 229 | | } else { [INFO] [stderr] 230 | | true [INFO] [stderr] 231 | | } [INFO] [stderr] | |_____^ help: you can reduce it to: `!(saw_a_one == Some(false) || saw_a_zero == Some(false))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:25:14 [INFO] [stderr] | [INFO] [stderr] 25 | fn field(&self, offset: u32, width: u32) -> u32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:30:12 [INFO] [stderr] | [INFO] [stderr] 30 | fn reg(&self, offset: u32) -> usize { self.field(offset, 4) as usize } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | fn flag(&self, offset: u32) -> bool { self.field(offset, 1) != 0 } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:32:25 [INFO] [stderr] | [INFO] [stderr] 32 | pub fn discriminant(&self) -> u32 { self.field(4, 4) | self.field(20, 8) << 8 } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:33:17 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn cond(&self) -> ConditionCode { ConditionCode::from_u32(self.field(28, 4)).unwrap() } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/arm7tdmi/disassemble.rs:107:53 [INFO] [stderr] | [INFO] [stderr] 107 | let (_, reg_kind) = asm_iter.next().ok_or(err("Register definition is missing its kind"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| err("Register definition is missing its kind"))` [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: use of `ok_or` followed by a function call [INFO] [stderr] --> src/arm7tdmi/disassemble.rs:108:53 [INFO] [stderr] | [INFO] [stderr] 108 | let (_, reg_name) = asm_iter.next().ok_or(err("Register definition is missing its name"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| err("Register definition is missing its name"))` [INFO] [stderr] | [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: use of `ok_or` followed by a function call [INFO] [stderr] --> src/arm7tdmi/disassemble.rs:151:76 [INFO] [stderr] | [INFO] [stderr] 151 | let caps: Captures = JMP_REGEX.captures(&asm_fmt[index..]).ok_or(err("Jump offset was formatted incorrectly"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| err("Jump offset was formatted incorrectly"))` [INFO] [stderr] | [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: use of `ok_or` followed by a function call [INFO] [stderr] --> src/arm7tdmi/disassemble.rs:158:76 [INFO] [stderr] | [INFO] [stderr] 158 | let caps: Captures = IMM_REGEX.captures(&asm_fmt[index..]).ok_or(err("Immediate was formatted incorrectly"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| err("Immediate was formatted incorrectly"))` [INFO] [stderr] | [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 u32 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:85:15 [INFO] [stderr] | [INFO] [stderr] 85 | let old = interconnect.read8(addr) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(interconnect.read8(addr))` [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 i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:207:28 [INFO] [stderr] | [INFO] [stderr] 207 | ic.add_internal_cycles((rs.leading_zeros() / 8) as _); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(rs.leading_zeros() / 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 u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:244:32 [INFO] [stderr] | [INFO] [stderr] 244 | ic.add_internal_cycles((1 + cmp::max(rs.leading_zeros(), (!rs).leading_zeros()) / 8) as _); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(1 + cmp::max(rs.leading_zeros(), (!rs).leading_zeros()) / 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 u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:246:32 [INFO] [stderr] | [INFO] [stderr] 246 | ic.add_internal_cycles((1 + rs.leading_zeros() / 8) as _); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(1 + rs.leading_zeros() / 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 i32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:254:18 [INFO] [stderr] | [INFO] [stderr] 254 | let rm = arm.regs[rm_index] as i32 as i64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(arm.regs[rm_index] as i32)` [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 i32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:255:18 [INFO] [stderr] | [INFO] [stderr] 255 | let rs = arm.regs[rs_index] as i32 as i64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(arm.regs[rs_index] as i32)` [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 i32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:258:23 [INFO] [stderr] | [INFO] [stderr] 258 | let rlo = arm.regs[rd_lo_index] as i32 as i64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(arm.regs[rd_lo_index] as i32)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/mod.rs:77:26 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn is_privileged(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] warning: casting i32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:259:23 [INFO] [stderr] | [INFO] [stderr] 259 | let rhi = arm.regs[rd_hi_index] as i32 as i64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(arm.regs[rd_hi_index] as i32)` [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] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:266:18 [INFO] [stderr] | [INFO] [stderr] 266 | let rm = arm.regs[rm_index] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(arm.regs[rm_index])` [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/arm7tdmi/core_arm.rs:267:18 [INFO] [stderr] | [INFO] [stderr] 267 | let rs = arm.regs[rs_index] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(arm.regs[rs_index])` [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/arm7tdmi/core_arm.rs:270:23 [INFO] [stderr] | [INFO] [stderr] 270 | let rlo = arm.regs[rd_lo_index] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(arm.regs[rd_lo_index])` [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/arm7tdmi/core_arm.rs:271:23 [INFO] [stderr] | [INFO] [stderr] 271 | let rhi = arm.regs[rd_hi_index] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(arm.regs[rd_hi_index])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/mod.rs:169:21 [INFO] [stderr] | [INFO] [stderr] 169 | pub fn get_mode(&self) -> OperatingMode { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/mod.rs:173:27 [INFO] [stderr] | [INFO] [stderr] 173 | pub fn get_thumb_mode(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:353:5 [INFO] [stderr] | [INFO] [stderr] 353 | addr = addr - reglist.count_ones() * 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `addr -= reglist.count_ones() * 4` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/arm7tdmi/core_arm.rs:411:5 [INFO] [stderr] | [INFO] [stderr] 411 | addr = addr - reglist.count_ones() * 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `addr -= reglist.count_ones() * 4` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/mod.rs:342:40 [INFO] [stderr] | [INFO] [stderr] 342 | interconnect.prefetch[0] = interconnect.exec_thumb_slow(addr) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(interconnect.exec_thumb_slow(addr))` [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/arm7tdmi/mod.rs:343:40 [INFO] [stderr] | [INFO] [stderr] 343 | interconnect.prefetch[1] = interconnect.exec_thumb_slow(addr + step) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(interconnect.exec_thumb_slow(addr + step))` [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: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/arm7tdmi/mod.rs:346:27 [INFO] [stderr] | [INFO] [stderr] 346 | debug_assert!(addr & 3 == 0); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `addr.trailing_zeros() >= 2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/mod.rs:424:13 [INFO] [stderr] | [INFO] [stderr] 424 | interconnect.exec_thumb_slow(self.regs[REG_PC]) as u32 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(interconnect.exec_thumb_slow(self.regs[REG_PC]))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:27:26 [INFO] [stderr] | [INFO] [stderr] 27 | fn field(&self, offset: u16, width: u16) -> T { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | fn reg3(&self, offset: u16) -> usize { self.field(offset, 3) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:33:13 [INFO] [stderr] | [INFO] [stderr] 33 | fn imm3(&self, offset: u16) -> u32 { self.field(offset, 3) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:34:13 [INFO] [stderr] | [INFO] [stderr] 34 | fn imm5(&self, offset: u16) -> u32 { self.field(offset, 5) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | fn imm8(&self) -> u32 { self.field(0, 8) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:36:12 [INFO] [stderr] | [INFO] [stderr] 36 | fn hrs(&self) -> usize { self.field(3, 4) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:37:12 [INFO] [stderr] | [INFO] [stderr] 37 | fn hrd(&self) -> usize { self.field::(0, 3) | (self.field::(8, 1) << 3) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:39:25 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn discriminant(&self) -> u32 { self.field(6, 10) } [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:41:15 [INFO] [stderr] | [INFO] [stderr] 41 | fn get_rd(&self) -> &'static str { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/interconnect.rs:223:17 [INFO] [stderr] | [INFO] [stderr] 223 | assert!(addr & 3 == 0, "Unaligned word read at 0x{:08X}", addr); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `addr.trailing_zeros() >= 2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/core_thumb.rs:164:36 [INFO] [stderr] | [INFO] [stderr] 164 | ic.add_internal_cycles((rs.leading_zeros() / 8) as _); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(rs.leading_zeros() / 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: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/interconnect.rs:299:17 [INFO] [stderr] | [INFO] [stderr] 299 | assert!(addr & 3 == 0, "Unaligned word write at 0x{:08X} of 0x{:08X}", addr, value); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `addr.trailing_zeros() >= 2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/interconnect.rs:344:9 [INFO] [stderr] | [INFO] [stderr] 344 | self.read8(addr) as u32 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.read8(addr))` [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/interconnect.rs:347:9 [INFO] [stderr] | [INFO] [stderr] 347 | self.read16(addr) as u32 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.read16(addr))` [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 `1` [INFO] [stderr] --> src/interconnect.rs:376:24 [INFO] [stderr] | [INFO] [stderr] 376 | const LCD_VBLANK = 1 << 0; [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/interconnect.rs:393:1 [INFO] [stderr] | [INFO] [stderr] 393 | / unpacked_bitfield_struct! { [INFO] [stderr] 394 | | #[derive(Clone, Copy)] [INFO] [stderr] 395 | | pub struct WaitStateControlReg: u16 { [INFO] [stderr] 396 | | (0, 2) sram_wait_control: usize, [INFO] [stderr] ... | [INFO] [stderr] 412 | | } [INFO] [stderr] 413 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `ARM_REGS` [INFO] [stderr] --> src/disassemble.rs:33:14 [INFO] [stderr] | [INFO] [stderr] 33 | for i in 0usize..ARM_REGS.len() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 33 | for (i, ) in ARM_REGS.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 52 [INFO] [stderr] --> src/disassemble.rs:54:1 [INFO] [stderr] | [INFO] [stderr] 54 | / pub fn disassemble_arm_opcode(op: u32, pc: u32) -> String { [INFO] [stderr] 55 | | let cond = (op >> 28) as usize; [INFO] [stderr] 56 | | assert!(cond != 0b1111); [INFO] [stderr] 57 | | let cond = CC_NAMES[cond]; [INFO] [stderr] ... | [INFO] [stderr] 445 | | } [INFO] [stderr] 446 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/arm7tdmi/disassemble.rs:107:53 [INFO] [stderr] | [INFO] [stderr] 107 | let (_, reg_kind) = asm_iter.next().ok_or(err("Register definition is missing its kind"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| err("Register definition is missing its kind"))` [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: use of `ok_or` followed by a function call [INFO] [stderr] --> src/arm7tdmi/disassemble.rs:108:53 [INFO] [stderr] | [INFO] [stderr] 108 | let (_, reg_name) = asm_iter.next().ok_or(err("Register definition is missing its name"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| err("Register definition is missing its name"))` [INFO] [stderr] | [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: use of `ok_or` followed by a function call [INFO] [stderr] --> src/arm7tdmi/disassemble.rs:151:76 [INFO] [stderr] | [INFO] [stderr] 151 | let caps: Captures = JMP_REGEX.captures(&asm_fmt[index..]).ok_or(err("Jump offset was formatted incorrectly"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| err("Jump offset was formatted incorrectly"))` [INFO] [stderr] | [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: use of `ok_or` followed by a function call [INFO] [stderr] --> src/arm7tdmi/disassemble.rs:158:76 [INFO] [stderr] | [INFO] [stderr] 158 | let caps: Captures = IMM_REGEX.captures(&asm_fmt[index..]).ok_or(err("Immediate was formatted incorrectly"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| err("Immediate was formatted incorrectly"))` [INFO] [stderr] | [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: useless use of `format!` [INFO] [stderr] --> src/disassemble.rs:111:25 [INFO] [stderr] | [INFO] [stderr] 111 | format!("{}", ARM_REGS[rm]) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `ARM_REGS[rm].to_string()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_format)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/mod.rs:77:26 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn is_privileged(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/mod.rs:169:21 [INFO] [stderr] | [INFO] [stderr] 169 | pub fn get_mode(&self) -> OperatingMode { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/arm7tdmi/mod.rs:173:27 [INFO] [stderr] | [INFO] [stderr] 173 | pub fn get_thumb_mode(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/mod.rs:342:40 [INFO] [stderr] | [INFO] [stderr] 342 | interconnect.prefetch[0] = interconnect.exec_thumb_slow(addr) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(interconnect.exec_thumb_slow(addr))` [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/arm7tdmi/mod.rs:343:40 [INFO] [stderr] | [INFO] [stderr] 343 | interconnect.prefetch[1] = interconnect.exec_thumb_slow(addr + step) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(interconnect.exec_thumb_slow(addr + step))` [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: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/arm7tdmi/mod.rs:346:27 [INFO] [stderr] | [INFO] [stderr] 346 | debug_assert!(addr & 3 == 0); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `addr.trailing_zeros() >= 2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/arm7tdmi/mod.rs:424:13 [INFO] [stderr] | [INFO] [stderr] 424 | interconnect.exec_thumb_slow(self.regs[REG_PC]) as u32 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(interconnect.exec_thumb_slow(self.regs[REG_PC]))` [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: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/interconnect.rs:223:17 [INFO] [stderr] | [INFO] [stderr] 223 | assert!(addr & 3 == 0, "Unaligned word read at 0x{:08X}", addr); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `addr.trailing_zeros() >= 2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/interconnect.rs:299:17 [INFO] [stderr] | [INFO] [stderr] 299 | assert!(addr & 3 == 0, "Unaligned word write at 0x{:08X} of 0x{:08X}", addr, value); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `addr.trailing_zeros() >= 2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#verbose_bit_mask [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/interconnect.rs:344:9 [INFO] [stderr] | [INFO] [stderr] 344 | self.read8(addr) as u32 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.read8(addr))` [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/interconnect.rs:347:9 [INFO] [stderr] | [INFO] [stderr] 347 | self.read16(addr) as u32 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.read16(addr))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/debugger.rs:33:15 [INFO] [stderr] | [INFO] [stderr] 33 | }.map(|n| Some(n)).map_err(|_| CommandError::InvalidInteger) [INFO] [stderr] | ^^^^^^^^^^^ help: remove closure as shown: `Some` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `for` loop [INFO] [stderr] --> src/debugger.rs:49:26 [INFO] [stderr] | [INFO] [stderr] 49 | while let Some(ch) = iter.next() { [INFO] [stderr] | ^^^^^^^^^^^ help: try: `for ch in iter { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_on_iterator)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/debugger.rs:63:21 [INFO] [stderr] | [INFO] [stderr] 63 | Ok(values.split(",").collect()) [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: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/interconnect.rs:376:24 [INFO] [stderr] | [INFO] [stderr] 376 | const LCD_VBLANK = 1 << 0; [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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/interconnect.rs:393:1 [INFO] [stderr] | [INFO] [stderr] 393 | / unpacked_bitfield_struct! { [INFO] [stderr] 394 | | #[derive(Clone, Copy)] [INFO] [stderr] 395 | | pub struct WaitStateControlReg: u16 { [INFO] [stderr] 396 | | (0, 2) sram_wait_control: usize, [INFO] [stderr] ... | [INFO] [stderr] 412 | | } [INFO] [stderr] 413 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `ARM_REGS` [INFO] [stderr] --> src/disassemble.rs:33:14 [INFO] [stderr] | [INFO] [stderr] 33 | for i in 0usize..ARM_REGS.len() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 33 | for (i, ) in ARM_REGS.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 52 [INFO] [stderr] --> src/disassemble.rs:54:1 [INFO] [stderr] | [INFO] [stderr] 54 | / pub fn disassemble_arm_opcode(op: u32, pc: u32) -> String { [INFO] [stderr] 55 | | let cond = (op >> 28) as usize; [INFO] [stderr] 56 | | assert!(cond != 0b1111); [INFO] [stderr] 57 | | let cond = CC_NAMES[cond]; [INFO] [stderr] ... | [INFO] [stderr] 445 | | } [INFO] [stderr] 446 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/debugger.rs:232:48 [INFO] [stderr] | [INFO] [stderr] 232 | let dis = disassemble_thumb_opcode(op as u32, addr); [INFO] [stderr] | ^^^^^^^^^ help: try: `u32::from(op)` [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: an inclusive range would be more readable [INFO] [stderr] --> src/debugger.rs:326:30 [INFO] [stderr] | [INFO] [stderr] 326 | for i in 1..n+1 { [INFO] [stderr] | ^^^^^^ help: use: `1..=n` [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/renderer/oam.rs:46:12 [INFO] [stderr] | [INFO] [stderr] 46 | fn get(&self) -> (u8, u8) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/renderer/oam.rs:70:18 [INFO] [stderr] | [INFO] [stderr] 70 | fn get_shape(&self) -> u8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/disassemble.rs:111:25 [INFO] [stderr] | [INFO] [stderr] 111 | format!("{}", ARM_REGS[rm]) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `ARM_REGS[rm].to_string()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_format)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/renderer/oam.rs:77:17 [INFO] [stderr] | [INFO] [stderr] 77 | fn get_size(&self) -> u8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/oam.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | / unpacked_bitfield_struct! { [INFO] [stderr] 178 | | #[derive(Default)] [INFO] [stderr] 179 | | struct ObjAttribute0Reg: u16 { [INFO] [stderr] 180 | | (0,8) y_coord: u8, // (0-255) [INFO] [stderr] ... | [INFO] [stderr] 218 | | } [INFO] [stderr] 219 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/oam.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | / unpacked_bitfield_struct! { [INFO] [stderr] 178 | | #[derive(Default)] [INFO] [stderr] 179 | | struct ObjAttribute0Reg: u16 { [INFO] [stderr] 180 | | (0,8) y_coord: u8, // (0-255) [INFO] [stderr] ... | [INFO] [stderr] 218 | | } [INFO] [stderr] 219 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/oam.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | / unpacked_bitfield_struct! { [INFO] [stderr] 178 | | #[derive(Default)] [INFO] [stderr] 179 | | struct ObjAttribute0Reg: u16 { [INFO] [stderr] 180 | | (0,8) y_coord: u8, // (0-255) [INFO] [stderr] ... | [INFO] [stderr] 218 | | } [INFO] [stderr] 219 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/oam.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | / unpacked_bitfield_struct! { [INFO] [stderr] 178 | | #[derive(Default)] [INFO] [stderr] 179 | | struct ObjAttribute0Reg: u16 { [INFO] [stderr] 180 | | (0,8) y_coord: u8, // (0-255) [INFO] [stderr] ... | [INFO] [stderr] 218 | | } [INFO] [stderr] 219 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/oam.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | / unpacked_bitfield_struct! { [INFO] [stderr] 178 | | #[derive(Default)] [INFO] [stderr] 179 | | struct ObjAttribute0Reg: u16 { [INFO] [stderr] 180 | | (0,8) y_coord: u8, // (0-255) [INFO] [stderr] ... | [INFO] [stderr] 218 | | } [INFO] [stderr] 219 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/oam.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | / unpacked_bitfield_struct! { [INFO] [stderr] 178 | | #[derive(Default)] [INFO] [stderr] 179 | | struct ObjAttribute0Reg: u16 { [INFO] [stderr] 180 | | (0,8) y_coord: u8, // (0-255) [INFO] [stderr] ... | [INFO] [stderr] 218 | | } [INFO] [stderr] 219 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/oam.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | / unpacked_bitfield_struct! { [INFO] [stderr] 178 | | #[derive(Default)] [INFO] [stderr] 179 | | struct ObjAttribute0Reg: u16 { [INFO] [stderr] 180 | | (0,8) y_coord: u8, // (0-255) [INFO] [stderr] ... | [INFO] [stderr] 218 | | } [INFO] [stderr] 219 | | } [INFO] [stderr] | |_- in this macro invocation [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: manual implementation of an assign operation [INFO] [stderr] --> src/renderer/renderer.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | addr = addr & ((128 * 1024) - 1); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `addr &= ((128 * 1024) - 1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/renderer/renderer.rs:75:37 [INFO] [stderr] | [INFO] [stderr] 75 | *offset = (*offset & !0xFFFF) | (value as u32) << 16; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(value)` [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/renderer/renderer.rs:79:48 [INFO] [stderr] | [INFO] [stderr] 79 | *offset = (*offset & 0xFFFF) | sign_extend(value as u32, 12) << 16; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(value)` [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/renderer/renderer.rs:224:29 [INFO] [stderr] | [INFO] [stderr] 224 | bg.tile_base_addr = (cnt.tile_base_addr as u32) * 16 * 1024; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(cnt.tile_base_addr)` [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/renderer/renderer.rs:225:28 [INFO] [stderr] | [INFO] [stderr] 225 | bg.map_base_addr = (cnt.map_base_block as u32) * 2 * 1024; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(cnt.map_base_block)` [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/renderer/renderer.rs:297:41 [INFO] [stderr] | [INFO] [stderr] 297 | self.palette_write16(addr & !1, (value as u16) | ((value as u16) << 8)) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u16::from(value)` [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/renderer/renderer.rs:297:59 [INFO] [stderr] | [INFO] [stderr] 297 | self.palette_write16(addr & !1, (value as u16) | ((value as u16) << 8)) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u16::from(value)` [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/renderer/renderer.rs:320:25 [INFO] [stderr] | [INFO] [stderr] 320 | let value = value as u16; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(value)` [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/renderer/renderer.rs:398:20 [INFO] [stderr] | [INFO] [stderr] 398 | let read = self.palette_read16(addr).1 as u32 | [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.palette_read16(addr).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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/renderer/renderer.rs:399:19 [INFO] [stderr] | [INFO] [stderr] 399 | (self.palette_read16(addr + 2).1 as u32) << 16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.palette_read16(addr + 2).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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/renderer/renderer.rs:454:20 [INFO] [stderr] | [INFO] [stderr] 454 | let read = self.oam_read16(addr).1 as u32 | [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.oam_read16(addr).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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/renderer/renderer.rs:455:19 [INFO] [stderr] | [INFO] [stderr] 455 | (self.oam_read16(addr + 2).1 as u32) << 16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.oam_read16(addr + 2).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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/renderer/renderer.rs:465:13 [INFO] [stderr] | [INFO] [stderr] 465 | let r = (c & 0x1F) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u32::from(c & 0x1F)` [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/renderer/renderer.rs:466:13 [INFO] [stderr] | [INFO] [stderr] 466 | let g = (c >> 5 & 0x1F) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(c >> 5 & 0x1F)` [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/renderer/renderer.rs:467:13 [INFO] [stderr] | [INFO] [stderr] 467 | let b = (c >> 10 & 0x1F) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(c >> 10 & 0x1F)` [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/renderer.rs:478:1 [INFO] [stderr] | [INFO] [stderr] 478 | / unpacked_bitfield_struct! { [INFO] [stderr] 479 | | #[derive(Clone, Copy, Default, Debug)] [INFO] [stderr] 480 | | pub struct DisplayControlReg: u16 { [INFO] [stderr] 481 | | (0,3) bg_mode: u8, [INFO] [stderr] ... | [INFO] [stderr] 495 | | } [INFO] [stderr] 496 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/renderer.rs:478:1 [INFO] [stderr] | [INFO] [stderr] 478 | / unpacked_bitfield_struct! { [INFO] [stderr] 479 | | #[derive(Clone, Copy, Default, Debug)] [INFO] [stderr] 480 | | pub struct DisplayControlReg: u16 { [INFO] [stderr] 481 | | (0,3) bg_mode: u8, [INFO] [stderr] ... | [INFO] [stderr] 495 | | } [INFO] [stderr] 496 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/renderer.rs:498:1 [INFO] [stderr] | [INFO] [stderr] 498 | / unpacked_bitfield_struct! { [INFO] [stderr] 499 | | struct DisplayStatusReg: u16 { [INFO] [stderr] 500 | | (0,1) vblank_flag: bool, [INFO] [stderr] 501 | | (1,1) hblank_flag: bool, [INFO] [stderr] ... | [INFO] [stderr] 517 | | } [INFO] [stderr] 518 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/renderer.rs:498:1 [INFO] [stderr] | [INFO] [stderr] 498 | / unpacked_bitfield_struct! { [INFO] [stderr] 499 | | struct DisplayStatusReg: u16 { [INFO] [stderr] 500 | | (0,1) vblank_flag: bool, [INFO] [stderr] 501 | | (1,1) hblank_flag: bool, [INFO] [stderr] ... | [INFO] [stderr] 517 | | } [INFO] [stderr] 518 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/renderer.rs:498:1 [INFO] [stderr] | [INFO] [stderr] 498 | / unpacked_bitfield_struct! { [INFO] [stderr] 499 | | struct DisplayStatusReg: u16 { [INFO] [stderr] 500 | | (0,1) vblank_flag: bool, [INFO] [stderr] 501 | | (1,1) hblank_flag: bool, [INFO] [stderr] ... | [INFO] [stderr] 517 | | } [INFO] [stderr] 518 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/renderer.rs:498:1 [INFO] [stderr] | [INFO] [stderr] 498 | / unpacked_bitfield_struct! { [INFO] [stderr] 499 | | struct DisplayStatusReg: u16 { [INFO] [stderr] 500 | | (0,1) vblank_flag: bool, [INFO] [stderr] 501 | | (1,1) hblank_flag: bool, [INFO] [stderr] ... | [INFO] [stderr] 517 | | } [INFO] [stderr] 518 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/renderer.rs:498:1 [INFO] [stderr] | [INFO] [stderr] 498 | / unpacked_bitfield_struct! { [INFO] [stderr] 499 | | struct DisplayStatusReg: u16 { [INFO] [stderr] 500 | | (0,1) vblank_flag: bool, [INFO] [stderr] 501 | | (1,1) hblank_flag: bool, [INFO] [stderr] ... | [INFO] [stderr] 517 | | } [INFO] [stderr] 518 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/debugger.rs:33:15 [INFO] [stderr] | [INFO] [stderr] 33 | }.map(|n| Some(n)).map_err(|_| CommandError::InvalidInteger) [INFO] [stderr] | ^^^^^^^^^^^ help: remove closure as shown: `Some` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `for` loop [INFO] [stderr] --> src/debugger.rs:49:26 [INFO] [stderr] | [INFO] [stderr] 49 | while let Some(ch) = iter.next() { [INFO] [stderr] | ^^^^^^^^^^^ help: try: `for ch in iter { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_on_iterator)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*const u32`) to a reference type (`&[u32; 240]`) [INFO] [stderr] --> src/renderer/mode_common.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | mem::transmute::<*const u32, &Self::Output>(slice.as_ptr()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&*(slice.as_ptr() as *const Self::Output)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::transmute_ptr_to_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/debugger.rs:63:21 [INFO] [stderr] | [INFO] [stderr] 63 | Ok(values.split(",").collect()) [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: transmute from a pointer type (`*mut u32`) to a reference type (`&mut [u32; 240]`) [INFO] [stderr] --> src/renderer/mode_common.rs:41:13 [INFO] [stderr] | [INFO] [stderr] 41 | mem::transmute::<*mut u32, &mut Self::Output>(slice.as_mut_ptr()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(slice.as_mut_ptr() as *mut Self::Output)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/renderer/mode_common.rs:61:17 [INFO] [stderr] | [INFO] [stderr] 61 | let bg_y = (r.scanline as u16 + bg.y_offset) as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(r.scanline)` [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/renderer/mode_common.rs:83:26 [INFO] [stderr] | [INFO] [stderr] 83 | let tile_index = (map_entry & 0x3FF) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(map_entry & 0x3FF)` [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/renderer/mode_common.rs:115:17 [INFO] [stderr] | [INFO] [stderr] 115 | let bg_y = (r.scanline as u16 + bg.y_offset) as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(r.scanline)` [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/renderer/mode_common.rs:137:26 [INFO] [stderr] | [INFO] [stderr] 137 | let tile_index = (map_entry & 0x3FF) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(map_entry & 0x3FF)` [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 i64 may become silently lossy if types change [INFO] [stderr] --> src/timer.rs:171:43 [INFO] [stderr] | [INFO] [stderr] 171 | end_cycle: cycles + Cycle((self.reload_value + 1) as i64 * self.cycles_per_tick().0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(self.reload_value + 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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/debugger.rs:232:48 [INFO] [stderr] | [INFO] [stderr] 232 | let dis = disassemble_thumb_opcode(op as u32, addr); [INFO] [stderr] | ^^^^^^^^^ help: try: `u32::from(op)` [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 i64 may become silently lossy if types change [INFO] [stderr] --> src/timer.rs:220:68 [INFO] [stderr] | [INFO] [stderr] 220 | assert!(cycle_delta.0 / self.cycles_per_tick().0 < u16::max_value() as i64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(u16::max_value())` [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/timer.rs:230:1 [INFO] [stderr] | [INFO] [stderr] 230 | / unpacked_bitfield_struct! { [INFO] [stderr] 231 | | struct TimerControlReg: u16 { [INFO] [stderr] 232 | | (0,2) scale: u8, [INFO] [stderr] 233 | | (2,1) count_up_timing: bool, [INFO] [stderr] ... | [INFO] [stderr] 236 | | } [INFO] [stderr] 237 | | } [INFO] [stderr] | |_- in this macro invocation [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: an inclusive range would be more readable [INFO] [stderr] --> src/debugger.rs:326:30 [INFO] [stderr] | [INFO] [stderr] 326 | for i in 1..n+1 { [INFO] [stderr] | ^^^^^^ help: use: `1..=n` [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: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/gamepak.rs:84:29 [INFO] [stderr] | [INFO] [stderr] 84 | (cycles1 + cycles2, (read1 as u32) | ((read2 as u32) << 16)) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(read1)` [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/gamepak.rs:84:47 [INFO] [stderr] | [INFO] [stderr] 84 | (cycles1 + cycles2, (read1 as u32) | ((read2 as u32) << 16)) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(read2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/renderer/oam.rs:46:12 [INFO] [stderr] | [INFO] [stderr] 46 | fn get(&self) -> (u8, u8) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/renderer/oam.rs:70:18 [INFO] [stderr] | [INFO] [stderr] 70 | fn get_shape(&self) -> u8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/renderer/oam.rs:77:17 [INFO] [stderr] | [INFO] [stderr] 77 | fn get_size(&self) -> u8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/oam.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | / unpacked_bitfield_struct! { [INFO] [stderr] 178 | | #[derive(Default)] [INFO] [stderr] 179 | | struct ObjAttribute0Reg: u16 { [INFO] [stderr] 180 | | (0,8) y_coord: u8, // (0-255) [INFO] [stderr] ... | [INFO] [stderr] 218 | | } [INFO] [stderr] 219 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/oam.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | / unpacked_bitfield_struct! { [INFO] [stderr] 178 | | #[derive(Default)] [INFO] [stderr] 179 | | struct ObjAttribute0Reg: u16 { [INFO] [stderr] 180 | | (0,8) y_coord: u8, // (0-255) [INFO] [stderr] ... | [INFO] [stderr] 218 | | } [INFO] [stderr] 219 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/oam.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | / unpacked_bitfield_struct! { [INFO] [stderr] 178 | | #[derive(Default)] [INFO] [stderr] 179 | | struct ObjAttribute0Reg: u16 { [INFO] [stderr] 180 | | (0,8) y_coord: u8, // (0-255) [INFO] [stderr] ... | [INFO] [stderr] 218 | | } [INFO] [stderr] 219 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/oam.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | / unpacked_bitfield_struct! { [INFO] [stderr] 178 | | #[derive(Default)] [INFO] [stderr] 179 | | struct ObjAttribute0Reg: u16 { [INFO] [stderr] 180 | | (0,8) y_coord: u8, // (0-255) [INFO] [stderr] ... | [INFO] [stderr] 218 | | } [INFO] [stderr] 219 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/oam.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | / unpacked_bitfield_struct! { [INFO] [stderr] 178 | | #[derive(Default)] [INFO] [stderr] 179 | | struct ObjAttribute0Reg: u16 { [INFO] [stderr] 180 | | (0,8) y_coord: u8, // (0-255) [INFO] [stderr] ... | [INFO] [stderr] 218 | | } [INFO] [stderr] 219 | | } [INFO] [stderr] | |_- in this macro invocation [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/dma.rs:186:44 [INFO] [stderr] | [INFO] [stderr] 186 | l.set(map_addr(unit, (cur & !0xFFFF) | (value as u32))); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(value)` [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/dma.rs:191:43 [INFO] [stderr] | [INFO] [stderr] 191 | l.set(map_addr(unit, (cur & 0xFFFF) | (value as u32) << 16)); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(value)` [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/oam.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | / unpacked_bitfield_struct! { [INFO] [stderr] 178 | | #[derive(Default)] [INFO] [stderr] 179 | | struct ObjAttribute0Reg: u16 { [INFO] [stderr] 180 | | (0,8) y_coord: u8, // (0-255) [INFO] [stderr] ... | [INFO] [stderr] 218 | | } [INFO] [stderr] 219 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/oam.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | / unpacked_bitfield_struct! { [INFO] [stderr] 178 | | #[derive(Default)] [INFO] [stderr] 179 | | struct ObjAttribute0Reg: u16 { [INFO] [stderr] 180 | | (0,8) y_coord: u8, // (0-255) [INFO] [stderr] ... | [INFO] [stderr] 218 | | } [INFO] [stderr] 219 | | } [INFO] [stderr] | |_- in this macro invocation [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: manual implementation of an assign operation [INFO] [stderr] --> src/renderer/renderer.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | addr = addr & ((128 * 1024) - 1); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `addr &= ((128 * 1024) - 1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/dma.rs:266:41 [INFO] [stderr] | [INFO] [stderr] 266 | self.word_count.set((count & 0x3FFF) as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(count & 0x3FFF)` [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/dma.rs:273:41 [INFO] [stderr] | [INFO] [stderr] 273 | self.word_count.set(count as u32); [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(count)` [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/renderer/renderer.rs:75:37 [INFO] [stderr] | [INFO] [stderr] 75 | *offset = (*offset & !0xFFFF) | (value as u32) << 16; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(value)` [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/renderer/renderer.rs:79:48 [INFO] [stderr] | [INFO] [stderr] 79 | *offset = (*offset & 0xFFFF) | sign_extend(value as u32, 12) << 16; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(value)` [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: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/dma.rs:323:25 [INFO] [stderr] | [INFO] [stderr] 323 | assert!(self.repeat == false); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!self.repeat` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::bool_comparison)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/dma.rs:338:1 [INFO] [stderr] | [INFO] [stderr] 338 | / unpacked_bitfield_struct! { [INFO] [stderr] 339 | | struct DmaControlReg: u16 { [INFO] [stderr] 340 | | (5,2) dest_control: u8, [INFO] [stderr] 341 | | (7,2) source_control: u8, [INFO] [stderr] ... | [INFO] [stderr] 348 | | } [INFO] [stderr] 349 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/dma.rs:338:1 [INFO] [stderr] | [INFO] [stderr] 338 | / unpacked_bitfield_struct! { [INFO] [stderr] 339 | | struct DmaControlReg: u16 { [INFO] [stderr] 340 | | (5,2) dest_control: u8, [INFO] [stderr] 341 | | (7,2) source_control: u8, [INFO] [stderr] ... | [INFO] [stderr] 348 | | } [INFO] [stderr] 349 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/dma.rs:338:1 [INFO] [stderr] | [INFO] [stderr] 338 | / unpacked_bitfield_struct! { [INFO] [stderr] 339 | | struct DmaControlReg: u16 { [INFO] [stderr] 340 | | (5,2) dest_control: u8, [INFO] [stderr] 341 | | (7,2) source_control: u8, [INFO] [stderr] ... | [INFO] [stderr] 348 | | } [INFO] [stderr] 349 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/dma.rs:338:1 [INFO] [stderr] | [INFO] [stderr] 338 | / unpacked_bitfield_struct! { [INFO] [stderr] 339 | | struct DmaControlReg: u16 { [INFO] [stderr] 340 | | (5,2) dest_control: u8, [INFO] [stderr] 341 | | (7,2) source_control: u8, [INFO] [stderr] ... | [INFO] [stderr] 348 | | } [INFO] [stderr] 349 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 47 [INFO] [stderr] --> src/iomap.rs:18:1 [INFO] [stderr] | [INFO] [stderr] 18 | / pub fn read16(ic: &Interconnect, addr: u32) -> u16 { [INFO] [stderr] 19 | | match addr & !1 { [INFO] [stderr] 20 | | REG_DISPCNT => ic.renderer.read_dispcnt(), [INFO] [stderr] 21 | | REG_DISPSTAT => ic.renderer.read_dispstat(), [INFO] [stderr] ... | [INFO] [stderr] 108 | | } [INFO] [stderr] 109 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/renderer/renderer.rs:224:29 [INFO] [stderr] | [INFO] [stderr] 224 | bg.tile_base_addr = (cnt.tile_base_addr as u32) * 16 * 1024; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(cnt.tile_base_addr)` [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/renderer/renderer.rs:225:28 [INFO] [stderr] | [INFO] [stderr] 225 | bg.map_base_addr = (cnt.map_base_block as u32) * 2 * 1024; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(cnt.map_base_block)` [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/renderer/renderer.rs:297:41 [INFO] [stderr] | [INFO] [stderr] 297 | self.palette_write16(addr & !1, (value as u16) | ((value as u16) << 8)) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u16::from(value)` [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/renderer/renderer.rs:297:59 [INFO] [stderr] | [INFO] [stderr] 297 | self.palette_write16(addr & !1, (value as u16) | ((value as u16) << 8)) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u16::from(value)` [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/renderer/renderer.rs:320:25 [INFO] [stderr] | [INFO] [stderr] 320 | let value = value as u16; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(value)` [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/renderer/renderer.rs:398:20 [INFO] [stderr] | [INFO] [stderr] 398 | let read = self.palette_read16(addr).1 as u32 | [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.palette_read16(addr).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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/renderer/renderer.rs:399:19 [INFO] [stderr] | [INFO] [stderr] 399 | (self.palette_read16(addr + 2).1 as u32) << 16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.palette_read16(addr + 2).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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/renderer/renderer.rs:454:20 [INFO] [stderr] | [INFO] [stderr] 454 | let read = self.oam_read16(addr).1 as u32 | [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.oam_read16(addr).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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/renderer/renderer.rs:455:19 [INFO] [stderr] | [INFO] [stderr] 455 | (self.oam_read16(addr + 2).1 as u32) << 16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.oam_read16(addr + 2).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 u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/renderer/renderer.rs:465:13 [INFO] [stderr] | [INFO] [stderr] 465 | let r = (c & 0x1F) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u32::from(c & 0x1F)` [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/renderer/renderer.rs:466:13 [INFO] [stderr] | [INFO] [stderr] 466 | let g = (c >> 5 & 0x1F) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(c >> 5 & 0x1F)` [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/renderer/renderer.rs:467:13 [INFO] [stderr] | [INFO] [stderr] 467 | let b = (c >> 10 & 0x1F) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(c >> 10 & 0x1F)` [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/renderer.rs:478:1 [INFO] [stderr] | [INFO] [stderr] 478 | / unpacked_bitfield_struct! { [INFO] [stderr] 479 | | #[derive(Clone, Copy, Default, Debug)] [INFO] [stderr] 480 | | pub struct DisplayControlReg: u16 { [INFO] [stderr] 481 | | (0,3) bg_mode: u8, [INFO] [stderr] ... | [INFO] [stderr] 495 | | } [INFO] [stderr] 496 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/renderer.rs:478:1 [INFO] [stderr] | [INFO] [stderr] 478 | / unpacked_bitfield_struct! { [INFO] [stderr] 479 | | #[derive(Clone, Copy, Default, Debug)] [INFO] [stderr] 480 | | pub struct DisplayControlReg: u16 { [INFO] [stderr] 481 | | (0,3) bg_mode: u8, [INFO] [stderr] ... | [INFO] [stderr] 495 | | } [INFO] [stderr] 496 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/renderer.rs:498:1 [INFO] [stderr] | [INFO] [stderr] 498 | / unpacked_bitfield_struct! { [INFO] [stderr] 499 | | struct DisplayStatusReg: u16 { [INFO] [stderr] 500 | | (0,1) vblank_flag: bool, [INFO] [stderr] 501 | | (1,1) hblank_flag: bool, [INFO] [stderr] ... | [INFO] [stderr] 517 | | } [INFO] [stderr] 518 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/renderer.rs:498:1 [INFO] [stderr] | [INFO] [stderr] 498 | / unpacked_bitfield_struct! { [INFO] [stderr] 499 | | struct DisplayStatusReg: u16 { [INFO] [stderr] 500 | | (0,1) vblank_flag: bool, [INFO] [stderr] 501 | | (1,1) hblank_flag: bool, [INFO] [stderr] ... | [INFO] [stderr] 517 | | } [INFO] [stderr] 518 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/renderer.rs:498:1 [INFO] [stderr] | [INFO] [stderr] 498 | / unpacked_bitfield_struct! { [INFO] [stderr] 499 | | struct DisplayStatusReg: u16 { [INFO] [stderr] 500 | | (0,1) vblank_flag: bool, [INFO] [stderr] 501 | | (1,1) hblank_flag: bool, [INFO] [stderr] ... | [INFO] [stderr] 517 | | } [INFO] [stderr] 518 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/renderer.rs:498:1 [INFO] [stderr] | [INFO] [stderr] 498 | / unpacked_bitfield_struct! { [INFO] [stderr] 499 | | struct DisplayStatusReg: u16 { [INFO] [stderr] 500 | | (0,1) vblank_flag: bool, [INFO] [stderr] 501 | | (1,1) hblank_flag: bool, [INFO] [stderr] ... | [INFO] [stderr] 517 | | } [INFO] [stderr] 518 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/renderer/renderer.rs:498:1 [INFO] [stderr] | [INFO] [stderr] 498 | / unpacked_bitfield_struct! { [INFO] [stderr] 499 | | struct DisplayStatusReg: u16 { [INFO] [stderr] 500 | | (0,1) vblank_flag: bool, [INFO] [stderr] 501 | | (1,1) hblank_flag: bool, [INFO] [stderr] ... | [INFO] [stderr] 517 | | } [INFO] [stderr] 518 | | } [INFO] [stderr] | |_- in this macro invocation [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: transmute from a pointer type (`*const u32`) to a reference type (`&[u32; 240]`) [INFO] [stderr] --> src/renderer/mode_common.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | mem::transmute::<*const u32, &Self::Output>(slice.as_ptr()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&*(slice.as_ptr() as *const Self::Output)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::transmute_ptr_to_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut u32`) to a reference type (`&mut [u32; 240]`) [INFO] [stderr] --> src/renderer/mode_common.rs:41:13 [INFO] [stderr] | [INFO] [stderr] 41 | mem::transmute::<*mut u32, &mut Self::Output>(slice.as_mut_ptr()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(slice.as_mut_ptr() as *mut Self::Output)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/renderer/mode_common.rs:61:17 [INFO] [stderr] | [INFO] [stderr] 61 | let bg_y = (r.scanline as u16 + bg.y_offset) as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(r.scanline)` [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/renderer/mode_common.rs:83:26 [INFO] [stderr] | [INFO] [stderr] 83 | let tile_index = (map_entry & 0x3FF) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(map_entry & 0x3FF)` [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/renderer/mode_common.rs:115:17 [INFO] [stderr] | [INFO] [stderr] 115 | let bg_y = (r.scanline as u16 + bg.y_offset) as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(r.scanline)` [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/renderer/mode_common.rs:137:26 [INFO] [stderr] | [INFO] [stderr] 137 | let tile_index = (map_entry & 0x3FF) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(map_entry & 0x3FF)` [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 `(ic.post_boot_flag as u16)` [INFO] [stderr] --> src/iomap.rs:31:24 [INFO] [stderr] | [INFO] [stderr] 31 | REG_POSTFLG => (ic.post_boot_flag as u16) | (0u16 << 8), [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/iomap.rs:32:23 [INFO] [stderr] | [INFO] [stderr] 32 | REG_VCOUNT => ic.renderer.scanline as u16, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(ic.renderer.scanline)` [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 i64 may become silently lossy if types change [INFO] [stderr] --> src/timer.rs:171:43 [INFO] [stderr] | [INFO] [stderr] 171 | end_cycle: cycles + Cycle((self.reload_value + 1) as i64 * self.cycles_per_tick().0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(self.reload_value + 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 u16 to i64 may become silently lossy if types change [INFO] [stderr] --> src/timer.rs:220:68 [INFO] [stderr] | [INFO] [stderr] 220 | assert!(cycle_delta.0 / self.cycles_per_tick().0 < u16::max_value() as i64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i64::from(u16::max_value())` [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/timer.rs:230:1 [INFO] [stderr] | [INFO] [stderr] 230 | / unpacked_bitfield_struct! { [INFO] [stderr] 231 | | struct TimerControlReg: u16 { [INFO] [stderr] 232 | | (0,2) scale: u8, [INFO] [stderr] 233 | | (2,1) count_up_timing: bool, [INFO] [stderr] ... | [INFO] [stderr] 236 | | } [INFO] [stderr] 237 | | } [INFO] [stderr] | |_- in this macro invocation [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/gamepak.rs:84:29 [INFO] [stderr] | [INFO] [stderr] 84 | (cycles1 + cycles2, (read1 as u32) | ((read2 as u32) << 16)) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(read1)` [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/gamepak.rs:84:47 [INFO] [stderr] | [INFO] [stderr] 84 | (cycles1 + cycles2, (read1 as u32) | ((read2 as u32) << 16)) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(read2)` [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/dma.rs:186:44 [INFO] [stderr] | [INFO] [stderr] 186 | l.set(map_addr(unit, (cur & !0xFFFF) | (value as u32))); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(value)` [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/dma.rs:191:43 [INFO] [stderr] | [INFO] [stderr] 191 | l.set(map_addr(unit, (cur & 0xFFFF) | (value as u32) << 16)); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(value)` [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/dma.rs:266:41 [INFO] [stderr] | [INFO] [stderr] 266 | self.word_count.set((count & 0x3FFF) as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(count & 0x3FFF)` [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/dma.rs:273:41 [INFO] [stderr] | [INFO] [stderr] 273 | self.word_count.set(count as u32); [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(count)` [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: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/dma.rs:323:25 [INFO] [stderr] | [INFO] [stderr] 323 | assert!(self.repeat == false); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!self.repeat` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::bool_comparison)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/dma.rs:338:1 [INFO] [stderr] | [INFO] [stderr] 338 | / unpacked_bitfield_struct! { [INFO] [stderr] 339 | | struct DmaControlReg: u16 { [INFO] [stderr] 340 | | (5,2) dest_control: u8, [INFO] [stderr] 341 | | (7,2) source_control: u8, [INFO] [stderr] ... | [INFO] [stderr] 348 | | } [INFO] [stderr] 349 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/dma.rs:338:1 [INFO] [stderr] | [INFO] [stderr] 338 | / unpacked_bitfield_struct! { [INFO] [stderr] 339 | | struct DmaControlReg: u16 { [INFO] [stderr] 340 | | (5,2) dest_control: u8, [INFO] [stderr] 341 | | (7,2) source_control: u8, [INFO] [stderr] ... | [INFO] [stderr] 348 | | } [INFO] [stderr] 349 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/dma.rs:338:1 [INFO] [stderr] | [INFO] [stderr] 338 | / unpacked_bitfield_struct! { [INFO] [stderr] 339 | | struct DmaControlReg: u16 { [INFO] [stderr] 340 | | (5,2) dest_control: u8, [INFO] [stderr] 341 | | (7,2) source_control: u8, [INFO] [stderr] ... | [INFO] [stderr] 348 | | } [INFO] [stderr] 349 | | } [INFO] [stderr] | |_- in this macro invocation [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/utils.rs:24:44 [INFO] [stderr] | [INFO] [stderr] 24 | ($packed_type:ty, u8, $n:expr) => { $n as $packed_type }; [INFO] [stderr] | ^^ help: try: `u16::from(s.$field_name)` [INFO] [stderr] | [INFO] [stderr] ::: src/dma.rs:338:1 [INFO] [stderr] | [INFO] [stderr] 338 | / unpacked_bitfield_struct! { [INFO] [stderr] 339 | | struct DmaControlReg: u16 { [INFO] [stderr] 340 | | (5,2) dest_control: u8, [INFO] [stderr] 341 | | (7,2) source_control: u8, [INFO] [stderr] ... | [INFO] [stderr] 348 | | } [INFO] [stderr] 349 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 47 [INFO] [stderr] --> src/iomap.rs:18:1 [INFO] [stderr] | [INFO] [stderr] 18 | / pub fn read16(ic: &Interconnect, addr: u32) -> u16 { [INFO] [stderr] 19 | | match addr & !1 { [INFO] [stderr] 20 | | REG_DISPCNT => ic.renderer.read_dispcnt(), [INFO] [stderr] 21 | | REG_DISPSTAT => ic.renderer.read_dispstat(), [INFO] [stderr] ... | [INFO] [stderr] 108 | | } [INFO] [stderr] 109 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/iomap.rs:230:5 [INFO] [stderr] | [INFO] [stderr] 230 | (read16(ic, addr) as u32) | (read16(ic, addr + 2) as u32) << 16 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(read16(ic, addr))` [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/iomap.rs:230:33 [INFO] [stderr] | [INFO] [stderr] 230 | (read16(ic, addr) as u32) | (read16(ic, addr + 2) as u32) << 16 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(read16(ic, addr + 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 u16 may become silently lossy if types change [INFO] [stderr] --> src/iomap.rs:236:26 [INFO] [stderr] | [INFO] [stderr] 236 | (half & !0xFF) | (value as u16) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u16::from(value)` [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/iomap.rs:238:25 [INFO] [stderr] | [INFO] [stderr] 238 | (half & 0xFF) | (value as u16) << 8 [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u16::from(value)` [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 `(ic.post_boot_flag as u16)` [INFO] [stderr] --> src/iomap.rs:31:24 [INFO] [stderr] | [INFO] [stderr] 31 | REG_POSTFLG => (ic.post_boot_flag as u16) | (0u16 << 8), [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/iomap.rs:32:23 [INFO] [stderr] | [INFO] [stderr] 32 | REG_VCOUNT => ic.renderer.scanline as u16, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(ic.renderer.scanline)` [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] error: aborting due to 6 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `gba`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/iomap.rs:230:5 [INFO] [stderr] | [INFO] [stderr] 230 | (read16(ic, addr) as u32) | (read16(ic, addr + 2) as u32) << 16 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(read16(ic, addr))` [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/iomap.rs:230:33 [INFO] [stderr] | [INFO] [stderr] 230 | (read16(ic, addr) as u32) | (read16(ic, addr + 2) as u32) << 16 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(read16(ic, addr + 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 u16 may become silently lossy if types change [INFO] [stderr] --> src/iomap.rs:236:26 [INFO] [stderr] | [INFO] [stderr] 236 | (half & !0xFF) | (value as u16) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u16::from(value)` [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/iomap.rs:238:25 [INFO] [stderr] | [INFO] [stderr] 238 | (half & 0xFF) | (value as u16) << 8 [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u16::from(value)` [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] error: aborting due to 6 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `gba`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "d8551070529416352a81fa7b8aebe8935961e350c0272067196816c486c685fc"` [INFO] running `"docker" "rm" "-f" "d8551070529416352a81fa7b8aebe8935961e350c0272067196816c486c685fc"` [INFO] [stdout] d8551070529416352a81fa7b8aebe8935961e350c0272067196816c486c685fc