[INFO] updating cached repository 44100hertz/6502emu0 [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/44100hertz/6502emu0 [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/44100hertz/6502emu0" "work/ex/clippy-test-run/sources/stable/gh/44100hertz/6502emu0"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/44100hertz/6502emu0'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/44100hertz/6502emu0" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/44100hertz/6502emu0"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/44100hertz/6502emu0'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 16773da35cb890efdcae89878a52b3cf1c37dd45 [INFO] sha for GitHub repo 44100hertz/6502emu0: 16773da35cb890efdcae89878a52b3cf1c37dd45 [INFO] validating manifest of 44100hertz/6502emu0 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 44100hertz/6502emu0 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 44100hertz/6502emu0 [INFO] finished frobbing 44100hertz/6502emu0 [INFO] frobbed toml for 44100hertz/6502emu0 written to work/ex/clippy-test-run/sources/stable/gh/44100hertz/6502emu0/Cargo.toml [INFO] started frobbing 44100hertz/6502emu0 [INFO] finished frobbing 44100hertz/6502emu0 [INFO] frobbed toml for 44100hertz/6502emu0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/44100hertz/6502emu0/Cargo.toml [INFO] crate 44100hertz/6502emu0 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 44100hertz/6502emu0 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/gh/44100hertz/6502emu0:/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] d11bf501185b0b641e45efd8ccc60aa404a9fdae9cf54736f1bfb3d702761484 [INFO] running `"docker" "start" "-a" "d11bf501185b0b641e45efd8ccc60aa404a9fdae9cf54736f1bfb3d702761484"` [INFO] [stderr] Checking emu v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/emu/chip.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | rom: rom, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `rom` [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/emu/chip.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | rom: rom, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `rom` [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: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 194 | Lda => self.a = load!(), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 194 | Lda => self.a = load!(), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 195 | Ldx => self.x = load!(), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 195 | Ldx => self.x = load!(), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 196 | Ldy => self.y = load!(), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 196 | Ldy => self.y = load!(), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 201 | Inc => update_flags!(store!(load!().wrapping_add(1))), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 201 | Inc => update_flags!(store!(load!().wrapping_add(1))), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 202 | Dec => update_flags!(store!(load!().wrapping_sub(1))), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 202 | Dec => update_flags!(store!(load!().wrapping_sub(1))), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 203 | Lsr => shift!(false, false), [INFO] [stderr] | -------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 203 | Lsr => shift!(false, false), [INFO] [stderr] | -------------------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 204 | Asl => shift!(false, true), [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 204 | Asl => shift!(false, true), [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 205 | Ror => shift!(true, false), [INFO] [stderr] | -------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 205 | Ror => shift!(true, false), [INFO] [stderr] | -------------------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 206 | Rol => shift!(true, true), [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 206 | Rol => shift!(true, true), [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 208 | Adc => add!(load!()), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 208 | Adc => add!(load!()), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 209 | Sbc => add!(load!() ^ 0xff), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 209 | Sbc => add!(load!() ^ 0xff), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 210 | Ora => { self.a |= load!(); update_flags!(self.a) }, [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 210 | Ora => { self.a |= load!(); update_flags!(self.a) }, [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 211 | And => { self.a &= load!(); update_flags!(self.a) }, [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 211 | And => { self.a &= load!(); update_flags!(self.a) }, [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 212 | Eor => { self.a ^= load!(); update_flags!(self.a) }, [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 212 | Eor => { self.a ^= load!(); update_flags!(self.a) }, [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 220 | Cmp => cmp!(self.a), [INFO] [stderr] | ------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 220 | Cmp => cmp!(self.a), [INFO] [stderr] | ------------ in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 221 | Cpx => cmp!(self.x), [INFO] [stderr] | ------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 221 | Cpx => cmp!(self.x), [INFO] [stderr] | ------------ in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 222 | Cpy => cmp!(self.y), [INFO] [stderr] | ------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 222 | Cpy => cmp!(self.y), [INFO] [stderr] | ------------ in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 224 | Bit => { load!(); }, [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 224 | Bit => { load!(); }, [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: inconsistent casing in hexadecimal literal [INFO] [stderr] --> src/emu/mod.rs:33:47 [INFO] [stderr] | [INFO] [stderr] 33 | Txa = 0x8A, Txs = 0x9A, Tax = 0xAA, Tsx = 0xBa, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::mixed_case_hex_literals)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mixed_case_hex_literals [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 194 | Lda => self.a = load!(), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 194 | Lda => self.a = load!(), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 195 | Ldx => self.x = load!(), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 195 | Ldx => self.x = load!(), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 196 | Ldy => self.y = load!(), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 196 | Ldy => self.y = load!(), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 201 | Inc => update_flags!(store!(load!().wrapping_add(1))), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 201 | Inc => update_flags!(store!(load!().wrapping_add(1))), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 202 | Dec => update_flags!(store!(load!().wrapping_sub(1))), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 202 | Dec => update_flags!(store!(load!().wrapping_sub(1))), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 203 | Lsr => shift!(false, false), [INFO] [stderr] | -------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 203 | Lsr => shift!(false, false), [INFO] [stderr] | -------------------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 204 | Asl => shift!(false, true), [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 204 | Asl => shift!(false, true), [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 205 | Ror => shift!(true, false), [INFO] [stderr] | -------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 205 | Ror => shift!(true, false), [INFO] [stderr] | -------------------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 206 | Rol => shift!(true, true), [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 206 | Rol => shift!(true, true), [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 208 | Adc => add!(load!()), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 208 | Adc => add!(load!()), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 209 | Sbc => add!(load!() ^ 0xff), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 209 | Sbc => add!(load!() ^ 0xff), [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 210 | Ora => { self.a |= load!(); update_flags!(self.a) }, [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 210 | Ora => { self.a |= load!(); update_flags!(self.a) }, [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 211 | And => { self.a &= load!(); update_flags!(self.a) }, [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 211 | And => { self.a &= load!(); update_flags!(self.a) }, [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 212 | Eor => { self.a ^= load!(); update_flags!(self.a) }, [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 212 | Eor => { self.a ^= load!(); update_flags!(self.a) }, [INFO] [stderr] | ------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 220 | Cmp => cmp!(self.a), [INFO] [stderr] | ------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 220 | Cmp => cmp!(self.a), [INFO] [stderr] | ------------ in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 221 | Cpx => cmp!(self.x), [INFO] [stderr] | ------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 221 | Cpx => cmp!(self.x), [INFO] [stderr] | ------------ in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 222 | Cpy => cmp!(self.y), [INFO] [stderr] | ------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 222 | Cpy => cmp!(self.y), [INFO] [stderr] | ------------ in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/emu/chip.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | tmp [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 224 | Bit => { load!(); }, [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/emu/chip.rs:155:23 [INFO] [stderr] | [INFO] [stderr] 155 | let tmp = self.load(mode, arg); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 224 | Bit => { load!(); }, [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: inconsistent casing in hexadecimal literal [INFO] [stderr] --> src/emu/mod.rs:33:47 [INFO] [stderr] | [INFO] [stderr] 33 | Txa = 0x8A, Txs = 0x9A, Tax = 0xAA, Tsx = 0xBa, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::mixed_case_hex_literals)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mixed_case_hex_literals [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:63:24 [INFO] [stderr] | [INFO] [stderr] 63 | self.pc += width as u16 + 1; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(width)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:66:22 [INFO] [stderr] | [INFO] [stderr] 66 | 1 => self.rom[arg_pos] as u16, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.rom[arg_pos])` [INFO] [stderr] | [INFO] [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 i16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:98:49 [INFO] [stderr] | [INFO] [stderr] 98 | self.pc = (self.pc as i16 + (arg as i8) as i16) as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `i16::from((arg 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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:63:24 [INFO] [stderr] | [INFO] [stderr] 63 | self.pc += width as u16 + 1; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u16::from(width)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:66:22 [INFO] [stderr] | [INFO] [stderr] 66 | 1 => self.rom[arg_pos] as u16, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.rom[arg_pos])` [INFO] [stderr] | [INFO] [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 i16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:98:49 [INFO] [stderr] | [INFO] [stderr] 98 | self.pc = (self.pc as i16 + (arg as i8) as i16) as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `i16::from((arg 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: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/emu/chip.rs:183:46 [INFO] [stderr] | [INFO] [stderr] 183 | let (shifted, in_bit, out_bit) = match $is_left { [INFO] [stderr] | ______________________________________________^ [INFO] [stderr] 184 | | true => (input << 1, 1, 0x80), [INFO] [stderr] 185 | | false => (input >> 1, 0x80, 1), [INFO] [stderr] 186 | | }; [INFO] [stderr] | |_____________^ help: consider using an if/else expression: `if false { shift!(false, false) } else { shift!(false, false) }` [INFO] [stderr] ... [INFO] [stderr] 203 | Lsr => shift!(false, false), [INFO] [stderr] | -------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/emu/chip.rs:183:46 [INFO] [stderr] | [INFO] [stderr] 183 | let (shifted, in_bit, out_bit) = match $is_left { [INFO] [stderr] | ______________________________________________^ [INFO] [stderr] 184 | | true => (input << 1, 1, 0x80), [INFO] [stderr] 185 | | false => (input >> 1, 0x80, 1), [INFO] [stderr] 186 | | }; [INFO] [stderr] | |_____________^ help: consider using an if/else expression: `if true { shift!(false, true) } else { shift!(false, true) }` [INFO] [stderr] ... [INFO] [stderr] 204 | Asl => shift!(false, true), [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#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/emu/chip.rs:183:46 [INFO] [stderr] | [INFO] [stderr] 183 | let (shifted, in_bit, out_bit) = match $is_left { [INFO] [stderr] | ______________________________________________^ [INFO] [stderr] 184 | | true => (input << 1, 1, 0x80), [INFO] [stderr] 185 | | false => (input >> 1, 0x80, 1), [INFO] [stderr] 186 | | }; [INFO] [stderr] | |_____________^ help: consider using an if/else expression: `if false { shift!(true, false) } else { shift!(true, false) }` [INFO] [stderr] ... [INFO] [stderr] 205 | Ror => shift!(true, false), [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#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/emu/chip.rs:183:46 [INFO] [stderr] | [INFO] [stderr] 183 | let (shifted, in_bit, out_bit) = match $is_left { [INFO] [stderr] | ______________________________________________^ [INFO] [stderr] 184 | | true => (input << 1, 1, 0x80), [INFO] [stderr] 185 | | false => (input >> 1, 0x80, 1), [INFO] [stderr] 186 | | }; [INFO] [stderr] | |_____________^ help: consider using an if/else expression: `if true { shift!(true, true) } else { shift!(true, true) }` [INFO] [stderr] ... [INFO] [stderr] 206 | Rol => shift!(true, true), [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#match_bool [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:170:23 [INFO] [stderr] | [INFO] [stderr] 170 | let val = $param as u16; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 208 | Adc => add!(load!()), [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] help: try [INFO] [stderr] | [INFO] [stderr] 170 | let val = u16::from({ [INFO] [stderr] 171 | let tmp = self.load(mode, arg); [INFO] [stderr] 172 | tmp [INFO] [stderr] 173 | }); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:172:29 [INFO] [stderr] | [INFO] [stderr] 172 | let sum = val + self.a as u16 + carry_in; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.a)` [INFO] [stderr] ... [INFO] [stderr] 208 | Adc => add!(load!()), [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/emu/chip.rs:170:23 [INFO] [stderr] | [INFO] [stderr] 170 | let val = $param as u16; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(load!() ^ 0xff)` [INFO] [stderr] ... [INFO] [stderr] 209 | Sbc => add!(load!() ^ 0xff), [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/emu/chip.rs:172:29 [INFO] [stderr] | [INFO] [stderr] 172 | let sum = val + self.a as u16 + carry_in; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.a)` [INFO] [stderr] ... [INFO] [stderr] 209 | Sbc => add!(load!() ^ 0xff), [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/emu/chip.rs:217:27 [INFO] [stderr] | [INFO] [stderr] 217 | self.pc = self.read_mem(arg) as u16 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.read_mem(arg))` [INFO] [stderr] | [INFO] [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/emu/chip.rs:218:24 [INFO] [stderr] | [INFO] [stderr] 218 | | (self.read_mem((arg + 1) & 0xff) as u16 >> 8) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.read_mem((arg + 1) & 0xff))` [INFO] [stderr] | [INFO] [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/emu/chip.rs:259:48 [INFO] [stderr] | [INFO] [stderr] 259 | Zpx => { self.cycle(2); pos << 8 | self.x as u16 }, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:260:48 [INFO] [stderr] | [INFO] [stderr] 260 | Zpy => { self.cycle(2); pos << 8 | self.y as u16 }, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.y)` [INFO] [stderr] | [INFO] [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/emu/chip.rs:261:55 [INFO] [stderr] | [INFO] [stderr] 261 | Absx => { self.cycle(2); pos.wrapping_add(self.x as u16) }, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:262:55 [INFO] [stderr] | [INFO] [stderr] 262 | Absy => { self.cycle(2); pos.wrapping_add(self.y as u16) }, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.y)` [INFO] [stderr] | [INFO] [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/emu/chip.rs:265:33 [INFO] [stderr] | [INFO] [stderr] 265 | let pos = pos + self.x as u16; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:266:17 [INFO] [stderr] | [INFO] [stderr] 266 | self.read_mem(pos) as u16 | [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.read_mem(pos))` [INFO] [stderr] | [INFO] [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/emu/chip.rs:267:18 [INFO] [stderr] | [INFO] [stderr] 267 | ((self.read_mem(pos+1) as u16) << 8) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.read_mem(pos+1))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:271:30 [INFO] [stderr] | [INFO] [stderr] 271 | let offset = self.read_mem(pos) as u16 | (self.read_mem(pos+1) as u16) << 8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.read_mem(pos))` [INFO] [stderr] | [INFO] [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/emu/chip.rs:271:58 [INFO] [stderr] | [INFO] [stderr] 271 | let offset = self.read_mem(pos) as u16 | (self.read_mem(pos+1) as u16) << 8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.read_mem(pos+1))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:273:37 [INFO] [stderr] | [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] 273 | offset.wrapping_add(self.y as u16) [INFO] [stderr] --> src/emu/chip.rs:183:46 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.y)` [INFO] [stderr] | [INFO] [stderr] 183 | let (shifted, in_bit, out_bit) = match $is_left { [INFO] [stderr] | ______________________________________________^ [INFO] [stderr] 184 | | true => (input << 1, 1, 0x80), [INFO] [stderr] 185 | | false => (input >> 1, 0x80, 1), [INFO] [stderr] 186 | | }; [INFO] [stderr] | |_____________^ help: consider using an if/else expression: `if false { shift!(false, false) } else { shift!(false, false) }` [INFO] [stderr] ... [INFO] [stderr] 203 | Lsr => shift!(false, false), [INFO] [stderr] | -------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/emu/chip.rs:183:46 [INFO] [stderr] | [INFO] [stderr] 183 | let (shifted, in_bit, out_bit) = match $is_left { [INFO] [stderr] | ______________________________________________^ [INFO] [stderr] 184 | | true => (input << 1, 1, 0x80), [INFO] [stderr] 185 | | false => (input >> 1, 0x80, 1), [INFO] [stderr] 186 | | }; [INFO] [stderr] | |_____________^ help: consider using an if/else expression: `if true { shift!(false, true) } else { shift!(false, true) }` [INFO] [stderr] ... [INFO] [stderr] 204 | Asl => shift!(false, true), [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#match_bool [INFO] [stderr] [INFO] [stderr] error: handle read amount returned or use `Read::read_exact` instead [INFO] [stderr] --> src/emu/chip.rs:287:17 [INFO] [stderr] | [INFO] [stderr] 287 | stdin().read(&mut tmp).expect("failed to read stdin"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/emu/chip.rs:183:46 [INFO] [stderr] | [INFO] [stderr] 183 | let (shifted, in_bit, out_bit) = match $is_left { [INFO] [stderr] | ______________________________________________^ [INFO] [stderr] 184 | | true => (input << 1, 1, 0x80), [INFO] [stderr] 185 | | false => (input >> 1, 0x80, 1), [INFO] [stderr] 186 | | }; [INFO] [stderr] | |_____________^ help: consider using an if/else expression: `if false { shift!(true, false) } else { shift!(true, false) }` [INFO] [stderr] ... [INFO] [stderr] 205 | Ror => shift!(true, false), [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#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/emu/chip.rs:183:46 [INFO] [stderr] | [INFO] [stderr] 183 | let (shifted, in_bit, out_bit) = match $is_left { [INFO] [stderr] | ______________________________________________^ [INFO] [stderr] 184 | | true => (input << 1, 1, 0x80), [INFO] [stderr] 185 | | false => (input >> 1, 0x80, 1), [INFO] [stderr] 186 | | }; [INFO] [stderr] | |_____________^ help: consider using an if/else expression: `if true { shift!(true, true) } else { shift!(true, true) }` [INFO] [stderr] ... [INFO] [stderr] 206 | Rol => shift!(true, true), [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#match_bool [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:170:23 [INFO] [stderr] | [INFO] [stderr] 170 | let val = $param as u16; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 208 | Adc => add!(load!()), [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] help: try [INFO] [stderr] | [INFO] [stderr] 170 | let val = u16::from({ [INFO] [stderr] 171 | let tmp = self.load(mode, arg); [INFO] [stderr] 172 | tmp [INFO] [stderr] 173 | }); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:172:29 [INFO] [stderr] | [INFO] [stderr] 172 | let sum = val + self.a as u16 + carry_in; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.a)` [INFO] [stderr] ... [INFO] [stderr] 208 | Adc => add!(load!()), [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/emu/chip.rs:170:23 [INFO] [stderr] | [INFO] [stderr] 170 | let val = $param as u16; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(load!() ^ 0xff)` [INFO] [stderr] ... [INFO] [stderr] 209 | Sbc => add!(load!() ^ 0xff), [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/emu/chip.rs:172:29 [INFO] [stderr] | [INFO] [stderr] 172 | let sum = val + self.a as u16 + carry_in; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.a)` [INFO] [stderr] ... [INFO] [stderr] 209 | Sbc => add!(load!() ^ 0xff), [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/emu/chip.rs:217:27 [INFO] [stderr] | [INFO] [stderr] 217 | self.pc = self.read_mem(arg) as u16 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.read_mem(arg))` [INFO] [stderr] | [INFO] [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/emu/chip.rs:218:24 [INFO] [stderr] | [INFO] [stderr] 218 | | (self.read_mem((arg + 1) & 0xff) as u16 >> 8) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.read_mem((arg + 1) & 0xff))` [INFO] [stderr] | [INFO] [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/emu/chip.rs:306:38 [INFO] [stderr] | [INFO] [stderr] 306 | let offset = i + v as u16 * 256; [INFO] [stderr] | ^^^^^^^^ help: try: `u16::from(v)` [INFO] [stderr] | [INFO] [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/emu/chip.rs:259:48 [INFO] [stderr] | [INFO] [stderr] 259 | Zpx => { self.cycle(2); pos << 8 | self.x as u16 }, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:260:48 [INFO] [stderr] | [INFO] [stderr] 260 | Zpy => { self.cycle(2); pos << 8 | self.y as u16 }, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.y)` [INFO] [stderr] | [INFO] [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/emu/chip.rs:261:55 [INFO] [stderr] | [INFO] [stderr] 261 | Absx => { self.cycle(2); pos.wrapping_add(self.x as u16) }, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:262:55 [INFO] [stderr] | [INFO] [stderr] 262 | Absy => { self.cycle(2); pos.wrapping_add(self.y as u16) }, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.y)` [INFO] [stderr] | [INFO] [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/emu/chip.rs:265:33 [INFO] [stderr] | [INFO] [stderr] 265 | let pos = pos + self.x as u16; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:266:17 [INFO] [stderr] | [INFO] [stderr] 266 | self.read_mem(pos) as u16 | [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.read_mem(pos))` [INFO] [stderr] | [INFO] [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/emu/chip.rs:267:18 [INFO] [stderr] | [INFO] [stderr] 267 | ((self.read_mem(pos+1) as u16) << 8) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.read_mem(pos+1))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:271:30 [INFO] [stderr] | [INFO] [stderr] 271 | let offset = self.read_mem(pos) as u16 | (self.read_mem(pos+1) as u16) << 8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.read_mem(pos))` [INFO] [stderr] | [INFO] [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/emu/chip.rs:271:58 [INFO] [stderr] | [INFO] [stderr] 271 | let offset = self.read_mem(pos) as u16 | (self.read_mem(pos+1) as u16) << 8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.read_mem(pos+1))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:273:37 [INFO] [stderr] | [INFO] [stderr] 273 | offset.wrapping_add(self.y as u16) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u16::from(self.y)` [INFO] [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: handle read amount returned or use `Read::read_exact` instead [INFO] [stderr] --> src/emu/chip.rs:287:17 [INFO] [stderr] | [INFO] [stderr] 287 | stdin().read(&mut tmp).expect("failed to read stdin"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:332:9 [INFO] [stderr] | [INFO] [stderr] 332 | self.pop() as u16 | (self.pop() as u16) << 8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.pop())` [INFO] [stderr] | [INFO] [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/emu/chip.rs:332:29 [INFO] [stderr] | [INFO] [stderr] 332 | self.pop() as u16 | (self.pop() as u16) << 8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.pop())` [INFO] [stderr] | [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/emu/mod.rs:51:14 [INFO] [stderr] | [INFO] [stderr] 51 | fn width(&self) -> u8 { [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/mod.rs:84:9 [INFO] [stderr] | [INFO] [stderr] 84 | self[index] as u16 | (self[index+1] as u16) << 8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self[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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/mod.rs:84:30 [INFO] [stderr] | [INFO] [stderr] 84 | self[index] as u16 | (self[index+1] as u16) << 8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self[index+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: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/emu/mod.rs:89:9 [INFO] [stderr] | [INFO] [stderr] 89 | C = 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/emu/chip.rs:306:38 [INFO] [stderr] | [INFO] [stderr] 306 | let offset = i + v as u16 * 256; [INFO] [stderr] | ^^^^^^^^ help: try: `u16::from(v)` [INFO] [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 previous error [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/chip.rs:332:9 [INFO] [stderr] | [INFO] [stderr] 332 | self.pop() as u16 | (self.pop() as u16) << 8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.pop())` [INFO] [stderr] | [INFO] [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/emu/chip.rs:332:29 [INFO] [stderr] | [INFO] [stderr] 332 | self.pop() as u16 | (self.pop() as u16) << 8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.pop())` [INFO] [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: Could not compile `emu`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/emu/mod.rs:51:14 [INFO] [stderr] | [INFO] [stderr] 51 | fn width(&self) -> u8 { [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/mod.rs:84:9 [INFO] [stderr] | [INFO] [stderr] 84 | self[index] as u16 | (self[index+1] as u16) << 8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self[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 u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/emu/mod.rs:84:30 [INFO] [stderr] | [INFO] [stderr] 84 | self[index] as u16 | (self[index+1] as u16) << 8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(self[index+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: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/emu/mod.rs:89:9 [INFO] [stderr] | [INFO] [stderr] 89 | C = 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] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `emu`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "d11bf501185b0b641e45efd8ccc60aa404a9fdae9cf54736f1bfb3d702761484"` [INFO] running `"docker" "rm" "-f" "d11bf501185b0b641e45efd8ccc60aa404a9fdae9cf54736f1bfb3d702761484"` [INFO] [stdout] d11bf501185b0b641e45efd8ccc60aa404a9fdae9cf54736f1bfb3d702761484