[INFO] cloning repository https://github.com/yamash723/nes-hello-world-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/yamash723/nes-hello-world-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyamash723%2Fnes-hello-world-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyamash723%2Fnes-hello-world-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a418fe07e8273b33eae1824bfbf4f68b29e001dc [INFO] building yamash723/nes-hello-world-rust against master#11663cd3bfefef7d34e8f0892c250bf698049392+rustflags=-Dtail-expr-drop-order for pr-134523 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyamash723%2Fnes-hello-world-rust" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/yamash723/nes-hello-world-rust on toolchain 11663cd3bfefef7d34e8f0892c250bf698049392 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/yamash723/nes-hello-world-rust [INFO] finished tweaking git repo https://github.com/yamash723/nes-hello-world-rust [INFO] tweaked toml for git repo https://github.com/yamash723/nes-hello-world-rust written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/yamash723/nes-hello-world-rust 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" "+11663cd3bfefef7d34e8f0892c250bf698049392" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 691e67801fd6071679bfb4eba4b489f7300347adccfa85db4dcabffbfc87c654 [INFO] running `Command { std: "docker" "start" "-a" "691e67801fd6071679bfb4eba4b489f7300347adccfa85db4dcabffbfc87c654", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "691e67801fd6071679bfb4eba4b489f7300347adccfa85db4dcabffbfc87c654", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "691e67801fd6071679bfb4eba4b489f7300347adccfa85db4dcabffbfc87c654", kill_on_drop: false }` [INFO] [stdout] 691e67801fd6071679bfb4eba4b489f7300347adccfa85db4dcabffbfc87c654 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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 -Dtail-expr-drop-order" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1a282b8bc37854050677076a86cb7a5f5da7e244657c50d94ba7b4d40fa9b2c9 [INFO] running `Command { std: "docker" "start" "-a" "1a282b8bc37854050677076a86cb7a5f5da7e244657c50d94ba7b4d40fa9b2c9", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling num-traits v0.2.5 [INFO] [stderr] Compiling num-integer v0.1.39 [INFO] [stderr] Compiling cfg-if v0.1.4 [INFO] [stderr] Compiling num-iter v0.1.37 [INFO] [stderr] Compiling libc v0.2.42 [INFO] [stderr] Compiling nes-hello-world-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling bitflags v0.7.0 [INFO] [stderr] Compiling lazy_static v0.2.11 [INFO] [stderr] Compiling lazy_static v1.0.0 [INFO] [stderr] Compiling sdl2-sys v0.31.0 [INFO] [stderr] Compiling arrayref v0.3.4 [INFO] [stderr] Compiling rand v0.4.2 [INFO] [stderr] Compiling rand v0.3.22 [INFO] [stderr] Compiling num v0.1.42 [INFO] [stderr] Compiling sdl2 v0.31.0 [INFO] [stdout] warning: unused import: `nes::ram::Ram` [INFO] [stdout] --> src/nes/ppu/tile.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use nes::ram::Ram; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nes::ram::Ram` [INFO] [stdout] --> src/nes/ppu/registers/ppu_data.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use nes::ram::Ram; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nes::ram::Ram` [INFO] [stdout] --> src/nes/ppu/registers/mod.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use nes::ram::Ram; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred [INFO] [stdout] --> src/nes/cpu/opecode.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | / lazy_static! { [INFO] [stdout] 42 | | pub static ref OPECODE_MAP: HashMap = { [INFO] [stdout] 43 | | let cycles: Vec = [INFO] [stdout] 44 | | vec![7, 6, 2, 8, 3, 3, 5, 5, 3, 2, 2, 2, 4, 4, 6, 6, 2, 5, 2, 8, 4, 4, 6, 6, 2, 4, 2, 7, [INFO] [stdout] ... | [INFO] [stdout] 89 | | }; [INFO] [stdout] 90 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `exclusive_range_pattern` has been stable since 1.80.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/main.rs:1:12 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(exclusive_range_pattern)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/cpu/bus.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | 0x0000..0x07FF => self.wram.read(addr), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `2047_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `0_u16..=2047_u16` [INFO] [stdout] 31 | 0x0800..0x1FFF => self.wram.read(addr - 0x0800), [INFO] [stdout] | -------------- this could appear to continue range `0_u16..2047_u16`, but `2047_u16` isn't matched by either of them [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_contiguous_range_endpoints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/cpu/bus.rs:31:13 [INFO] [stdout] | [INFO] [stdout] 31 | 0x0800..0x1FFF => self.wram.read(addr - 0x0800), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `8191_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `2048_u16..=8191_u16` [INFO] [stdout] 32 | 0x2000..0x2007 => self.ppu.read(addr), [INFO] [stdout] | -------------- this could appear to continue range `2048_u16..8191_u16`, but `8191_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/cpu/bus.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | 0x2000..0x2007 => self.ppu.read(addr), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `8199_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `8192_u16..=8199_u16` [INFO] [stdout] 33 | 0x2008..0x3FFF => self.ppu.read(addr - 0x2008), [INFO] [stdout] | -------------- this could appear to continue range `8192_u16..8199_u16`, but `8199_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/cpu/bus.rs:37:13 [INFO] [stdout] | [INFO] [stdout] 37 | 0x8000..0xBFFF => { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `49151_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `32768_u16..=49151_u16` [INFO] [stdout] ... [INFO] [stdout] 45 | 0xC000..0xFFFF => self.cassette.read_program_rom(addr - 0x8000), [INFO] [stdout] | -------------- this could appear to continue range `32768_u16..49151_u16`, but `49151_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: exclusive range missing `u16::MAX` [INFO] [stdout] --> src/nes/cpu/bus.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 45 | 0xC000..0xFFFF => self.cassette.read_program_rom(addr - 0x8000), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `u16::MAX` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `49152_u16..=u16::MAX` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/cpu/bus.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | 0x0000..0x07FF => self.wram.write(addr, data), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `2047_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `0_u16..=2047_u16` [INFO] [stdout] 60 | 0x0800..0x1FFF => self.wram.write(addr - 0x0800, data), [INFO] [stdout] | -------------- this could appear to continue range `0_u16..2047_u16`, but `2047_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/cpu/bus.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | 0x0800..0x1FFF => self.wram.write(addr - 0x0800, data), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `8191_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `2048_u16..=8191_u16` [INFO] [stdout] 61 | 0x2000..0x3FFF => self.ppu.write(addr - 0x2000, data), [INFO] [stdout] | -------------- this could appear to continue range `2048_u16..8191_u16`, but `8191_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/ppu/registers/ppu_data.rs:15:13 [INFO] [stdout] | [INFO] [stdout] 15 | 0x0000..0x1FFF => MapType::PatternTable, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `8191_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `0_u16..=8191_u16` [INFO] [stdout] 16 | 0x2000..0x2FFF => MapType::Vram, [INFO] [stdout] | -------------- this could appear to continue range `0_u16..8191_u16`, but `8191_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/ppu/registers/ppu_data.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | 0x2000..0x2FFF => MapType::Vram, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `12287_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `8192_u16..=12287_u16` [INFO] [stdout] 17 | 0x3000..0x3EFF => MapType::VramMirror, [INFO] [stdout] | -------------- this could appear to continue range `8192_u16..12287_u16`, but `12287_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/ppu/registers/ppu_data.rs:17:13 [INFO] [stdout] | [INFO] [stdout] 17 | 0x3000..0x3EFF => MapType::VramMirror, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `16127_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `12288_u16..=16127_u16` [INFO] [stdout] 18 | 0x3F00..0x3FFF => MapType::Palette, [INFO] [stdout] | -------------- this could appear to continue range `12288_u16..16127_u16`, but `16127_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `read_character_rom` is never used [INFO] [stdout] --> src/nes/cassette/mod.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 66 | pub trait NesCassette { [INFO] [stdout] | ----------- method in this trait [INFO] [stdout] 67 | fn read_program_rom(&self, addr: u16) -> u8; [INFO] [stdout] 68 | fn read_character_rom(&self, addr: u16) -> u8; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/nes/cassette/mod.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | IoError(io::Error), [INFO] [stdout] | ------- ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `CassetteInitializeError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 89 | IoError(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_bit` and `set_by_bit` are never used [INFO] [stdout] --> src/nes/cpu/registers.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 55 | impl Status { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 56 | pub fn to_bit(&self) -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn set_by_bit(&mut self, status: u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Accumulator` is never constructed [INFO] [stdout] --> src/nes/cpu/opecode.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub enum AddressingMode { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] 12 | Implied, [INFO] [stdout] 13 | Accumulator, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AddressingMode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `read` is never used [INFO] [stdout] --> src/nes/ppu/registers/ppu_ctrl.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl PpuCtrl { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn read(&self) -> u8 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `read` is never used [INFO] [stdout] --> src/nes/ppu/registers/ppu_mask.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl PpuMask { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn read(self) -> u8 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Sprite` is never constructed [INFO] [stdout] --> src/nes/ppu/palette_ram.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum PaletteType { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] 6 | Sprite, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.36s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.7.0 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "1a282b8bc37854050677076a86cb7a5f5da7e244657c50d94ba7b4d40fa9b2c9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1a282b8bc37854050677076a86cb7a5f5da7e244657c50d94ba7b4d40fa9b2c9", kill_on_drop: false }` [INFO] [stdout] 1a282b8bc37854050677076a86cb7a5f5da7e244657c50d94ba7b4d40fa9b2c9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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 -Dtail-expr-drop-order" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 72a166af0674aa1f5e3b386397e46ffddbd4a4fe734a379797ad9067436541e8 [INFO] running `Command { std: "docker" "start" "-a" "72a166af0674aa1f5e3b386397e46ffddbd4a4fe734a379797ad9067436541e8", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling nes-hello-world-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred [INFO] [stdout] --> src/nes/cpu/opecode.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | / lazy_static! { [INFO] [stdout] 42 | | pub static ref OPECODE_MAP: HashMap = { [INFO] [stdout] 43 | | let cycles: Vec = [INFO] [stdout] 44 | | vec![7, 6, 2, 8, 3, 3, 5, 5, 3, 2, 2, 2, 4, 4, 6, 6, 2, 5, 2, 8, 4, 4, 6, 6, 2, 4, 2, 7, [INFO] [stdout] ... | [INFO] [stdout] 89 | | }; [INFO] [stdout] 90 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `exclusive_range_pattern` has been stable since 1.80.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/main.rs:1:12 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(exclusive_range_pattern)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/cpu/bus.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | 0x0000..0x07FF => self.wram.read(addr), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `2047_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `0_u16..=2047_u16` [INFO] [stdout] 31 | 0x0800..0x1FFF => self.wram.read(addr - 0x0800), [INFO] [stdout] | -------------- this could appear to continue range `0_u16..2047_u16`, but `2047_u16` isn't matched by either of them [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_contiguous_range_endpoints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/cpu/bus.rs:31:13 [INFO] [stdout] | [INFO] [stdout] 31 | 0x0800..0x1FFF => self.wram.read(addr - 0x0800), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `8191_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `2048_u16..=8191_u16` [INFO] [stdout] 32 | 0x2000..0x2007 => self.ppu.read(addr), [INFO] [stdout] | -------------- this could appear to continue range `2048_u16..8191_u16`, but `8191_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/cpu/bus.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | 0x2000..0x2007 => self.ppu.read(addr), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `8199_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `8192_u16..=8199_u16` [INFO] [stdout] 33 | 0x2008..0x3FFF => self.ppu.read(addr - 0x2008), [INFO] [stdout] | -------------- this could appear to continue range `8192_u16..8199_u16`, but `8199_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/cpu/bus.rs:37:13 [INFO] [stdout] | [INFO] [stdout] 37 | 0x8000..0xBFFF => { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `49151_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `32768_u16..=49151_u16` [INFO] [stdout] ... [INFO] [stdout] 45 | 0xC000..0xFFFF => self.cassette.read_program_rom(addr - 0x8000), [INFO] [stdout] | -------------- this could appear to continue range `32768_u16..49151_u16`, but `49151_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: exclusive range missing `u16::MAX` [INFO] [stdout] --> src/nes/cpu/bus.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 45 | 0xC000..0xFFFF => self.cassette.read_program_rom(addr - 0x8000), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `u16::MAX` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `49152_u16..=u16::MAX` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/cpu/bus.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | 0x0000..0x07FF => self.wram.write(addr, data), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `2047_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `0_u16..=2047_u16` [INFO] [stdout] 60 | 0x0800..0x1FFF => self.wram.write(addr - 0x0800, data), [INFO] [stdout] | -------------- this could appear to continue range `0_u16..2047_u16`, but `2047_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/cpu/bus.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | 0x0800..0x1FFF => self.wram.write(addr - 0x0800, data), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `8191_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `2048_u16..=8191_u16` [INFO] [stdout] 61 | 0x2000..0x3FFF => self.ppu.write(addr - 0x2000, data), [INFO] [stdout] | -------------- this could appear to continue range `2048_u16..8191_u16`, but `8191_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/ppu/registers/ppu_data.rs:15:13 [INFO] [stdout] | [INFO] [stdout] 15 | 0x0000..0x1FFF => MapType::PatternTable, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `8191_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `0_u16..=8191_u16` [INFO] [stdout] 16 | 0x2000..0x2FFF => MapType::Vram, [INFO] [stdout] | -------------- this could appear to continue range `0_u16..8191_u16`, but `8191_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/ppu/registers/ppu_data.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | 0x2000..0x2FFF => MapType::Vram, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `12287_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `8192_u16..=12287_u16` [INFO] [stdout] 17 | 0x3000..0x3EFF => MapType::VramMirror, [INFO] [stdout] | -------------- this could appear to continue range `8192_u16..12287_u16`, but `12287_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple ranges are one apart [INFO] [stdout] --> src/nes/ppu/registers/ppu_data.rs:17:13 [INFO] [stdout] | [INFO] [stdout] 17 | 0x3000..0x3EFF => MapType::VramMirror, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this range doesn't match `16127_u16` because `..` is an exclusive range [INFO] [stdout] | help: use an inclusive range instead: `12288_u16..=16127_u16` [INFO] [stdout] 18 | 0x3F00..0x3FFF => MapType::Palette, [INFO] [stdout] | -------------- this could appear to continue range `12288_u16..16127_u16`, but `16127_u16` isn't matched by either of them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `read_character_rom` is never used [INFO] [stdout] --> src/nes/cassette/mod.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 66 | pub trait NesCassette { [INFO] [stdout] | ----------- method in this trait [INFO] [stdout] 67 | fn read_program_rom(&self, addr: u16) -> u8; [INFO] [stdout] 68 | fn read_character_rom(&self, addr: u16) -> u8; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/nes/cassette/mod.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | IoError(io::Error), [INFO] [stdout] | ------- ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `CassetteInitializeError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 89 | IoError(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Accumulator` is never constructed [INFO] [stdout] --> src/nes/cpu/opecode.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub enum AddressingMode { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] 12 | Implied, [INFO] [stdout] 13 | Accumulator, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AddressingMode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.91s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.7.0 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "72a166af0674aa1f5e3b386397e46ffddbd4a4fe734a379797ad9067436541e8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "72a166af0674aa1f5e3b386397e46ffddbd4a4fe734a379797ad9067436541e8", kill_on_drop: false }` [INFO] [stdout] 72a166af0674aa1f5e3b386397e46ffddbd4a4fe734a379797ad9067436541e8