[INFO] updating cached repository https://github.com/Tom-Goring/Rust-8080 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 760c4a73dd1cd6480275196c822c8e3622ef2594 [INFO] testing Tom-Goring/Rust-8080 against 1.45.2 for beta-1.46-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTom-Goring%2FRust-8080" "/workspace/builds/worker-12/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-12/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Tom-Goring/Rust-8080 on toolchain 1.45.2 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.45.2" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Tom-Goring/Rust-8080 [INFO] finished tweaking git repo https://github.com/Tom-Goring/Rust-8080 [INFO] tweaked toml for git repo https://github.com/Tom-Goring/Rust-8080 written to /workspace/builds/worker-12/source/Cargo.toml [INFO] crate git repo https://github.com/Tom-Goring/Rust-8080 already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.45.2" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+1.45.2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6a9466e129f95537252c7d9ec8b4f5577419b74c59d2c09f4aceec225f0919b6 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "6a9466e129f95537252c7d9ec8b4f5577419b74c59d2c09f4aceec225f0919b6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6a9466e129f95537252c7d9ec8b4f5577419b74c59d2c09f4aceec225f0919b6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6a9466e129f95537252c7d9ec8b4f5577419b74c59d2c09f4aceec225f0919b6", kill_on_drop: false }` [INFO] [stdout] 6a9466e129f95537252c7d9ec8b4f5577419b74c59d2c09f4aceec225f0919b6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+1.45.2" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9dc983d313f75ae55d1e96c58c5011880d551762ffc336a3ea3aa08ddaacf8a6 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "9dc983d313f75ae55d1e96c58c5011880d551762ffc336a3ea3aa08ddaacf8a6", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling sdl2 v0.32.2 [INFO] [stderr] Compiling c_vec v1.3.3 [INFO] [stderr] Compiling num-integer v0.1.41 [INFO] [stderr] Compiling sdl2-sys v0.32.6 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling num-iter v0.1.39 [INFO] [stderr] Compiling num v0.1.42 [INFO] [stderr] Compiling rust-8080 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/invaders.rs:175:17 [INFO] [stdout] | [INFO] [stdout] 175 | ((reg >> (8 - self.shift_amount)) as u8) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:337:39 [INFO] [stdout] | [INFO] [stdout] 337 | if self.reg.get_flag(Carry) { (self.reg[A] |= 0b00000001 )} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:345:39 [INFO] [stdout] | [INFO] [stdout] 345 | if self.reg.get_flag(Carry) { (self.reg[A] |= 0b10000000 )} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:822:23 [INFO] [stdout] | [INFO] [stdout] 822 | 0x40 => { (self.mov(B, B) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:823:23 [INFO] [stdout] | [INFO] [stdout] 823 | 0x41 => { (self.mov(B, C) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:824:23 [INFO] [stdout] | [INFO] [stdout] 824 | 0x42 => { (self.mov(B, D) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:825:23 [INFO] [stdout] | [INFO] [stdout] 825 | 0x43 => { (self.mov(B, E) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:826:23 [INFO] [stdout] | [INFO] [stdout] 826 | 0x44 => { (self.mov(B, H) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:827:23 [INFO] [stdout] | [INFO] [stdout] 827 | 0x45 => { (self.mov(B, L) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:828:23 [INFO] [stdout] | [INFO] [stdout] 828 | 0x46 => { (self.mov(B, M) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:829:23 [INFO] [stdout] | [INFO] [stdout] 829 | 0x47 => { (self.mov(B, A) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:832:23 [INFO] [stdout] | [INFO] [stdout] 832 | 0x48 => { (self.mov(C, B) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:833:23 [INFO] [stdout] | [INFO] [stdout] 833 | 0x49 => { (self.mov(C, C) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:834:23 [INFO] [stdout] | [INFO] [stdout] 834 | 0x4a => { (self.mov(C, D) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:835:23 [INFO] [stdout] | [INFO] [stdout] 835 | 0x4b => { (self.mov(C, E) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:836:23 [INFO] [stdout] | [INFO] [stdout] 836 | 0x4c => { (self.mov(C, H) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:837:23 [INFO] [stdout] | [INFO] [stdout] 837 | 0x4d => { (self.mov(C, L) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:838:23 [INFO] [stdout] | [INFO] [stdout] 838 | 0x4e => { (self.mov(C, M) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:839:23 [INFO] [stdout] | [INFO] [stdout] 839 | 0x4f => { (self.mov(C, A) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:842:23 [INFO] [stdout] | [INFO] [stdout] 842 | 0x50 => { (self.mov(D, B) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:843:23 [INFO] [stdout] | [INFO] [stdout] 843 | 0x51 => { (self.mov(D, C) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:844:23 [INFO] [stdout] | [INFO] [stdout] 844 | 0x52 => { (self.mov(D, D) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:845:23 [INFO] [stdout] | [INFO] [stdout] 845 | 0x53 => { (self.mov(D, E) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:846:23 [INFO] [stdout] | [INFO] [stdout] 846 | 0x54 => { (self.mov(D, H) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:847:23 [INFO] [stdout] | [INFO] [stdout] 847 | 0x55 => { (self.mov(D, L) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:848:23 [INFO] [stdout] | [INFO] [stdout] 848 | 0x56 => { (self.mov(D, M) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:849:23 [INFO] [stdout] | [INFO] [stdout] 849 | 0x57 => { (self.mov(D, A) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:852:23 [INFO] [stdout] | [INFO] [stdout] 852 | 0x58 => { (self.mov(E, B) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:853:23 [INFO] [stdout] | [INFO] [stdout] 853 | 0x59 => { (self.mov(E, C) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:854:23 [INFO] [stdout] | [INFO] [stdout] 854 | 0x5a => { (self.mov(E, D) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:855:23 [INFO] [stdout] | [INFO] [stdout] 855 | 0x5b => { (self.mov(E, E) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:856:23 [INFO] [stdout] | [INFO] [stdout] 856 | 0x5c => { (self.mov(E, H) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:857:23 [INFO] [stdout] | [INFO] [stdout] 857 | 0x5d => { (self.mov(E, L) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:858:23 [INFO] [stdout] | [INFO] [stdout] 858 | 0x5e => { (self.mov(E, M) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:859:23 [INFO] [stdout] | [INFO] [stdout] 859 | 0x5f => { (self.mov(E, A) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:862:23 [INFO] [stdout] | [INFO] [stdout] 862 | 0x60 => { (self.mov(H, B) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:863:23 [INFO] [stdout] | [INFO] [stdout] 863 | 0x61 => { (self.mov(H, C) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:864:23 [INFO] [stdout] | [INFO] [stdout] 864 | 0x62 => { (self.mov(H, D) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:865:23 [INFO] [stdout] | [INFO] [stdout] 865 | 0x63 => { (self.mov(H, E) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:866:23 [INFO] [stdout] | [INFO] [stdout] 866 | 0x64 => { (self.mov(H, H) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:867:23 [INFO] [stdout] | [INFO] [stdout] 867 | 0x65 => { (self.mov(H, L) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:868:23 [INFO] [stdout] | [INFO] [stdout] 868 | 0x66 => { (self.mov(H, M) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:869:23 [INFO] [stdout] | [INFO] [stdout] 869 | 0x67 => { (self.mov(H, A) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:872:23 [INFO] [stdout] | [INFO] [stdout] 872 | 0x68 => { (self.mov(L, B) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:873:23 [INFO] [stdout] | [INFO] [stdout] 873 | 0x69 => { (self.mov(L, C) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:874:23 [INFO] [stdout] | [INFO] [stdout] 874 | 0x6a => { (self.mov(L, D) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:875:23 [INFO] [stdout] | [INFO] [stdout] 875 | 0x6b => { (self.mov(L, E) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:876:23 [INFO] [stdout] | [INFO] [stdout] 876 | 0x6c => { (self.mov(L, H) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:877:23 [INFO] [stdout] | [INFO] [stdout] 877 | 0x6d => { (self.mov(L, L) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:878:23 [INFO] [stdout] | [INFO] [stdout] 878 | 0x6e => { (self.mov(L, M) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:879:23 [INFO] [stdout] | [INFO] [stdout] 879 | 0x6f => { (self.mov(L, A) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:882:23 [INFO] [stdout] | [INFO] [stdout] 882 | 0x70 => { (self.mov(M, B) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:883:23 [INFO] [stdout] | [INFO] [stdout] 883 | 0x71 => { (self.mov(M, C) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:884:23 [INFO] [stdout] | [INFO] [stdout] 884 | 0x72 => { (self.mov(M, D) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:885:23 [INFO] [stdout] | [INFO] [stdout] 885 | 0x73 => { (self.mov(M, E) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:886:23 [INFO] [stdout] | [INFO] [stdout] 886 | 0x74 => { (self.mov(M, H) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:887:23 [INFO] [stdout] | [INFO] [stdout] 887 | 0x75 => { (self.mov(M, L) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:889:23 [INFO] [stdout] | [INFO] [stdout] 889 | 0x77 => { (self.mov(M, A) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:892:23 [INFO] [stdout] | [INFO] [stdout] 892 | 0x78 => { (self.mov(A, B) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:893:23 [INFO] [stdout] | [INFO] [stdout] 893 | 0x79 => { (self.mov(A, C) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:894:23 [INFO] [stdout] | [INFO] [stdout] 894 | 0x7a => { (self.mov(A, D) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:895:23 [INFO] [stdout] | [INFO] [stdout] 895 | 0x7b => { (self.mov(A, E) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:896:23 [INFO] [stdout] | [INFO] [stdout] 896 | 0x7c => { (self.mov(A, H) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:897:23 [INFO] [stdout] | [INFO] [stdout] 897 | 0x7d => { (self.mov(A, L) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:898:23 [INFO] [stdout] | [INFO] [stdout] 898 | 0x7e => { (self.mov(A, M) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:899:23 [INFO] [stdout] | [INFO] [stdout] 899 | 0x7f => { (self.mov(A, A) )}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:992:23 [INFO] [stdout] | [INFO] [stdout] 992 | 0xc4 => { (self.cnz() )}, // if NZ CALL addr [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:993:23 [INFO] [stdout] | [INFO] [stdout] 993 | 0xc5 => { (self.push(BC) )}, // PUSH B [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:994:23 [INFO] [stdout] | [INFO] [stdout] 994 | 0xc6 => { (self.adi() )}, // ADI (add immediate to acc) [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:998:23 [INFO] [stdout] | [INFO] [stdout] 998 | 0xc8 => { (self.rz() )}, // If Z RET [INFO] [stdout] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1000:23 [INFO] [stdout] | [INFO] [stdout] 1000 | 0xca => { (self.jz() )}, // JZ addr [INFO] [stdout] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1002:23 [INFO] [stdout] | [INFO] [stdout] 1002 | 0xcc => { (self.cz() )}, // if Z CALL addr [INFO] [stdout] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1025:23 [INFO] [stdout] | [INFO] [stdout] 1025 | 0xce => { (self.aci() )}, // ACI (add immediate byte & carry to acc) [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1026:23 [INFO] [stdout] | [INFO] [stdout] 1026 | 0xcf => { (self.rst(0x8) )}, // CALL $8 [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1029:23 [INFO] [stdout] | [INFO] [stdout] 1029 | 0xd0 => { (self.rnc() )}, // if !C RET [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1030:23 [INFO] [stdout] | [INFO] [stdout] 1030 | 0xd1 => { (self.pop(DE) )}, // POP D [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1031:23 [INFO] [stdout] | [INFO] [stdout] 1031 | 0xd2 => { (self.jnc() )}, // JNC addr [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1033:23 [INFO] [stdout] | [INFO] [stdout] 1033 | 0xd4 => { (self.cnc() )}, // if !C CALL addr [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1034:23 [INFO] [stdout] | [INFO] [stdout] 1034 | 0xd5 => { (self.push(DE) )}, // PUSH D [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1035:23 [INFO] [stdout] | [INFO] [stdout] 1035 | 0xd6 => { (self.sui() )}, // subtract immediate byte from acc & set all flags [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1036:23 [INFO] [stdout] | [INFO] [stdout] 1036 | 0xd7 => { (self.rst(0x10) )}, // CALL $18 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1039:23 [INFO] [stdout] | [INFO] [stdout] 1039 | 0xd8 => { (self.rc() )}, // if C RET [INFO] [stdout] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1041:23 [INFO] [stdout] | [INFO] [stdout] 1041 | 0xda => { (self.jc() )}, // if C jmp addr [INFO] [stdout] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1043:23 [INFO] [stdout] | [INFO] [stdout] 1043 | 0xdc => { (self.cc() )}, // if C CALL addr [INFO] [stdout] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1045:23 [INFO] [stdout] | [INFO] [stdout] 1045 | 0xde => { (self.sbi() )}, // sutract immediate byte & carry from acc & set all flags [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1046:23 [INFO] [stdout] | [INFO] [stdout] 1046 | 0xdf => { (self.rst(0x18) )}, // CALL $18 (??) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1049:23 [INFO] [stdout] | [INFO] [stdout] 1049 | 0xe0 => { (self.rpo() )}, // if PO RET [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1050:23 [INFO] [stdout] | [INFO] [stdout] 1050 | 0xe1 => { (self.pop(HL) )}, // POP H [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1051:23 [INFO] [stdout] | [INFO] [stdout] 1051 | 0xe2 => { (self.jpo() )}, // JPO addr [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1052:23 [INFO] [stdout] | [INFO] [stdout] 1052 | 0xe3 => { (self.xthl() )}, // XTHL [INFO] [stdout] | ^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1053:23 [INFO] [stdout] | [INFO] [stdout] 1053 | 0xe4 => { (self.cpo() )}, // if PO call addr [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1054:23 [INFO] [stdout] | [INFO] [stdout] 1054 | 0xe5 => { (self.push(HL) )}, // PUSH H [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1055:23 [INFO] [stdout] | [INFO] [stdout] 1055 | 0xe6 => { (self.ani() )}, // bitwise AND acc with immediate byte & set flags [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1056:23 [INFO] [stdout] | [INFO] [stdout] 1056 | 0xe7 => { (self.rst(0x20) )}, // CALL $20 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1059:23 [INFO] [stdout] | [INFO] [stdout] 1059 | 0xe8 => { (self.rpe() )}, // if PE RET [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1060:23 [INFO] [stdout] | [INFO] [stdout] 1060 | 0xe9 => { (self.pchl() )}, // PCHL [INFO] [stdout] | ^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1061:23 [INFO] [stdout] | [INFO] [stdout] 1061 | 0xea => { (self.jpe() )}, // if PE move immediate word to PC [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1062:23 [INFO] [stdout] | [INFO] [stdout] 1062 | 0xeb => { (self.xchg() )}, // XCHG [INFO] [stdout] | ^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1063:23 [INFO] [stdout] | [INFO] [stdout] 1063 | 0xec => { (self.cpe() )}, // if PE call addr [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1065:23 [INFO] [stdout] | [INFO] [stdout] 1065 | 0xee => { (self.xri() )}, // bitwise XOR immediate byte with acc and set flags [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1066:23 [INFO] [stdout] | [INFO] [stdout] 1066 | 0xef => { (self.rst(0x28) )}, // CALL $28 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1069:23 [INFO] [stdout] | [INFO] [stdout] 1069 | 0xf0 => { (self.rp() )}, // if P RET [INFO] [stdout] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1070:23 [INFO] [stdout] | [INFO] [stdout] 1070 | 0xf1 => { (self.pop(PSW) )}, // POP psw [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1071:23 [INFO] [stdout] | [INFO] [stdout] 1071 | 0xf2 => { (self.jp() )}, // if P jmp addr [INFO] [stdout] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1072:23 [INFO] [stdout] | [INFO] [stdout] 1072 | 0xf3 => { (self.di() )}, // DI (??) [INFO] [stdout] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1073:23 [INFO] [stdout] | [INFO] [stdout] 1073 | 0xf4 => { (self.cp() )}, // if P call addr [INFO] [stdout] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1074:23 [INFO] [stdout] | [INFO] [stdout] 1074 | 0xf5 => { (self.push(PSW) )}, // PUSH PSW [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1075:23 [INFO] [stdout] | [INFO] [stdout] 1075 | 0xf6 => { (self.ori() )}, // bitwise OR immediate byte with acc and set flags [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1076:23 [INFO] [stdout] | [INFO] [stdout] 1076 | 0xf7 => { (self.rst(0x30) )}, // CALL $30 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1079:23 [INFO] [stdout] | [INFO] [stdout] 1079 | 0xf8 => { (self.rm() )}, // if M, RET [INFO] [stdout] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1080:23 [INFO] [stdout] | [INFO] [stdout] 1080 | 0xf9 => { (self.sphl() )}, // SPHL [INFO] [stdout] | ^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1081:23 [INFO] [stdout] | [INFO] [stdout] 1081 | 0xfa => { (self.jm() )}, // if M jmp addr [INFO] [stdout] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1082:23 [INFO] [stdout] | [INFO] [stdout] 1082 | 0xfb => { (self.ei() )}, // EI (??) [INFO] [stdout] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1083:23 [INFO] [stdout] | [INFO] [stdout] 1083 | 0xfc => { (self.cm() )}, // if M call addr [INFO] [stdout] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1085:23 [INFO] [stdout] | [INFO] [stdout] 1085 | 0xfe => { (self.cpi() )}, // compare acc to immediate byte & set flags [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/i8080/cpu.rs:1086:23 [INFO] [stdout] | [INFO] [stdout] 1086 | 0xff => { (self.rst(0x38) )}, // CALL $38 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: linking with `cc` failed: exit code: 1 [INFO] [stdout] | [INFO] [stdout] = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-L" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.0.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.1.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.10.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.11.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.12.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.13.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.14.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.15.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.2.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.3.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.4.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.5.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.6.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.7.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.8.rcgu.o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.rust_8080.52luihmo-cgu.9.rcgu.o" "-o" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109" "/opt/rustwide/target/debug/deps/rust_8080-2bbad0ac3fd0c109.1hzvbsy5dhh4ixne.rcgu.o" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-nodefaultlibs" "-L" "/opt/rustwide/target/debug/deps" "-L" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/opt/rustwide/target/debug/deps/libsdl2-d0ea9195536f786b.rlib" "/opt/rustwide/target/debug/deps/librand-a94bc4032d708dbe.rlib" "/opt/rustwide/target/debug/deps/librand_xorshift-3611bc5d61c3f74c.rlib" "/opt/rustwide/target/debug/deps/librand_pcg-0040e79fd09e1f18.rlib" "/opt/rustwide/target/debug/deps/librand_hc-1b8885716260aa60.rlib" "/opt/rustwide/target/debug/deps/librand_chacha-060ee4d7f6d8693e.rlib" "/opt/rustwide/target/debug/deps/librand_isaac-47553c89822b504a.rlib" "/opt/rustwide/target/debug/deps/librand_core-ee1ffb7b5dda89a8.rlib" "/opt/rustwide/target/debug/deps/librand_os-6cfe2a3e4f69467b.rlib" "/opt/rustwide/target/debug/deps/librand_jitter-72bd4b97e9cc301b.rlib" "/opt/rustwide/target/debug/deps/librand_core-e518367578511208.rlib" "/opt/rustwide/target/debug/deps/libc_vec-b8d9767c15240015.rlib" "/opt/rustwide/target/debug/deps/libsdl2_sys-2b4845d89c36832c.rlib" "/opt/rustwide/target/debug/deps/libbitflags-02fffe573fe5be1a.rlib" "/opt/rustwide/target/debug/deps/liblazy_static-660ab907323d6aba.rlib" "/opt/rustwide/target/debug/deps/liblibc-5dae16be1296b8a9.rlib" "/opt/rustwide/target/debug/deps/libnum-01efa19f432e2c7b.rlib" "/opt/rustwide/target/debug/deps/libnum_iter-ceef35c2f444e556.rlib" "/opt/rustwide/target/debug/deps/libnum_integer-be4dc14e180bcb02.rlib" "/opt/rustwide/target/debug/deps/libnum_traits-309940d264f7a1ab.rlib" "-Wl,--start-group" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-8bb11f807a7b6b4c.rlib" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-ca8087507780d964.rlib" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-259c92b387c1c166.rlib" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-16e0a2fbbb8e14b3.rlib" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace-8a1651b8e23d2aaf.rlib" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace_sys-23bdd98b0574083e.rlib" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-855a92055ec33e2e.rlib" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-24c70dd44fbacdfb.rlib" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-b326273841bae587.rlib" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-ac3c1f0e16507051.rlib" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-a5729542b65954aa.rlib" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-09bd1119ab1cad7d.rlib" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-9a787681bfbeaf61.rlib" "-Wl,--end-group" "/opt/rustwide/rustup-home/toolchains/1.45.2-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-5a0398ee67f74664.rlib" "-Wl,-Bdynamic" "-lSDL2" "-lSDL2_gfx" "-lutil" "-lutil" "-ldl" "-lrt" "-lpthread" "-lgcc_s" "-lc" "-lm" "-lrt" "-lpthread" "-lutil" "-ldl" "-lutil" [INFO] [stdout] = note: /usr/bin/ld: cannot find -lSDL2_gfx [INFO] [stdout] collect2: error: ld returned 1 exit status [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error; 116 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `rust-8080`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `Command { std: "docker" "inspect" "9dc983d313f75ae55d1e96c58c5011880d551762ffc336a3ea3aa08ddaacf8a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9dc983d313f75ae55d1e96c58c5011880d551762ffc336a3ea3aa08ddaacf8a6", kill_on_drop: false }` [INFO] [stdout] 9dc983d313f75ae55d1e96c58c5011880d551762ffc336a3ea3aa08ddaacf8a6