[INFO] updating cached repository https://github.com/Kanabenki/oxidegb [INFO] running `"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"` [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 1812c4f2ff897096eb99083f282dec847ecadd3d [INFO] testing Kanabenki/oxidegb against beta-2020-06-03 for beta-1.45-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKanabenki%2Foxidegb" "/workspace/builds/worker-5/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-5/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Kanabenki/oxidegb on toolchain beta-2020-06-03 [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/Kanabenki/oxidegb [INFO] finished tweaking git repo https://github.com/Kanabenki/oxidegb [INFO] tweaked toml for git repo https://github.com/Kanabenki/oxidegb written to /workspace/builds/worker-5/source/Cargo.toml [INFO] crate git repo https://github.com/Kanabenki/oxidegb already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "build" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 01bab36b79e1cf00c491ba4f5b81868835ca14e23780e555f5b9ca8872c05cac [INFO] running `"docker" "start" "-a" "01bab36b79e1cf00c491ba4f5b81868835ca14e23780e555f5b9ca8872c05cac"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling syn v0.15.34 [INFO] [stderr] Compiling sdl2-sys v0.32.6 [INFO] [stderr] Compiling num v0.1.42 [INFO] [stderr] Compiling sdl2 v0.32.2 [INFO] [stderr] Compiling num-derive v0.2.5 [INFO] [stderr] Compiling oxidegb v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/cpu.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/cpu.rs:205:28 [INFO] [stderr] | [INFO] [stderr] 205 | pub fn new(mapper: Box, bootrom: Option>) -> Self { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Duration` [INFO] [stderr] --> src/emulator.rs:5:17 [INFO] [stderr] | [INFO] [stderr] 5 | use std::time::{Duration, Instant}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/emulator.rs:21:24 [INFO] [stderr] | [INFO] [stderr] 21 | fn read_to_vec(r: &mut Read) -> Result, std::io::Error> { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/emulator.rs:31:21 [INFO] [stderr] | [INFO] [stderr] 31 | ) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: unused imports: `replace`, `swap` [INFO] [stderr] --> src/memory.rs:4:16 [INFO] [stderr] | [INFO] [stderr] 4 | use std::mem::{replace, swap}; [INFO] [stderr] | ^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:38:17 [INFO] [stderr] | [INFO] [stderr] 38 | mapper: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:47:28 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn new(mapper: Box, bootrom: Option>) -> Self { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:89:19 [INFO] [stderr] | [INFO] [stderr] 89 | 0x0000...0x00FF if self.bootrom.is_some() => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:92:19 [INFO] [stderr] | [INFO] [stderr] 92 | 0x0000...0x7FFF => self.mapper.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:93:19 [INFO] [stderr] | [INFO] [stderr] 93 | 0x8000...0x9FFF => self.ppu.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:94:19 [INFO] [stderr] | [INFO] [stderr] 94 | 0xA000...0xBFFF => 0, //ext_ram [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:95:19 [INFO] [stderr] | [INFO] [stderr] 95 | 0xC000...0xFDFF => self.ram.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:96:19 [INFO] [stderr] | [INFO] [stderr] 96 | 0xFE00...0xFE9F => self.ppu.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:97:19 [INFO] [stderr] | [INFO] [stderr] 97 | 0xFEA0...0xFEFF => 0, //unusable [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:98:19 [INFO] [stderr] | [INFO] [stderr] 98 | 0xFF00...0xFF3F => self.io.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:99:19 [INFO] [stderr] | [INFO] [stderr] 99 | 0xFF40...0xFF4B => self.ppu.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:100:19 [INFO] [stderr] | [INFO] [stderr] 100 | 0xFF4C...0xFF7F => 0, //unusable [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:101:19 [INFO] [stderr] | [INFO] [stderr] 101 | 0xFF80...0xFFFE => self.hram[(addr & 0x7F) as usize], [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:114:19 [INFO] [stderr] | [INFO] [stderr] 114 | 0x0000...0x00FF if self.bootrom.is_some() => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:117:19 [INFO] [stderr] | [INFO] [stderr] 117 | 0x0000...0x7FFF => self.mapper.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:118:19 [INFO] [stderr] | [INFO] [stderr] 118 | 0x8000...0x9FFF => self.ppu.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:119:19 [INFO] [stderr] | [INFO] [stderr] 119 | 0xA000...0xBFFF => (), //ext_ram [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:120:19 [INFO] [stderr] | [INFO] [stderr] 120 | 0xC000...0xFDFF => self.ram.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:121:19 [INFO] [stderr] | [INFO] [stderr] 121 | 0xFE00...0xFE9F => self.ppu.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:122:19 [INFO] [stderr] | [INFO] [stderr] 122 | 0xFEA0...0xFEFF => (), //unusable [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:123:19 [INFO] [stderr] | [INFO] [stderr] 123 | 0xFF00...0xFF3F => self.io.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:124:19 [INFO] [stderr] | [INFO] [stderr] 124 | 0xFF40...0xFF4B => self.ppu.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:126:19 [INFO] [stderr] | [INFO] [stderr] 126 | 0xFF4C...0xFF7F => (), //unusable [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:127:19 [INFO] [stderr] | [INFO] [stderr] 127 | 0xFF80...0xFFFE => self.hram[(addr & 0x7F) as usize] = val, [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::utils::nth_bit_set` [INFO] [stderr] --> src/ppu.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::utils::nth_bit_set; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:122:19 [INFO] [stderr] | [INFO] [stderr] 122 | 0x8000...0x9FFF if self.state != PpuState::PixTransfer => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:125:19 [INFO] [stderr] | [INFO] [stderr] 125 | 0xFE00...0xFE9F [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:130:19 [INFO] [stderr] | [INFO] [stderr] 130 | 0xFF40...0xFF4B => self.regs.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:137:19 [INFO] [stderr] | [INFO] [stderr] 137 | 0xFE00...0xFE9F [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:142:19 [INFO] [stderr] | [INFO] [stderr] 142 | 0xFF40...0xFF4B => self.regs.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:176:14 [INFO] [stderr] | [INFO] [stderr] 176 | 0...143 => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rom.rs:77:36 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn new_mapper(rom: Rom) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `handle_interrupt` [INFO] [stderr] --> src/cpu.rs:242:8 [INFO] [stderr] | [INFO] [stderr] 242 | fn handle_interrupt(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `curr_interrupt` [INFO] [stderr] --> src/memory.rs:67:12 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn curr_interrupt(&mut self) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `dma` [INFO] [stderr] --> src/ppu.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | dma: u8, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `obj_pal_1` [INFO] [stderr] --> src/ppu.rs:57:5 [INFO] [stderr] | [INFO] [stderr] 57 | obj_pal_1: u8, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `obj_pal_2` [INFO] [stderr] --> src/ppu.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | obj_pal_2: u8, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `win_y_pos` [INFO] [stderr] --> src/ppu.rs:59:5 [INFO] [stderr] | [INFO] [stderr] 59 | win_y_pos: u8, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `win_x_pos` [INFO] [stderr] --> src/ppu.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 60 | win_x_pos: u8, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/memory.rs:111:13 [INFO] [stderr] | [INFO] [stderr] 111 | stdout().flush(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 46 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 22.78s [INFO] running `"docker" "inspect" "01bab36b79e1cf00c491ba4f5b81868835ca14e23780e555f5b9ca8872c05cac"` [INFO] running `"docker" "rm" "-f" "01bab36b79e1cf00c491ba4f5b81868835ca14e23780e555f5b9ca8872c05cac"` [INFO] [stdout] 01bab36b79e1cf00c491ba4f5b81868835ca14e23780e555f5b9ca8872c05cac [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "test" "--frozen" "--no-run"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 34513104af7b73145ef94024e30ee9cf8004d58b026af419a17a68d7161e87b7 [INFO] running `"docker" "start" "-a" "34513104af7b73145ef94024e30ee9cf8004d58b026af419a17a68d7161e87b7"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling oxidegb v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/cpu.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/cpu.rs:205:28 [INFO] [stderr] | [INFO] [stderr] 205 | pub fn new(mapper: Box, bootrom: Option>) -> Self { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Duration` [INFO] [stderr] --> src/emulator.rs:5:17 [INFO] [stderr] | [INFO] [stderr] 5 | use std::time::{Duration, Instant}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/emulator.rs:21:24 [INFO] [stderr] | [INFO] [stderr] 21 | fn read_to_vec(r: &mut Read) -> Result, std::io::Error> { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/emulator.rs:31:21 [INFO] [stderr] | [INFO] [stderr] 31 | ) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: unused imports: `replace`, `swap` [INFO] [stderr] --> src/memory.rs:4:16 [INFO] [stderr] | [INFO] [stderr] 4 | use std::mem::{replace, swap}; [INFO] [stderr] | ^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:38:17 [INFO] [stderr] | [INFO] [stderr] 38 | mapper: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:47:28 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn new(mapper: Box, bootrom: Option>) -> Self { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:89:19 [INFO] [stderr] | [INFO] [stderr] 89 | 0x0000...0x00FF if self.bootrom.is_some() => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:92:19 [INFO] [stderr] | [INFO] [stderr] 92 | 0x0000...0x7FFF => self.mapper.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:93:19 [INFO] [stderr] | [INFO] [stderr] 93 | 0x8000...0x9FFF => self.ppu.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:94:19 [INFO] [stderr] | [INFO] [stderr] 94 | 0xA000...0xBFFF => 0, //ext_ram [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:95:19 [INFO] [stderr] | [INFO] [stderr] 95 | 0xC000...0xFDFF => self.ram.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:96:19 [INFO] [stderr] | [INFO] [stderr] 96 | 0xFE00...0xFE9F => self.ppu.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:97:19 [INFO] [stderr] | [INFO] [stderr] 97 | 0xFEA0...0xFEFF => 0, //unusable [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:98:19 [INFO] [stderr] | [INFO] [stderr] 98 | 0xFF00...0xFF3F => self.io.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:99:19 [INFO] [stderr] | [INFO] [stderr] 99 | 0xFF40...0xFF4B => self.ppu.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:100:19 [INFO] [stderr] | [INFO] [stderr] 100 | 0xFF4C...0xFF7F => 0, //unusable [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:101:19 [INFO] [stderr] | [INFO] [stderr] 101 | 0xFF80...0xFFFE => self.hram[(addr & 0x7F) as usize], [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:114:19 [INFO] [stderr] | [INFO] [stderr] 114 | 0x0000...0x00FF if self.bootrom.is_some() => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:117:19 [INFO] [stderr] | [INFO] [stderr] 117 | 0x0000...0x7FFF => self.mapper.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:118:19 [INFO] [stderr] | [INFO] [stderr] 118 | 0x8000...0x9FFF => self.ppu.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:119:19 [INFO] [stderr] | [INFO] [stderr] 119 | 0xA000...0xBFFF => (), //ext_ram [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:120:19 [INFO] [stderr] | [INFO] [stderr] 120 | 0xC000...0xFDFF => self.ram.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:121:19 [INFO] [stderr] | [INFO] [stderr] 121 | 0xFE00...0xFE9F => self.ppu.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:122:19 [INFO] [stderr] | [INFO] [stderr] 122 | 0xFEA0...0xFEFF => (), //unusable [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:123:19 [INFO] [stderr] | [INFO] [stderr] 123 | 0xFF00...0xFF3F => self.io.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:124:19 [INFO] [stderr] | [INFO] [stderr] 124 | 0xFF40...0xFF4B => self.ppu.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:126:19 [INFO] [stderr] | [INFO] [stderr] 126 | 0xFF4C...0xFF7F => (), //unusable [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:127:19 [INFO] [stderr] | [INFO] [stderr] 127 | 0xFF80...0xFFFE => self.hram[(addr & 0x7F) as usize] = val, [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::utils::nth_bit_set` [INFO] [stderr] --> src/ppu.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::utils::nth_bit_set; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:122:19 [INFO] [stderr] | [INFO] [stderr] 122 | 0x8000...0x9FFF if self.state != PpuState::PixTransfer => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:125:19 [INFO] [stderr] | [INFO] [stderr] 125 | 0xFE00...0xFE9F [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:130:19 [INFO] [stderr] | [INFO] [stderr] 130 | 0xFF40...0xFF4B => self.regs.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:137:19 [INFO] [stderr] | [INFO] [stderr] 137 | 0xFE00...0xFE9F [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:142:19 [INFO] [stderr] | [INFO] [stderr] 142 | 0xFF40...0xFF4B => self.regs.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:176:14 [INFO] [stderr] | [INFO] [stderr] 176 | 0...143 => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rom.rs:77:36 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn new_mapper(rom: Rom) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `handle_interrupt` [INFO] [stderr] --> src/cpu.rs:242:8 [INFO] [stderr] | [INFO] [stderr] 242 | fn handle_interrupt(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `curr_interrupt` [INFO] [stderr] --> src/memory.rs:67:12 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn curr_interrupt(&mut self) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `dma` [INFO] [stderr] --> src/ppu.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | dma: u8, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `obj_pal_1` [INFO] [stderr] --> src/ppu.rs:57:5 [INFO] [stderr] | [INFO] [stderr] 57 | obj_pal_1: u8, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `obj_pal_2` [INFO] [stderr] --> src/ppu.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | obj_pal_2: u8, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `win_y_pos` [INFO] [stderr] --> src/ppu.rs:59:5 [INFO] [stderr] | [INFO] [stderr] 59 | win_y_pos: u8, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `win_x_pos` [INFO] [stderr] --> src/ppu.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 60 | win_x_pos: u8, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/memory.rs:111:13 [INFO] [stderr] | [INFO] [stderr] 111 | stdout().flush(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 46 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 2.38s [INFO] running `"docker" "inspect" "34513104af7b73145ef94024e30ee9cf8004d58b026af419a17a68d7161e87b7"` [INFO] running `"docker" "rm" "-f" "34513104af7b73145ef94024e30ee9cf8004d58b026af419a17a68d7161e87b7"` [INFO] [stdout] 34513104af7b73145ef94024e30ee9cf8004d58b026af419a17a68d7161e87b7 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "test" "--frozen"` [INFO] [stdout] d2ae79788d87c00f7a03cfe3385ed0a10f45ddea3774504912ed905ab0d0da10 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "d2ae79788d87c00f7a03cfe3385ed0a10f45ddea3774504912ed905ab0d0da10"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/cpu.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/cpu.rs:205:28 [INFO] [stderr] | [INFO] [stderr] 205 | pub fn new(mapper: Box, bootrom: Option>) -> Self { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Duration` [INFO] [stderr] --> src/emulator.rs:5:17 [INFO] [stderr] | [INFO] [stderr] 5 | use std::time::{Duration, Instant}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/emulator.rs:21:24 [INFO] [stderr] | [INFO] [stderr] 21 | fn read_to_vec(r: &mut Read) -> Result, std::io::Error> { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/emulator.rs:31:21 [INFO] [stderr] | [INFO] [stderr] 31 | ) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] [INFO] [stderr] warning: unused imports: `replace`, `swap` [INFO] [stderr] --> src/memory.rs:4:16 [INFO] [stderr] | [INFO] [stderr] 4 | use std::mem::{replace, swap}; [INFO] [stderr] | ^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:38:17 [INFO] [stderr] | [INFO] [stderr] 38 | mapper: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/memory.rs:47:28 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn new(mapper: Box, bootrom: Option>) -> Self { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:89:19 [INFO] [stderr] | [INFO] [stderr] 89 | 0x0000...0x00FF if self.bootrom.is_some() => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:92:19 [INFO] [stderr] | [INFO] [stderr] 92 | 0x0000...0x7FFF => self.mapper.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:93:19 [INFO] [stderr] | [INFO] [stderr] 93 | 0x8000...0x9FFF => self.ppu.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:94:19 [INFO] [stderr] | [INFO] [stderr] 94 | 0xA000...0xBFFF => 0, //ext_ram [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:95:19 [INFO] [stderr] | [INFO] [stderr] 95 | 0xC000...0xFDFF => self.ram.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:96:19 [INFO] [stderr] | [INFO] [stderr] 96 | 0xFE00...0xFE9F => self.ppu.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:97:19 [INFO] [stderr] | [INFO] [stderr] 97 | 0xFEA0...0xFEFF => 0, //unusable [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:98:19 [INFO] [stderr] | [INFO] [stderr] 98 | 0xFF00...0xFF3F => self.io.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:99:19 [INFO] [stderr] | [INFO] [stderr] 99 | 0xFF40...0xFF4B => self.ppu.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:100:19 [INFO] [stderr] | [INFO] [stderr] 100 | 0xFF4C...0xFF7F => 0, //unusable [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:101:19 [INFO] [stderr] | [INFO] [stderr] 101 | 0xFF80...0xFFFE => self.hram[(addr & 0x7F) as usize], [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:114:19 [INFO] [stderr] | [INFO] [stderr] 114 | 0x0000...0x00FF if self.bootrom.is_some() => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:117:19 [INFO] [stderr] | [INFO] [stderr] 117 | 0x0000...0x7FFF => self.mapper.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:118:19 [INFO] [stderr] | [INFO] [stderr] 118 | 0x8000...0x9FFF => self.ppu.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:119:19 [INFO] [stderr] | [INFO] [stderr] 119 | 0xA000...0xBFFF => (), //ext_ram [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:120:19 [INFO] [stderr] | [INFO] [stderr] 120 | 0xC000...0xFDFF => self.ram.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:121:19 [INFO] [stderr] | [INFO] [stderr] 121 | 0xFE00...0xFE9F => self.ppu.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:122:19 [INFO] [stderr] | [INFO] [stderr] 122 | 0xFEA0...0xFEFF => (), //unusable [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:123:19 [INFO] [stderr] | [INFO] [stderr] 123 | 0xFF00...0xFF3F => self.io.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:124:19 [INFO] [stderr] | [INFO] [stderr] 124 | 0xFF40...0xFF4B => self.ppu.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:126:19 [INFO] [stderr] | [INFO] [stderr] 126 | 0xFF4C...0xFF7F => (), //unusable [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/memory.rs:127:19 [INFO] [stderr] | [INFO] [stderr] 127 | 0xFF80...0xFFFE => self.hram[(addr & 0x7F) as usize] = val, [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::utils::nth_bit_set` [INFO] [stderr] --> src/ppu.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::utils::nth_bit_set; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:122:19 [INFO] [stderr] | [INFO] [stderr] 122 | 0x8000...0x9FFF if self.state != PpuState::PixTransfer => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:125:19 [INFO] [stderr] | [INFO] [stderr] 125 | 0xFE00...0xFE9F [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:130:19 [INFO] [stderr] | [INFO] [stderr] 130 | 0xFF40...0xFF4B => self.regs.readb(addr), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:137:19 [INFO] [stderr] | [INFO] [stderr] 137 | 0xFE00...0xFE9F [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:142:19 [INFO] [stderr] | [INFO] [stderr] 142 | 0xFF40...0xFF4B => self.regs.writeb(addr, val), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ppu.rs:176:14 [INFO] [stderr] | [INFO] [stderr] 176 | 0...143 => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rom.rs:77:36 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn new_mapper(rom: Rom) -> Box { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Mapper` [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `handle_interrupt` [INFO] [stderr] --> src/cpu.rs:242:8 [INFO] [stderr] | [INFO] [stderr] 242 | fn handle_interrupt(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `curr_interrupt` [INFO] [stderr] --> src/memory.rs:67:12 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn curr_interrupt(&mut self) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `dma` [INFO] [stderr] --> src/ppu.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | dma: u8, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `obj_pal_1` [INFO] [stderr] --> src/ppu.rs:57:5 [INFO] [stderr] | [INFO] [stderr] 57 | obj_pal_1: u8, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `obj_pal_2` [INFO] [stderr] --> src/ppu.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | obj_pal_2: u8, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `win_y_pos` [INFO] [stderr] --> src/ppu.rs:59:5 [INFO] [stderr] | [INFO] [stderr] 59 | win_y_pos: u8, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `win_x_pos` [INFO] [stderr] --> src/ppu.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 60 | win_x_pos: u8, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/memory.rs:111:13 [INFO] [stderr] | [INFO] [stderr] 111 | stdout().flush(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 46 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.23s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/oxidegb-7f4404e935e5a0fc [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "d2ae79788d87c00f7a03cfe3385ed0a10f45ddea3774504912ed905ab0d0da10"` [INFO] running `"docker" "rm" "-f" "d2ae79788d87c00f7a03cfe3385ed0a10f45ddea3774504912ed905ab0d0da10"` [INFO] [stdout] d2ae79788d87c00f7a03cfe3385ed0a10f45ddea3774504912ed905ab0d0da10