[INFO] crate rz80 0.1.1 is already in cache [INFO] extracting crate rz80 0.1.1 into work/ex/clippy-test-run/sources/stable/reg/rz80/0.1.1 [INFO] extracting crate rz80 0.1.1 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/rz80/0.1.1 [INFO] validating manifest of rz80-0.1.1 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of rz80-0.1.1 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing rz80-0.1.1 [INFO] finished frobbing rz80-0.1.1 [INFO] frobbed toml for rz80-0.1.1 written to work/ex/clippy-test-run/sources/stable/reg/rz80/0.1.1/Cargo.toml [INFO] started frobbing rz80-0.1.1 [INFO] finished frobbing rz80-0.1.1 [INFO] frobbed toml for rz80-0.1.1 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/rz80/0.1.1/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting rz80-0.1.1 against stable+rustflags=-Dclippy::into_iter_on_array for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-6/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/rz80/0.1.1:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dclippy::into_iter_on_array" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 9e310e180a6db222be2859af60814424e88f24b116dc5240ffab1a9c99a09171 [INFO] running `"docker" "start" "-a" "9e310e180a6db222be2859af60814424e88f24b116dc5240ffab1a9c99a09171"` [INFO] [stderr] Compiling libc v0.2.48 [INFO] [stderr] Compiling gcc v0.3.55 [INFO] [stderr] Checking rz80 v0.1.1 (/opt/crater/workdir) [INFO] [stderr] error[E0602]: unknown lint: `clippy::into_iter_on_array` [INFO] [stderr] | [INFO] [stderr] = note: requested on the command line with `-D clippy::into_iter_on_array` [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:276:21 [INFO] [stderr] | [INFO] [stderr] 276 | let v = self.reg.r8i(z); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:284:21 [INFO] [stderr] | [INFO] [stderr] 284 | let v = self.mem.r8(a); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:344:21 [INFO] [stderr] | [INFO] [stderr] 344 | let q = y & 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:362:21 [INFO] [stderr] | [INFO] [stderr] 362 | let q = y & 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:367:29 [INFO] [stderr] | [INFO] [stderr] 367 | let v = self.reg.r16sp(2); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:375:29 [INFO] [stderr] | [INFO] [stderr] 375 | let a = self.reg.a(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:387:29 [INFO] [stderr] | [INFO] [stderr] 387 | let a = self.reg.a(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:426:21 [INFO] [stderr] | [INFO] [stderr] 426 | let q = y & 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:440:21 [INFO] [stderr] | [INFO] [stderr] 440 | let w = self.inc8(v); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:447:21 [INFO] [stderr] | [INFO] [stderr] 447 | let w = self.inc8(v); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:455:21 [INFO] [stderr] | [INFO] [stderr] 455 | let w = self.dec8(v); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:462:21 [INFO] [stderr] | [INFO] [stderr] 462 | let w = self.dec8(v); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:507:21 [INFO] [stderr] | [INFO] [stderr] 507 | let q = y & 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:529:29 [INFO] [stderr] | [INFO] [stderr] 529 | let v = self.reg.r16sp(2); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:535:29 [INFO] [stderr] | [INFO] [stderr] 535 | let v = self.reg.r16sp(2); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:611:21 [INFO] [stderr] | [INFO] [stderr] 611 | let q = y & 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:615:29 [INFO] [stderr] | [INFO] [stderr] 615 | let v = self.reg.r16af(p); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:718:21 [INFO] [stderr] | [INFO] [stderr] 718 | let f = flags_szp(v) | (self.reg.f() & CF); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:727:21 [INFO] [stderr] | [INFO] [stderr] 727 | let f = flags_szp(v) | (self.reg.f() & CF); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:747:21 [INFO] [stderr] | [INFO] [stderr] 747 | let q = y & 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:761:21 [INFO] [stderr] | [INFO] [stderr] 761 | let q = y & 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:812:21 [INFO] [stderr] | [INFO] [stderr] 812 | let f = flags_sziff2(i, self.iff2) | (self.reg.f() & CF); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:820:21 [INFO] [stderr] | [INFO] [stderr] 820 | let f = flags_sziff2(r, self.iff2) | (self.reg.f() & CF); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:861:25 [INFO] [stderr] | [INFO] [stderr] 861 | let a = self.addr_d(d, ext); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:862:25 [INFO] [stderr] | [INFO] [stderr] 862 | let v = self.mem.r8(a); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 7th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:863:25 [INFO] [stderr] | [INFO] [stderr] 863 | let w = self.rot(y, v); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:869:25 [INFO] [stderr] | [INFO] [stderr] 869 | let a = self.addr_d(d, ext); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:870:25 [INFO] [stderr] | [INFO] [stderr] 870 | let v = self.mem.r8(a); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 7th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:871:25 [INFO] [stderr] | [INFO] [stderr] 871 | let w = self.rot(y, v); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:877:25 [INFO] [stderr] | [INFO] [stderr] 877 | let v = self.reg.r8i(z); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:878:25 [INFO] [stderr] | [INFO] [stderr] 878 | let w = self.rot(y, v); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:887:25 [INFO] [stderr] | [INFO] [stderr] 887 | let a = self.addr_d(d, ext); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:888:25 [INFO] [stderr] | [INFO] [stderr] 888 | let v = self.mem.r8(a); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:893:25 [INFO] [stderr] | [INFO] [stderr] 893 | let v = self.reg.r8i(z); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:902:25 [INFO] [stderr] | [INFO] [stderr] 902 | let a = self.addr_d(d, ext); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:903:25 [INFO] [stderr] | [INFO] [stderr] 903 | let v = self.mem.r8(a) & !(1 << y); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:909:25 [INFO] [stderr] | [INFO] [stderr] 909 | let a = self.addr_d(d, ext); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:910:25 [INFO] [stderr] | [INFO] [stderr] 910 | let v = self.mem.r8(a) & !(1 << y); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:916:25 [INFO] [stderr] | [INFO] [stderr] 916 | let v = self.reg.r8i(z) & !(1 << y); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:925:25 [INFO] [stderr] | [INFO] [stderr] 925 | let a = self.addr_d(d, ext); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:926:25 [INFO] [stderr] | [INFO] [stderr] 926 | let v = self.mem.r8(a) | 1 << y; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:932:25 [INFO] [stderr] | [INFO] [stderr] 932 | let a = self.addr_d(d, ext); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:933:25 [INFO] [stderr] | [INFO] [stderr] 933 | let v = self.mem.r8(a) | 1 << y; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/cpu.rs:939:25 [INFO] [stderr] | [INFO] [stderr] 939 | let v = self.reg.r8i(z) | 1 << y; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/pio.rs:57:13 [INFO] [stderr] | [INFO] [stderr] 57 | id: id, [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ctc.rs:61:13 [INFO] [stderr] | [INFO] [stderr] 61 | id: id, [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] error[E0602]: unknown lint: `clippy::into_iter_on_array` [INFO] [stderr] | [INFO] [stderr] = note: requested on the command line with `-D clippy::into_iter_on_array` [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0602`. [INFO] [stderr] error: Could not compile `libc`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: unnecessary parentheses around method argument [INFO] [stderr] --> src/memory.rs:140:32 [INFO] [stderr] | [INFO] [stderr] 140 | mem.map(0, 0, 0, true, (1 << 16)); [INFO] [stderr] | ^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/ctc.rs:147:13 [INFO] [stderr] | [INFO] [stderr] 147 | / if (ctrl & (CTC_RESET | CTC_CONSTANT_FOLLOWS)) == 0 { [INFO] [stderr] 148 | | if (ctrl & CTC_MODE_BIT) == CTC_MODE_TIMER && !waiting { [INFO] [stderr] 149 | | self.chn[chn].down_counter -= cycles as RegT; [INFO] [stderr] 150 | | while self.chn[chn].down_counter <= 0 { [INFO] [stderr] ... | [INFO] [stderr] 154 | | } [INFO] [stderr] 155 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 147 | if (ctrl & (CTC_RESET | CTC_CONSTANT_FOLLOWS)) == 0 && (ctrl & CTC_MODE_BIT) == CTC_MODE_TIMER && !waiting { [INFO] [stderr] 148 | self.chn[chn].down_counter -= cycles as RegT; [INFO] [stderr] 149 | while self.chn[chn].down_counter <= 0 { [INFO] [stderr] 150 | self.down_counter_trigger(bus, chn); [INFO] [stderr] 151 | self.chn[chn].down_counter += CTC::down_counter_initial(&self.chn[chn]); [INFO] [stderr] 152 | } [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0602`. [INFO] [stderr] error: Could not compile `gcc`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/registers.rs:4:22 [INFO] [stderr] | [INFO] [stderr] 4 | pub const CF: RegT = 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: you should consider deriving a `Default` implementation for `registers::Registers` [INFO] [stderr] --> src/registers.rs:122:5 [INFO] [stderr] | [INFO] [stderr] 122 | / pub fn new() -> Registers { [INFO] [stderr] 123 | | Registers { [INFO] [stderr] 124 | | reg: [0; NUM_REGS], [INFO] [stderr] 125 | | r_pc: 0, [INFO] [stderr] ... | [INFO] [stderr] 133 | | } [INFO] [stderr] 134 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 106 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:148:9 [INFO] [stderr] | [INFO] [stderr] 148 | self.reg[A] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[A])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:153:9 [INFO] [stderr] | [INFO] [stderr] 153 | self.reg[F] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[F])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:158:9 [INFO] [stderr] | [INFO] [stderr] 158 | self.reg[B] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[B])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:163:9 [INFO] [stderr] | [INFO] [stderr] 163 | self.reg[C] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[C])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:168:9 [INFO] [stderr] | [INFO] [stderr] 168 | self.reg[D] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[D])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:173:9 [INFO] [stderr] | [INFO] [stderr] 173 | self.reg[E] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[E])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:178:9 [INFO] [stderr] | [INFO] [stderr] 178 | self.reg[H] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[H])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:183:9 [INFO] [stderr] | [INFO] [stderr] 183 | self.reg[L] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[L])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:188:9 [INFO] [stderr] | [INFO] [stderr] 188 | self.reg[WZH] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[WZH])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:235:9 [INFO] [stderr] | [INFO] [stderr] 235 | (self.reg[A] as RegT) << 8 | self.reg[F] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[A])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:235:38 [INFO] [stderr] | [INFO] [stderr] 235 | (self.reg[A] as RegT) << 8 | self.reg[F] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[F])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:240:9 [INFO] [stderr] | [INFO] [stderr] 240 | (self.reg[B] as RegT) << 8 | self.reg[C] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[B])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:240:38 [INFO] [stderr] | [INFO] [stderr] 240 | (self.reg[B] as RegT) << 8 | self.reg[C] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[C])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:245:9 [INFO] [stderr] | [INFO] [stderr] 245 | (self.reg[D] as RegT) << 8 | self.reg[E] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[D])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:245:38 [INFO] [stderr] | [INFO] [stderr] 245 | (self.reg[D] as RegT) << 8 | self.reg[E] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[E])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:250:9 [INFO] [stderr] | [INFO] [stderr] 250 | (self.reg[H] as RegT) << 8 | self.reg[L] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[H])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:250:38 [INFO] [stderr] | [INFO] [stderr] 250 | (self.reg[H] as RegT) << 8 | self.reg[L] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[L])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:255:9 [INFO] [stderr] | [INFO] [stderr] 255 | (self.reg[IXH] as RegT) << 8 | self.reg[IXL] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[IXH])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:255:40 [INFO] [stderr] | [INFO] [stderr] 255 | (self.reg[IXH] as RegT) << 8 | self.reg[IXL] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[IXL])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:260:9 [INFO] [stderr] | [INFO] [stderr] 260 | (self.reg[IYH] as RegT) << 8 | self.reg[IYL] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[IYH])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:260:40 [INFO] [stderr] | [INFO] [stderr] 260 | (self.reg[IYH] as RegT) << 8 | self.reg[IYL] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[IYL])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:265:9 [INFO] [stderr] | [INFO] [stderr] 265 | (self.reg[SPH] as RegT) << 8 | self.reg[SPL] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[SPH])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:265:40 [INFO] [stderr] | [INFO] [stderr] 265 | (self.reg[SPH] as RegT) << 8 | self.reg[SPL] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[SPL])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:270:9 [INFO] [stderr] | [INFO] [stderr] 270 | (self.reg[WZH] as RegT) << 8 | self.reg[WZL] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[WZH])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:270:40 [INFO] [stderr] | [INFO] [stderr] 270 | (self.reg[WZH] as RegT) << 8 | self.reg[WZL] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[WZL])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:275:9 [INFO] [stderr] | [INFO] [stderr] 275 | (self.reg[A_] as RegT) << 8 | self.reg[F_] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[A_])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:275:39 [INFO] [stderr] | [INFO] [stderr] 275 | (self.reg[A_] as RegT) << 8 | self.reg[F_] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[F_])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:280:9 [INFO] [stderr] | [INFO] [stderr] 280 | (self.reg[B_] as RegT) << 8 | self.reg[C_] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[B_])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:280:39 [INFO] [stderr] | [INFO] [stderr] 280 | (self.reg[B_] as RegT) << 8 | self.reg[C_] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[C_])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:285:9 [INFO] [stderr] | [INFO] [stderr] 285 | (self.reg[D_] as RegT) << 8 | self.reg[E_] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[D_])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:285:39 [INFO] [stderr] | [INFO] [stderr] 285 | (self.reg[D_] as RegT) << 8 | self.reg[E_] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[E_])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:290:9 [INFO] [stderr] | [INFO] [stderr] 290 | (self.reg[H_] as RegT) << 8 | self.reg[L_] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[H_])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:290:39 [INFO] [stderr] | [INFO] [stderr] 290 | (self.reg[H_] as RegT) << 8 | self.reg[L_] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[L_])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:295:9 [INFO] [stderr] | [INFO] [stderr] 295 | (self.reg[WZH_] as RegT) << 8 | self.reg[WZL_] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[WZH_])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:295:41 [INFO] [stderr] | [INFO] [stderr] 295 | (self.reg[WZH_] as RegT) << 8 | self.reg[WZL_] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[WZL_])` [INFO] [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 i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:300:9 [INFO] [stderr] | [INFO] [stderr] 300 | self.r_pc as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.r_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: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:402:9 [INFO] [stderr] | [INFO] [stderr] 402 | self.reg[self.m_r[r]] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[self.m_r[r]])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:414:9 [INFO] [stderr] | [INFO] [stderr] 414 | self.reg[self.m_r2[r]] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[self.m_r2[r]])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:426:9 [INFO] [stderr] | [INFO] [stderr] 426 | (self.reg[i] as RegT) << 8 | self.reg[i + 1] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/registers.rs:426:38 [INFO] [stderr] | [INFO] [stderr] 426 | (self.reg[i] as RegT) << 8 | self.reg[i + 1] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.reg[i + 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: you should consider adding a `Default` implementation for `memory::Memory` [INFO] [stderr] --> src/memory.rs:129:5 [INFO] [stderr] | [INFO] [stderr] 129 | / pub fn new() -> Memory { [INFO] [stderr] 130 | | Memory { [INFO] [stderr] 131 | | pages: [Page::new(); NUM_PAGES], [INFO] [stderr] 132 | | layers: [[Page::new(); NUM_PAGES]; NUM_LAYERS], [INFO] [stderr] 133 | | heap: [0; HEAP_SIZE], [INFO] [stderr] 134 | | } [INFO] [stderr] 135 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 127 | impl Default for memory::Memory { [INFO] [stderr] 128 | fn default() -> Self { [INFO] [stderr] 129 | Self::new() [INFO] [stderr] 130 | } [INFO] [stderr] 131 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/memory.rs:237:13 [INFO] [stderr] | [INFO] [stderr] 237 | self.heap[heap_offset] as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.heap[heap_offset])` [INFO] [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 i8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/memory.rs:250:13 [INFO] [stderr] | [INFO] [stderr] 250 | self.heap[heap_offset] as i8 as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.heap[heap_offset] as i8)` [INFO] [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 variable `offset` is used as a loop counter. Consider using `for (offset, item) in data.enumerate()` or similar iterators [INFO] [stderr] --> src/memory.rs:297:18 [INFO] [stderr] | [INFO] [stderr] 297 | for b in data { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::explicit_counter_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/memory.rs:298:37 [INFO] [stderr] | [INFO] [stderr] 298 | self.w8f(addr + offset, *b as RegT); [INFO] [stderr] | ^^^^^^^^^^ help: try: `i32::from(*b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/cpu.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | (if (res & 0xFF) == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `res.trailing_zeros() >= 8` [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] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/cpu.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | (if (res & 0xFF) == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `res.trailing_zeros() >= 8` [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/cpu.rs:59:9 [INFO] [stderr] | [INFO] [stderr] 59 | (if (res & 0xFF) == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `res.trailing_zeros() >= 8` [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/cpu.rs:84:9 [INFO] [stderr] | [INFO] [stderr] 84 | (if (val & 0xFF) == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `val.trailing_zeros() >= 8` [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: you should consider adding a `Default` implementation for `cpu::CPU` [INFO] [stderr] --> src/cpu.rs:109:5 [INFO] [stderr] | [INFO] [stderr] 109 | / pub fn new() -> CPU { [INFO] [stderr] 110 | | CPU { [INFO] [stderr] 111 | | reg: Registers::new(), [INFO] [stderr] 112 | | halt: false, [INFO] [stderr] ... | [INFO] [stderr] 119 | | } [INFO] [stderr] 120 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 107 | impl Default for cpu::CPU { [INFO] [stderr] 108 | fn default() -> Self { [INFO] [stderr] 109 | Self::new() [INFO] [stderr] 110 | } [INFO] [stderr] 111 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: bit mask could be simplified with a call to `trailing_zeros` [INFO] [stderr] --> src/cpu.rs:1316:28 [INFO] [stderr] | [INFO] [stderr] 1316 | (if (res & 0xFFFF) == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `res.trailing_zeros() >= 16` [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/cpu.rs:1330:28 [INFO] [stderr] | [INFO] [stderr] 1330 | (if (res & 0xFFFF) == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `res.trailing_zeros() >= 16` [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 i32 may become silently lossy if types change [INFO] [stderr] --> src/pio.rs:146:9 [INFO] [stderr] | [INFO] [stderr] 146 | ((self.chn[PIO_A].int_control & 0xC0) | (self.chn[PIO_B].int_control >> 4)) as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from((self.chn[PIO_A].int_control & 0xC0) | (self.chn[PIO_B].int_control >> 4))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/pio.rs:188:29 [INFO] [stderr] | [INFO] [stderr] 188 | Mode::Output => self.chn[chn].output as RegT, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.chn[chn].output)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/pio.rs:195:17 [INFO] [stderr] | [INFO] [stderr] 195 | self.chn[chn].input as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.chn[chn].input)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/pio.rs:200:17 [INFO] [stderr] | [INFO] [stderr] 200 | self.chn[chn].input as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.chn[chn].input)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/pio.rs:205:17 [INFO] [stderr] | [INFO] [stderr] 205 | ((c.input & c.io_select) | (c.output & !c.io_select)) as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from((c.input & c.io_select) | (c.output & !c.io_select))` [INFO] [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 boolean expression can be simplified [INFO] [stderr] --> src/pio.rs:219:26 [INFO] [stderr] | [INFO] [stderr] 219 | let bmatch = ((ictrl == 0x00) && (val != mask)) || ((ictrl == 0x20) && (val != 0)) || [INFO] [stderr] | __________________________^ [INFO] [stderr] 220 | | ((ictrl == 0x40) && (val == 0)) || [INFO] [stderr] 221 | | ((ictrl == 0x60) && (val == mask)); [INFO] [stderr] | |___________________________________________________________^ help: try: `(ictrl == 0x00) && (val != mask) || (ictrl == 0x20) && (val != 0) || (ictrl == 0x40) && val == 0 || (ictrl == 0x60) && val == mask` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::nonminimal_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/pio.rs:224:43 [INFO] [stderr] | [INFO] [stderr] 224 | bus.pio_irq(self.id, chn, c.int_vector as RegT); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(c.int_vector)` [INFO] [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/ctc.rs:38:33 [INFO] [stderr] | [INFO] [stderr] 38 | pub const CTC_CONTROL_BIT: u8 = 1 << 0; [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/ctc.rs:169:32 [INFO] [stderr] | [INFO] [stderr] 169 | fn down_counter_initial(c: &Channel) -> RegT { [INFO] [stderr] | ^^^^^^^^ help: consider passing by value instead: `Channel` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/ctc.rs:173:13 [INFO] [stderr] | [INFO] [stderr] 173 | c.constant as RegT [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `i32::from(c.constant)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/ctc.rs:184:39 [INFO] [stderr] | [INFO] [stderr] 184 | bus.ctc_irq(self.id, chn, self.chn[chn].int_vector as RegT); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(self.chn[chn].int_vector)` [INFO] [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: you should consider deriving a `Default` implementation for `daisychain::Controller` [INFO] [stderr] --> src/daisychain.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | / pub fn new() -> Controller { [INFO] [stderr] 19 | | Controller { [INFO] [stderr] 20 | | int_enabled: true, [INFO] [stderr] 21 | | int_requested: false, [INFO] [stderr] ... | [INFO] [stderr] 24 | | } [INFO] [stderr] 25 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 10 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/daisychain.rs:85:24 [INFO] [stderr] | [INFO] [stderr] 85 | return ctrl.int_vec as RegT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(ctrl.int_vec)` [INFO] [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: build failed [INFO] running `"docker" "inspect" "9e310e180a6db222be2859af60814424e88f24b116dc5240ffab1a9c99a09171"` [INFO] running `"docker" "rm" "-f" "9e310e180a6db222be2859af60814424e88f24b116dc5240ffab1a9c99a09171"` [INFO] [stdout] 9e310e180a6db222be2859af60814424e88f24b116dc5240ffab1a9c99a09171