[INFO] cloning repository https://github.com/renanferr/rust_nes [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/renanferr/rust_nes" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frenanferr%2Frust_nes", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frenanferr%2Frust_nes'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d3759881b89318921aecfaf2e794c740cd14e2c9 [INFO] checking renanferr/rust_nes against master#385fa9d845dd326c6bbfd58c22244215e431948a for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frenanferr%2Frust_nes" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/renanferr/rust_nes on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/renanferr/rust_nes [INFO] finished tweaking git repo https://github.com/renanferr/rust_nes [INFO] tweaked toml for git repo https://github.com/renanferr/rust_nes written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/renanferr/rust_nes already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded pixel_engine v0.0.9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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" "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" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 77c3de538510db8e83619daac6abfb752a58040e01b44b7eec26faeeea6e4650 [INFO] running `Command { std: "docker" "start" "-a" "77c3de538510db8e83619daac6abfb752a58040e01b44b7eec26faeeea6e4650", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "77c3de538510db8e83619daac6abfb752a58040e01b44b7eec26faeeea6e4650", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "77c3de538510db8e83619daac6abfb752a58040e01b44b7eec26faeeea6e4650", kill_on_drop: false }` [INFO] [stdout] 77c3de538510db8e83619daac6abfb752a58040e01b44b7eec26faeeea6e4650 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 08c6956eceb838d24bec9f7ae7a2113c85cfd53bdd600aed40bf63c09390e75f [INFO] running `Command { std: "docker" "start" "-a" "08c6956eceb838d24bec9f7ae7a2113c85cfd53bdd600aed40bf63c09390e75f", kill_on_drop: false }` [INFO] [stderr] Compiling getrandom v0.1.12 [INFO] [stderr] Checking ppv-lite86 v0.2.5 [INFO] [stderr] Checking c2-chacha v0.2.2 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking rand_chacha v0.2.1 [INFO] [stderr] Checking rand v0.7.2 [INFO] [stderr] Checking pixel_engine v0.0.9 [INFO] [stderr] Checking rust_nes v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/nes/cpu.rs:120:59 [INFO] [stdout] | [INFO] [stdout] 120 | let lo: u16 = self.read(self.addr_abs + 0).into();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/nes/cpu.rs:121:59 [INFO] [stdout] | [INFO] [stdout] 121 | let hi: u16 = self.read(self.addr_abs + 1).into();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::cpu::CPU6502` [INFO] [stdout] --> src/nes/bus.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::cpu::CPU6502; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/nes/cpu.rs:120:59 [INFO] [stdout] | [INFO] [stdout] 120 | let lo: u16 = self.read(self.addr_abs + 0).into();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/nes/cpu.rs:121:59 [INFO] [stdout] | [INFO] [stdout] 121 | let hi: u16 = self.read(self.addr_abs + 1).into();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::cpu::CPU6502` [INFO] [stdout] --> src/nes/bus.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::cpu::CPU6502; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b_read_only` [INFO] [stdout] --> src/nes/bus.rs:23:35 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn read(&self, addr: u16, b_read_only: bool) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b_read_only` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Flags` is never used [INFO] [stdout] --> src/nes/cpu.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | trait Flags { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Flags6502` is never constructed [INFO] [stdout] --> src/nes/cpu.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | struct Flags6502; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `INSTRUCTION` is never constructed [INFO] [stdout] --> src/nes/cpu.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | struct INSTRUCTION { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/nes/cpu.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 58 | pub struct CPU6502 { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 59 | a: u8, // accumulator register [INFO] [stdout] | ^ [INFO] [stdout] 60 | x: u8, // x register [INFO] [stdout] | ^ [INFO] [stdout] 61 | y: u8, // y register [INFO] [stdout] | ^ [INFO] [stdout] 62 | stkp: u8, // stack pointer [INFO] [stdout] | ^^^^ [INFO] [stdout] 63 | pc: u16, // program counter [INFO] [stdout] | ^^ [INFO] [stdout] 64 | status: u8, // status register [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 65 | [INFO] [stdout] 66 | fetched: u8, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 67 | temp: u16, [INFO] [stdout] | ^^^^ [INFO] [stdout] 68 | addr_abs: u16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 69 | addr_rel: u16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 70 | opcode: u8, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 71 | cycles: u8, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 72 | clock_count: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/nes/cpu.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 80 | impl CPU6502 { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn connect_bus(&mut self, b: Bus) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 142 | pub fn get_flag(&self, f: u8) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn set_flag(&mut self, f: u8, v: bool) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn irq(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn nmi(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | pub fn clock(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:18:30 [INFO] [stdout] | [INFO] [stdout] 18 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:24:30 [INFO] [stdout] | [INFO] [stdout] 24 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b_read_only` [INFO] [stdout] --> src/nes/bus.rs:23:35 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn read(&self, addr: u16, b_read_only: bool) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b_read_only` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Flags` is never used [INFO] [stdout] --> src/nes/cpu.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | trait Flags { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Flags6502` is never constructed [INFO] [stdout] --> src/nes/cpu.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | struct Flags6502; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `INSTRUCTION` is never constructed [INFO] [stdout] --> src/nes/cpu.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | struct INSTRUCTION { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/nes/cpu.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 58 | pub struct CPU6502 { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 59 | a: u8, // accumulator register [INFO] [stdout] | ^ [INFO] [stdout] 60 | x: u8, // x register [INFO] [stdout] | ^ [INFO] [stdout] 61 | y: u8, // y register [INFO] [stdout] | ^ [INFO] [stdout] 62 | stkp: u8, // stack pointer [INFO] [stdout] | ^^^^ [INFO] [stdout] 63 | pc: u16, // program counter [INFO] [stdout] | ^^ [INFO] [stdout] 64 | status: u8, // status register [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 65 | [INFO] [stdout] 66 | fetched: u8, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 67 | temp: u16, [INFO] [stdout] | ^^^^ [INFO] [stdout] 68 | addr_abs: u16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 69 | addr_rel: u16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 70 | opcode: u8, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 71 | cycles: u8, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 72 | clock_count: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/nes/cpu.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 80 | impl CPU6502 { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn connect_bus(&mut self, b: Bus) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 142 | pub fn get_flag(&self, f: u8) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn set_flag(&mut self, f: u8, v: bool) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn irq(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn nmi(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | pub fn clock(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:18:30 [INFO] [stdout] | [INFO] [stdout] 18 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:24:30 [INFO] [stdout] | [INFO] [stdout] 24 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.57s [INFO] running `Command { std: "docker" "inspect" "08c6956eceb838d24bec9f7ae7a2113c85cfd53bdd600aed40bf63c09390e75f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "08c6956eceb838d24bec9f7ae7a2113c85cfd53bdd600aed40bf63c09390e75f", kill_on_drop: false }` [INFO] [stdout] 08c6956eceb838d24bec9f7ae7a2113c85cfd53bdd600aed40bf63c09390e75f [INFO] checking renanferr/rust_nes against try#645bb72776a6a56a1a8f52631a44bd082b2ba509 for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frenanferr%2Frust_nes" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/renanferr/rust_nes on toolchain 645bb72776a6a56a1a8f52631a44bd082b2ba509 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/renanferr/rust_nes [INFO] finished tweaking git repo https://github.com/renanferr/rust_nes [INFO] tweaked toml for git repo https://github.com/renanferr/rust_nes written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/renanferr/rust_nes already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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" "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" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0746a6f43593b24f3e23a4bb2e8ed1c4d556042f74cb205846a686c12d0118b6 [INFO] running `Command { std: "docker" "start" "-a" "0746a6f43593b24f3e23a4bb2e8ed1c4d556042f74cb205846a686c12d0118b6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0746a6f43593b24f3e23a4bb2e8ed1c4d556042f74cb205846a686c12d0118b6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0746a6f43593b24f3e23a4bb2e8ed1c4d556042f74cb205846a686c12d0118b6", kill_on_drop: false }` [INFO] [stdout] 0746a6f43593b24f3e23a4bb2e8ed1c4d556042f74cb205846a686c12d0118b6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 90f31f75fb79a40d83aac5ac2ab5f67d6cae430c22b04acc9d1079be3176c953 [INFO] running `Command { std: "docker" "start" "-a" "90f31f75fb79a40d83aac5ac2ab5f67d6cae430c22b04acc9d1079be3176c953", kill_on_drop: false }` [INFO] [stderr] Compiling getrandom v0.1.12 [INFO] [stderr] Checking ppv-lite86 v0.2.5 [INFO] [stderr] Checking c2-chacha v0.2.2 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking rand_chacha v0.2.1 [INFO] [stderr] Checking rand v0.7.2 [INFO] [stderr] Checking pixel_engine v0.0.9 [INFO] [stderr] Checking rust_nes v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/nes/cpu.rs:120:59 [INFO] [stdout] | [INFO] [stdout] 120 | let lo: u16 = self.read(self.addr_abs + 0).into();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/nes/cpu.rs:121:59 [INFO] [stdout] | [INFO] [stdout] 121 | let hi: u16 = self.read(self.addr_abs + 1).into();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::cpu::CPU6502` [INFO] [stdout] --> src/nes/bus.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::cpu::CPU6502; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/nes/cpu.rs:120:59 [INFO] [stdout] | [INFO] [stdout] 120 | let lo: u16 = self.read(self.addr_abs + 0).into();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/nes/cpu.rs:121:59 [INFO] [stdout] | [INFO] [stdout] 121 | let hi: u16 = self.read(self.addr_abs + 1).into();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::cpu::CPU6502` [INFO] [stdout] --> src/nes/bus.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::cpu::CPU6502; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b_read_only` [INFO] [stdout] --> src/nes/bus.rs:23:35 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn read(&self, addr: u16, b_read_only: bool) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b_read_only` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Flags` is never used [INFO] [stdout] --> src/nes/cpu.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | trait Flags { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Flags6502` is never constructed [INFO] [stdout] --> src/nes/cpu.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | struct Flags6502; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `INSTRUCTION` is never constructed [INFO] [stdout] --> src/nes/cpu.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | struct INSTRUCTION { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/nes/cpu.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 58 | pub struct CPU6502 { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 59 | a: u8, // accumulator register [INFO] [stdout] | ^ [INFO] [stdout] 60 | x: u8, // x register [INFO] [stdout] | ^ [INFO] [stdout] 61 | y: u8, // y register [INFO] [stdout] | ^ [INFO] [stdout] 62 | stkp: u8, // stack pointer [INFO] [stdout] | ^^^^ [INFO] [stdout] 63 | pc: u16, // program counter [INFO] [stdout] | ^^ [INFO] [stdout] 64 | status: u8, // status register [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 65 | [INFO] [stdout] 66 | fetched: u8, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 67 | temp: u16, [INFO] [stdout] | ^^^^ [INFO] [stdout] 68 | addr_abs: u16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 69 | addr_rel: u16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 70 | opcode: u8, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 71 | cycles: u8, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 72 | clock_count: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/nes/cpu.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 80 | impl CPU6502 { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn connect_bus(&mut self, b: Bus) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 142 | pub fn get_flag(&self, f: u8) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn set_flag(&mut self, f: u8, v: bool) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn irq(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn nmi(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | pub fn clock(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:18:30 [INFO] [stdout] | [INFO] [stdout] 18 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:24:30 [INFO] [stdout] | [INFO] [stdout] 24 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b_read_only` [INFO] [stdout] --> src/nes/bus.rs:23:35 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn read(&self, addr: u16, b_read_only: bool) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b_read_only` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Flags` is never used [INFO] [stdout] --> src/nes/cpu.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | trait Flags { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Flags6502` is never constructed [INFO] [stdout] --> src/nes/cpu.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | struct Flags6502; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `INSTRUCTION` is never constructed [INFO] [stdout] --> src/nes/cpu.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | struct INSTRUCTION { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/nes/cpu.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 58 | pub struct CPU6502 { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 59 | a: u8, // accumulator register [INFO] [stdout] | ^ [INFO] [stdout] 60 | x: u8, // x register [INFO] [stdout] | ^ [INFO] [stdout] 61 | y: u8, // y register [INFO] [stdout] | ^ [INFO] [stdout] 62 | stkp: u8, // stack pointer [INFO] [stdout] | ^^^^ [INFO] [stdout] 63 | pc: u16, // program counter [INFO] [stdout] | ^^ [INFO] [stdout] 64 | status: u8, // status register [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 65 | [INFO] [stdout] 66 | fetched: u8, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 67 | temp: u16, [INFO] [stdout] | ^^^^ [INFO] [stdout] 68 | addr_abs: u16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 69 | addr_rel: u16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 70 | opcode: u8, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 71 | cycles: u8, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 72 | clock_count: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/nes/cpu.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 80 | impl CPU6502 { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn connect_bus(&mut self, b: Bus) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 142 | pub fn get_flag(&self, f: u8) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn set_flag(&mut self, f: u8, v: bool) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn irq(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn nmi(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | pub fn clock(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:18:30 [INFO] [stdout] | [INFO] [stdout] 18 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/nes/bus.rs:24:30 [INFO] [stdout] | [INFO] [stdout] 24 | if addr >= 0x0000 && addr <= 0xFFFF { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.51s [INFO] running `Command { std: "docker" "inspect" "90f31f75fb79a40d83aac5ac2ab5f67d6cae430c22b04acc9d1079be3176c953", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "90f31f75fb79a40d83aac5ac2ab5f67d6cae430c22b04acc9d1079be3176c953", kill_on_drop: false }` [INFO] [stdout] 90f31f75fb79a40d83aac5ac2ab5f67d6cae430c22b04acc9d1079be3176c953