[INFO] updating cached repository Crax97/srasboy [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/Crax97/srasboy [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/Crax97/srasboy" "work/ex/beta-1.37-6/sources/1.36.0/gh/Crax97/srasboy"` [INFO] [stderr] Cloning into 'work/ex/beta-1.37-6/sources/1.36.0/gh/Crax97/srasboy'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/Crax97/srasboy" "work/ex/beta-1.37-6/sources/beta-2019-07-23/gh/Crax97/srasboy"` [INFO] [stderr] Cloning into 'work/ex/beta-1.37-6/sources/beta-2019-07-23/gh/Crax97/srasboy'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 9f25730798dcbd01e06dd364e06dc2d93603e41b [INFO] sha for GitHub repo Crax97/srasboy: 9f25730798dcbd01e06dd364e06dc2d93603e41b [INFO] validating manifest of Crax97/srasboy on toolchain 1.36.0 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.36.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of Crax97/srasboy on toolchain beta-2019-07-23 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-07-23" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing Crax97/srasboy [INFO] finished frobbing Crax97/srasboy [INFO] frobbed toml for Crax97/srasboy written to work/ex/beta-1.37-6/sources/1.36.0/gh/Crax97/srasboy/Cargo.toml [INFO] started frobbing Crax97/srasboy [INFO] finished frobbing Crax97/srasboy [INFO] frobbed toml for Crax97/srasboy written to work/ex/beta-1.37-6/sources/beta-2019-07-23/gh/Crax97/srasboy/Cargo.toml [INFO] crate Crax97/srasboy already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.36.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-07-23" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] testing Crax97/srasboy against 1.36.0 for beta-1.37-6 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.37-6/worker-5/1.36.0:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.37-6/sources/1.36.0/gh/Crax97/srasboy:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+1.36.0" "build" "--frozen"` [INFO] [stdout] 6a3d7acfcbd055db6e1737032f32ac73bed4550bf0b2ac379cd943cb5a497469 [INFO] running `"docker" "start" "-a" "6a3d7acfcbd055db6e1737032f32ac73bed4550bf0b2ac379cd943cb5a497469"` [INFO] [stderr] Compiling srasboy v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: type `REGISTER_NAME` should have an upper camel case name [INFO] [stderr] --> src/subsystems/cpu.rs:18:10 [INFO] [stderr] | [INFO] [stderr] 18 | pub enum REGISTER_NAME { [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RegisterName` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_camel_case_types)] on by default [INFO] [stderr] [INFO] [stderr] warning: type `JUMP_COND` should have an upper camel case name [INFO] [stderr] --> src/subsystems/cpu.rs:43:10 [INFO] [stderr] | [INFO] [stderr] 43 | pub enum JUMP_COND { [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to upper camel case: `JumpCond` [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Index` [INFO] [stderr] --> src/subsystems/mmu.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::ops::Index; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::cpu::*` [INFO] [stderr] --> src/subsystems/gpu.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use super::cpu::*; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::cpu::cpu_instructions::*` [INFO] [stderr] --> src/subsystems/gpu.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use super::cpu::cpu_instructions::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/subsystems/gpu.rs:50:22 [INFO] [stderr] | [INFO] [stderr] 50 | let signed = (bg_tile_data == 0x8800); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/subsystems/cpu.rs:604:13 [INFO] [stderr] | [INFO] [stderr] 604 | _ => { panic!("There's no instruction prefixed with {}", opcode); } [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unreachable_patterns)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/main.rs:11:65 [INFO] [stderr] | [INFO] [stderr] 11 | let mut dmg_rom = File::open("DMG_ROM.bin").unwrap_or_else(|e| { panic!("Failed loading DMG rom") }); [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_e` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `this_instr` [INFO] [stderr] --> src/subsystems/cpu/cpu_instructions.rs:582:13 [INFO] [stderr] | [INFO] [stderr] 582 | let this_instr = self.reg.get(PC).as_u16() - 1; [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_this_instr` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `start` [INFO] [stderr] --> src/subsystems/mmu.rs:78:13 [INFO] [stderr] | [INFO] [stderr] 78 | let start = begin_addr & 0xFF00; [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_start` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `dest_begin` [INFO] [stderr] --> src/subsystems/mmu.rs:79:13 [INFO] [stderr] | [INFO] [stderr] 79 | let dest_begin = 0xFE00; [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_dest_begin` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `dest_end` [INFO] [stderr] --> src/subsystems/mmu.rs:80:13 [INFO] [stderr] | [INFO] [stderr] 80 | let dest_end = 0xFE9F; [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_dest_end` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `y` [INFO] [stderr] --> src/subsystems/gpu.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | for y in tile_begin..tile_begin + 16 { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_y` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `stat` [INFO] [stderr] --> src/subsystems/gpu.rs:69:13 [INFO] [stderr] | [INFO] [stderr] 69 | let stat = mem.get_addr(0xFF41); [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_stat` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/subsystems/gpu.rs:52:13 [INFO] [stderr] | [INFO] [stderr] 52 | let mut fb : Vec = Vec::default(); [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `CPU_CLOCK_SPEED` [INFO] [stderr] --> src/subsystems/cpu.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | const CPU_CLOCK_SPEED : u64 = 4194304; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `stopped` [INFO] [stderr] --> src/subsystems/cpu.rs:299:5 [INFO] [stderr] | [INFO] [stderr] 299 | pub fn stopped(&self) -> bool { self.is_stopped } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `MemoryError` [INFO] [stderr] --> src/subsystems/mmu.rs:29:1 [INFO] [stderr] | [INFO] [stderr] 29 | pub enum MemoryError { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `do_dma_oam_transfer` [INFO] [stderr] --> src/subsystems/mmu.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | fn do_dma_oam_transfer(&self, begin_addr: u16) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `inside_range` [INFO] [stderr] --> src/subsystems/mmu.rs:114:1 [INFO] [stderr] | [INFO] [stderr] 114 | fn inside_range (begin: u16, end: u16, addr: u16) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `FetcherStatus` [INFO] [stderr] --> src/subsystems/gpu/fetcher.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | enum FetcherStatus { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Fetcher` [INFO] [stderr] --> src/subsystems/gpu/fetcher.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | pub struct Fetcher { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_data` [INFO] [stderr] --> src/subsystems/gpu/fetcher.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | fn get_data(mmu: &mut MMU, tile_address: u16, line: u8, index: u8) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `begin_fetching` [INFO] [stderr] --> src/subsystems/gpu/fetcher.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | pub fn begin_fetching(&mut self, tile_map: u16, tile_data_address: u16, line: u8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `fetch_pixels` [INFO] [stderr] --> src/subsystems/gpu/fetcher.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn fetch_pixels(&mut self, mmu: &mut MMU) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `update` [INFO] [stderr] --> src/subsystems/gpu/fetcher.rs:52:5 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn update(&mut self, mmu: &mut MMU) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `gen_entire_framebuffer` [INFO] [stderr] --> src/subsystems/gpu.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | fn gen_entire_framebuffer(&mut self, mem: &mut MMU) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `LCDC` should have a snake case name [INFO] [stderr] --> src/subsystems/gpu.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | let LCDC = mem.get_addr(0xFF40); [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `lcdc` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.66s [INFO] running `"docker" "inspect" "6a3d7acfcbd055db6e1737032f32ac73bed4550bf0b2ac379cd943cb5a497469"` [INFO] running `"docker" "rm" "-f" "6a3d7acfcbd055db6e1737032f32ac73bed4550bf0b2ac379cd943cb5a497469"` [INFO] [stdout] 6a3d7acfcbd055db6e1737032f32ac73bed4550bf0b2ac379cd943cb5a497469 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.37-6/worker-5/1.36.0:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.37-6/sources/1.36.0/gh/Crax97/srasboy:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+1.36.0" "test" "--frozen" "--no-run"` [INFO] [stdout] 799f5c424bdafd57b2b81756fccda6f1a5b83c54a299ab816cfbb65be5f75b07 [INFO] running `"docker" "start" "-a" "799f5c424bdafd57b2b81756fccda6f1a5b83c54a299ab816cfbb65be5f75b07"` [INFO] [stderr] Compiling srasboy v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `super::REGISTER_NAME::*` [INFO] [stderr] --> src/subsystems/cpu/cpu_instructions.rs:25:9 [INFO] [stderr] | [INFO] [stderr] 25 | use super::REGISTER_NAME::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::TARGET::*` [INFO] [stderr] --> src/subsystems/cpu/cpu_instructions.rs:27:9 [INFO] [stderr] | [INFO] [stderr] 27 | use super::TARGET::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type `REGISTER_NAME` should have an upper camel case name [INFO] [stderr] --> src/subsystems/cpu.rs:18:10 [INFO] [stderr] | [INFO] [stderr] 18 | pub enum REGISTER_NAME { [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RegisterName` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_camel_case_types)] on by default [INFO] [stderr] [INFO] [stderr] warning: type `JUMP_COND` should have an upper camel case name [INFO] [stderr] --> src/subsystems/cpu.rs:43:10 [INFO] [stderr] | [INFO] [stderr] 43 | pub enum JUMP_COND { [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to upper camel case: `JumpCond` [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Index` [INFO] [stderr] --> src/subsystems/mmu.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::ops::Index; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::cpu::*` [INFO] [stderr] --> src/subsystems/gpu.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use super::cpu::*; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::cpu::cpu_instructions::*` [INFO] [stderr] --> src/subsystems/gpu.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use super::cpu::cpu_instructions::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/subsystems/gpu.rs:50:22 [INFO] [stderr] | [INFO] [stderr] 50 | let signed = (bg_tile_data == 0x8800); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/subsystems/cpu.rs:604:13 [INFO] [stderr] | [INFO] [stderr] 604 | _ => { panic!("There's no instruction prefixed with {}", opcode); } [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unreachable_patterns)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/main.rs:11:65 [INFO] [stderr] | [INFO] [stderr] 11 | let mut dmg_rom = File::open("DMG_ROM.bin").unwrap_or_else(|e| { panic!("Failed loading DMG rom") }); [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_e` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `this_instr` [INFO] [stderr] --> src/subsystems/cpu/cpu_instructions.rs:582:13 [INFO] [stderr] | [INFO] [stderr] 582 | let this_instr = self.reg.get(PC).as_u16() - 1; [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_this_instr` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `start` [INFO] [stderr] --> src/subsystems/mmu.rs:78:13 [INFO] [stderr] | [INFO] [stderr] 78 | let start = begin_addr & 0xFF00; [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_start` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `dest_begin` [INFO] [stderr] --> src/subsystems/mmu.rs:79:13 [INFO] [stderr] | [INFO] [stderr] 79 | let dest_begin = 0xFE00; [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_dest_begin` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `dest_end` [INFO] [stderr] --> src/subsystems/mmu.rs:80:13 [INFO] [stderr] | [INFO] [stderr] 80 | let dest_end = 0xFE9F; [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_dest_end` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `y` [INFO] [stderr] --> src/subsystems/gpu.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | for y in tile_begin..tile_begin + 16 { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_y` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `stat` [INFO] [stderr] --> src/subsystems/gpu.rs:69:13 [INFO] [stderr] | [INFO] [stderr] 69 | let stat = mem.get_addr(0xFF41); [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_stat` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/subsystems/gpu.rs:52:13 [INFO] [stderr] | [INFO] [stderr] 52 | let mut fb : Vec = Vec::default(); [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `CPU_CLOCK_SPEED` [INFO] [stderr] --> src/subsystems/cpu.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | const CPU_CLOCK_SPEED : u64 = 4194304; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `stopped` [INFO] [stderr] --> src/subsystems/cpu.rs:299:5 [INFO] [stderr] | [INFO] [stderr] 299 | pub fn stopped(&self) -> bool { self.is_stopped } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `MemoryError` [INFO] [stderr] --> src/subsystems/mmu.rs:29:1 [INFO] [stderr] | [INFO] [stderr] 29 | pub enum MemoryError { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `do_dma_oam_transfer` [INFO] [stderr] --> src/subsystems/mmu.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | fn do_dma_oam_transfer(&self, begin_addr: u16) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `inside_range` [INFO] [stderr] --> src/subsystems/mmu.rs:114:1 [INFO] [stderr] | [INFO] [stderr] 114 | fn inside_range (begin: u16, end: u16, addr: u16) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `FetcherStatus` [INFO] [stderr] --> src/subsystems/gpu/fetcher.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | enum FetcherStatus { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Fetcher` [INFO] [stderr] --> src/subsystems/gpu/fetcher.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | pub struct Fetcher { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_data` [INFO] [stderr] --> src/subsystems/gpu/fetcher.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | fn get_data(mmu: &mut MMU, tile_address: u16, line: u8, index: u8) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `begin_fetching` [INFO] [stderr] --> src/subsystems/gpu/fetcher.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | pub fn begin_fetching(&mut self, tile_map: u16, tile_data_address: u16, line: u8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `fetch_pixels` [INFO] [stderr] --> src/subsystems/gpu/fetcher.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn fetch_pixels(&mut self, mmu: &mut MMU) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `update` [INFO] [stderr] --> src/subsystems/gpu/fetcher.rs:52:5 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn update(&mut self, mmu: &mut MMU) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `gen_entire_framebuffer` [INFO] [stderr] --> src/subsystems/gpu.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | fn gen_entire_framebuffer(&mut self, mem: &mut MMU) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `LCDC` should have a snake case name [INFO] [stderr] --> src/subsystems/gpu.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | let LCDC = mem.get_addr(0xFF40); [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `lcdc` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.08s [INFO] running `"docker" "inspect" "799f5c424bdafd57b2b81756fccda6f1a5b83c54a299ab816cfbb65be5f75b07"` [INFO] running `"docker" "rm" "-f" "799f5c424bdafd57b2b81756fccda6f1a5b83c54a299ab816cfbb65be5f75b07"` [INFO] [stdout] 799f5c424bdafd57b2b81756fccda6f1a5b83c54a299ab816cfbb65be5f75b07 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.37-6/worker-5/1.36.0:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.37-6/sources/1.36.0/gh/Crax97/srasboy:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+1.36.0" "test" "--frozen"` [INFO] [stdout] 826cc124258fd81baf843aff5b8946908778eed0f6745d801a53578ca928d665 [INFO] running `"docker" "start" "-a" "826cc124258fd81baf843aff5b8946908778eed0f6745d801a53578ca928d665"` [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.03s [INFO] [stderr] Running /opt/crater/target/debug/deps/srasboy-63f244e00dfab36e [INFO] [stdout] [INFO] [stdout] running 11 tests [INFO] [stdout] test subsystems::cpu::cpu_instructions::test::try_jump_diff ... ok [INFO] [stdout] test subsystems::cpu::cpu_instructions::test::try_inc_sub_a ... ok [INFO] [stdout] test subsystems::cpu::cpu_instructions::test::try_push_pop ... ok [INFO] [stdout] test subsystems::cpu::cpu_instructions::test::try_writing_from_bc_to_hl ... ok [INFO] [stdout] test subsystems::mmu::test::write_test ... ok [INFO] [stdout] test subsystems::cpu::cpu_instructions::test::try_writing_into_a ... ok [INFO] [stdout] test subsystems::cpu::cpu_instructions::test::try_loading_into_hl ... ok [INFO] [stdout] test subsystems::cpu::cpu_instructions::test::try_writing_into_hl ... ok [INFO] [stdout] test subsystems::cpu::cpu_instructions::test::try_jump_abs ... ok [INFO] [stdout] test subsystems::cpu::cpu_instructions::test::try_logical ... ok [INFO] [stdout] test subsystems::cpu::cpu_instructions::test::try_call ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- subsystems::cpu::cpu_instructions::test::try_call stdout ---- [INFO] [stdout] thread 'subsystems::cpu::cpu_instructions::test::try_call' panicked at 'assertion failed: current_pc == 1', src/subsystems/cpu/cpu_instructions.rs:126:9 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x55e9f3343613 - std::sys::unix::backtrace::tracing::imp::unwind_backtrace::h6485381528590a55 [INFO] [stdout] at src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:39 [INFO] [stdout] 1: 0x55e9f333ef4b - std::sys_common::backtrace::_print::h49a82ae9552e35c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:71 [INFO] [stdout] 2: 0x55e9f3342356 - std::panicking::default_hook::{{closure}}::he20974adbefcc046 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] at src/libstd/panicking.rs:197 [INFO] [stdout] 3: 0x55e9f334207e - std::panicking::default_hook::he4af6af4ac7fef7b [INFO] [stdout] at src/libstd/panicking.rs:208 [INFO] [stdout] 4: 0x55e9f3342a5f - std::panicking::rust_panic_with_hook::h057ff03eb4c8000f [INFO] [stdout] at src/libstd/panicking.rs:474 [INFO] [stdout] 5: 0x55e9f32f4e03 - std::panicking::begin_panic::hfe3a0ab48c296577 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/libstd/panicking.rs:408 [INFO] [stdout] 6: 0x55e9f32f3abe - srasboy::subsystems::cpu::cpu_instructions::test::try_call::h7186dbd2a4316740 [INFO] [stdout] at src/subsystems/cpu/cpu_instructions.rs:126 [INFO] [stdout] 7: 0x55e9f32f38a9 - srasboy::subsystems::cpu::cpu_instructions::test::try_call::{{closure}}::hda14af162eccc9ca [INFO] [stdout] at src/subsystems/cpu/cpu_instructions.rs:115 [INFO] [stdout] 8: 0x55e9f32f45cd - core::ops::function::FnOnce::call_once::h3ea262fed9b44430 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/libcore/ops/function.rs:231 [INFO] [stdout] 9: 0x55e9f330374e - as core::ops::function::FnOnce>::call_once::h6b004fa8f4fc1608 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/liballoc/boxed.rs:704 [INFO] [stdout] 10: 0x55e9f3345779 - __rust_maybe_catch_panic [INFO] [stdout] at src/libpanic_unwind/lib.rs:85 [INFO] [stdout] 11: 0x55e9f331e047 - test::run_test::run_test_inner::{{closure}}::h9a4d23c41d058d37 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/libstd/panicking.rs:272 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/libstd/panic.rs:394 [INFO] [stdout] at src/libtest/lib.rs:1468 [INFO] [stdout] 12: 0x55e9f32f8a64 - std::sys_common::backtrace::__rust_begin_short_backtrace::h3765d76361a33ff7 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/libstd/sys_common/backtrace.rs:136 [INFO] [stdout] 13: 0x55e9f32fcb14 - std::panicking::try::do_call::h6f86e980b52f74d5 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/libstd/thread/mod.rs:470 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/libstd/panic.rs:315 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/libstd/panicking.rs:293 [INFO] [stdout] 14: 0x55e9f3345779 - __rust_maybe_catch_panic [INFO] [stdout] at src/libpanic_unwind/lib.rs:85 [INFO] [stdout] 15: 0x55e9f32fd121 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h760b8a2b155f54c3 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/libstd/panicking.rs:272 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/libstd/panic.rs:394 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/libstd/thread/mod.rs:469 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/libcore/ops/function.rs:231 [INFO] [stdout] 16: 0x55e9f3336d2e - as core::ops::function::FnOnce>::call_once::h805c3cc89d534c05 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/liballoc/boxed.rs:704 [INFO] [stdout] 17: 0x55e9f3344e5f - std::sys::unix::thread::Thread::new::thread_start::h6f10b78f26c98dc6 [INFO] [stdout] at /rustc/a53f9df32fbb0b5f4382caaad8f1a46f36ea887c/src/liballoc/boxed.rs:704 [INFO] [stdout] at src/libstd/sys_common/thread.rs:13 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:79 [INFO] [stdout] 18: 0x7fa6605b14a3 - start_thread [INFO] [stdout] 19: 0x7fa6600dcd0e - __clone [INFO] [stdout] 20: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] subsystems::cpu::cpu_instructions::test::try_call [INFO] [stdout] [INFO] [stdout] test result: FAILED. 10 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass '--bin srasboy' [INFO] running `"docker" "inspect" "826cc124258fd81baf843aff5b8946908778eed0f6745d801a53578ca928d665"` [INFO] running `"docker" "rm" "-f" "826cc124258fd81baf843aff5b8946908778eed0f6745d801a53578ca928d665"` [INFO] [stdout] 826cc124258fd81baf843aff5b8946908778eed0f6745d801a53578ca928d665