[INFO] updating cached repository https://github.com/sifton/gbers [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] 3a94b798299f625a7e94cb8cae3cb2f114735d7b [INFO] checking sifton/gbers against try#e4dba30b9b475d8750370c4dfb49b6541990904d for pr-71393 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsifton%2Fgbers" "/workspace/builds/worker-4/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-4/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/sifton/gbers on toolchain e4dba30b9b475d8750370c4dfb49b6541990904d [INFO] running `"/workspace/cargo-home/bin/cargo" "+e4dba30b9b475d8750370c4dfb49b6541990904d" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/sifton/gbers [INFO] finished tweaking git repo https://github.com/sifton/gbers [INFO] tweaked toml for git repo https://github.com/sifton/gbers written to /workspace/builds/worker-4/source/Cargo.toml [INFO] crate git repo https://github.com/sifton/gbers already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+e4dba30b9b475d8750370c4dfb49b6541990904d" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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=forbid" "-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" "+e4dba30b9b475d8750370c4dfb49b6541990904d" "check" "--frozen" "--all" "--all-targets"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] dbe55e59afbb6e01d2653ae1a12588bf5c91f327ca937fb5fe5594cb5bc4256c [INFO] running `"docker" "start" "-a" "dbe55e59afbb6e01d2653ae1a12588bf5c91f327ca937fb5fe5594cb5bc4256c"` [INFO] [stderr] Checking byte-slice-cast v0.1.0 [INFO] [stderr] Checking gbers v0.0.1 (/opt/rustwide/workdir) [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:155:13 [INFO] [stderr] | [INFO] [stderr] 155 | let x = try!(Cartridge::new_no_check(bytes)); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:157:13 [INFO] [stderr] | [INFO] [stderr] 157 | let _ = try!(check_header_sum(&x.rom)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:163:15 [INFO] [stderr] | [INFO] [stderr] 163 | let rom = try!(ROM::from_raw_bytes(bytes)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:165:17 [INFO] [stderr] | [INFO] [stderr] 165 | let title = try!(read_title(&rom)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:166:22 [INFO] [stderr] | [INFO] [stderr] 166 | let components = try!(decode_components(&rom)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:167:18 [INFO] [stderr] | [INFO] [stderr] 167 | let is_cgb = try!(decode_is_cgb(&rom)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:168:18 [INFO] [stderr] | [INFO] [stderr] 168 | let is_sgb = try!(decode_is_sgb(&rom)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:365:17 [INFO] [stderr] | [INFO] [stderr] 365 | let _romnum = try!(decode_rom_size(rom)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:366:17 [INFO] [stderr] | [INFO] [stderr] 366 | let _ramnum = try!(decode_ram_size(rom)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::marker::PhantomData` [INFO] [stderr] --> src/hw/cart.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | use std::marker::PhantomData; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `TryInto` [INFO] [stderr] --> src/hw/cpu/instr.rs:28:35 [INFO] [stderr] | [INFO] [stderr] 28 | use std::convert::{Into, TryFrom, TryInto}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/hw/cpu/register.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | ((self.upper.get() << 8 + self.lower.get()) as u16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::cart` [INFO] [stderr] --> src/hw/cpu/mod.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | use super::cart; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:155:13 [INFO] [stderr] | [INFO] [stderr] 155 | let x = try!(Cartridge::new_no_check(bytes)); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:157:13 [INFO] [stderr] | [INFO] [stderr] 157 | let _ = try!(check_header_sum(&x.rom)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:163:15 [INFO] [stderr] | [INFO] [stderr] 163 | let rom = try!(ROM::from_raw_bytes(bytes)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:165:17 [INFO] [stderr] | [INFO] [stderr] 165 | let title = try!(read_title(&rom)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:166:22 [INFO] [stderr] | [INFO] [stderr] 166 | let components = try!(decode_components(&rom)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:167:18 [INFO] [stderr] | [INFO] [stderr] 167 | let is_cgb = try!(decode_is_cgb(&rom)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:168:18 [INFO] [stderr] | [INFO] [stderr] 168 | let is_sgb = try!(decode_is_sgb(&rom)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:365:17 [INFO] [stderr] | [INFO] [stderr] 365 | let _romnum = try!(decode_rom_size(rom)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/hw/cart.rs:366:17 [INFO] [stderr] | [INFO] [stderr] 366 | let _ramnum = try!(decode_ram_size(rom)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::marker::PhantomData` [INFO] [stderr] --> src/hw/cart.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | use std::marker::PhantomData; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `TryInto` [INFO] [stderr] --> src/hw/cpu/instr.rs:28:35 [INFO] [stderr] | [INFO] [stderr] 28 | use std::convert::{Into, TryFrom, TryInto}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/hw/cpu/register.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | ((self.upper.get() << 8 + self.lower.get()) as u16) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::cart` [INFO] [stderr] --> src/hw/cpu/mod.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | use super::cart; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/hw/cart.rs:190:12 [INFO] [stderr] | [INFO] [stderr] 190 | Ok(x) => bytes, [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `raw` [INFO] [stderr] --> src/hw/cpu/instr.rs:75:17 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn decode(raw: &[u8]) -> Result { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_raw` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `dec` [INFO] [stderr] --> src/hw/cpu/instr.rs:157:13 [INFO] [stderr] | [INFO] [stderr] 157 | fn from(dec: Decoder) -> Decoder { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_dec` [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `KILOBYTE_BYTES` [INFO] [stderr] --> src/hw/cart.rs:111:1 [INFO] [stderr] | [INFO] [stderr] 111 | const KILOBYTE_BYTES: usize = 1024; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_ENTRY` [INFO] [stderr] --> src/hw/cart.rs:122:3 [INFO] [stderr] | [INFO] [stderr] 122 | pub const META_ENTRY: Region<[u8; 0x4]> = Region(0x100, 0x104, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_LOGO` [INFO] [stderr] --> src/hw/cart.rs:123:3 [INFO] [stderr] | [INFO] [stderr] 123 | pub const META_LOGO: Region<[u8; 0x30]> = Region(0x104, 0x134, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_MANUFACTURER` [INFO] [stderr] --> src/hw/cart.rs:125:3 [INFO] [stderr] | [INFO] [stderr] 125 | pub const META_MANUFACTURER: Region = Region(0x13F, 0x143, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_LICENSEE` [INFO] [stderr] --> src/hw/cart.rs:127:3 [INFO] [stderr] | [INFO] [stderr] 127 | pub const META_LICENSEE: Region = Region(0x144, 0x146, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_DEST` [INFO] [stderr] --> src/hw/cart.rs:132:3 [INFO] [stderr] | [INFO] [stderr] 132 | pub const META_DEST: Region = Region(0x14A, 0x14B, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_LICENSEE_OLD` [INFO] [stderr] --> src/hw/cart.rs:133:3 [INFO] [stderr] | [INFO] [stderr] 133 | pub const META_LICENSEE_OLD: Region = Region(0x14B, 0x14C, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_VERSION` [INFO] [stderr] --> src/hw/cart.rs:134:3 [INFO] [stderr] | [INFO] [stderr] 134 | pub const META_VERSION: Region = Region(0x14C, 0x14D, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_CHECKSUM_ALL` [INFO] [stderr] --> src/hw/cart.rs:136:3 [INFO] [stderr] | [INFO] [stderr] 136 | pub const META_CHECKSUM_ALL: Region = Region(0x14E, 0x150, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `EXEC_BOOT` [INFO] [stderr] --> src/hw/cart.rs:140:3 [INFO] [stderr] | [INFO] [stderr] 140 | pub const EXEC_BOOT: Region<[u8; 256]> = Region(0x0, 0x256, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `has_component` [INFO] [stderr] --> src/hw/cart.rs:206:3 [INFO] [stderr] | [INFO] [stderr] 206 | pub fn has_component(&self, cmp: Component) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `bytes` [INFO] [stderr] --> src/hw/cart.rs:260:3 [INFO] [stderr] | [INFO] [stderr] 260 | fn bytes(&self) -> &'a [u8] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `size_bytes` [INFO] [stderr] --> src/hw/cart.rs:277:3 [INFO] [stderr] | [INFO] [stderr] 277 | pub fn size_bytes(self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `size_bytes` [INFO] [stderr] --> src/hw/cart.rs:320:3 [INFO] [stderr] | [INFO] [stderr] 320 | pub fn size_bytes(self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `CYCLE_INCREMENT` [INFO] [stderr] --> src/hw/cpu/clock.rs:19:1 [INFO] [stderr] | [INFO] [stderr] 19 | const CYCLE_INCREMENT: usize = 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Clock` [INFO] [stderr] --> src/hw/cpu/clock.rs:21:12 [INFO] [stderr] | [INFO] [stderr] 21 | pub struct Clock { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `Frequency` [INFO] [stderr] --> src/hw/cpu/clock.rs:26:10 [INFO] [stderr] | [INFO] [stderr] 26 | pub enum Frequency { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/hw/cpu/clock.rs:33:3 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn new(freq: Frequency) -> Clock { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new_start_time` [INFO] [stderr] --> src/hw/cpu/clock.rs:37:3 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn new_start_time(time: usize, freq: Frequency) -> Clock { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `incr` [INFO] [stderr] --> src/hw/cpu/clock.rs:44:3 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn incr(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `incr_n` [INFO] [stderr] --> src/hw/cpu/clock.rs:48:3 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn incr_n(&mut self, n: usize) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `time` [INFO] [stderr] --> src/hw/cpu/clock.rs:52:3 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn time(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `Immediate` [INFO] [stderr] --> src/hw/cpu/instr.rs:44:6 [INFO] [stderr] | [INFO] [stderr] 44 | enum Immediate { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `Opcode` [INFO] [stderr] --> src/hw/cpu/instr.rs:50:6 [INFO] [stderr] | [INFO] [stderr] 50 | enum Opcode { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `Instr` [INFO] [stderr] --> src/hw/cpu/instr.rs:54:6 [INFO] [stderr] | [INFO] [stderr] 54 | enum Instr { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `Result` [INFO] [stderr] --> src/hw/cpu/instr.rs:71:1 [INFO] [stderr] | [INFO] [stderr] 71 | type Result = result::Result; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `decode` [INFO] [stderr] --> src/hw/cpu/instr.rs:75:3 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn decode(raw: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `Result` [INFO] [stderr] --> src/hw/cpu/instr.rs:109:3 [INFO] [stderr] | [INFO] [stderr] 109 | pub type Result = result::Result; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `bytes` [INFO] [stderr] --> src/hw/cpu/instr.rs:115:5 [INFO] [stderr] | [INFO] [stderr] 115 | bytes: [u8; 4], [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `state` [INFO] [stderr] --> src/hw/cpu/instr.rs:116:5 [INFO] [stderr] | [INFO] [stderr] 116 | state: S, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `DblPrefix` [INFO] [stderr] --> src/hw/cpu/instr.rs:131:10 [INFO] [stderr] | [INFO] [stderr] 131 | struct DblPrefix { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Opcode` [INFO] [stderr] --> src/hw/cpu/instr.rs:135:10 [INFO] [stderr] | [INFO] [stderr] 135 | struct Opcode { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Displace` [INFO] [stderr] --> src/hw/cpu/instr.rs:139:10 [INFO] [stderr] | [INFO] [stderr] 139 | struct Displace { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Immed` [INFO] [stderr] --> src/hw/cpu/instr.rs:143:10 [INFO] [stderr] | [INFO] [stderr] 143 | struct Immed { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/hw/cpu/instr.rs:148:5 [INFO] [stderr] | [INFO] [stderr] 148 | pub fn new(bytes: [u8; 4]) -> Decoder { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Zero` [INFO] [stderr] --> src/hw/cpu/register.rs:38:3 [INFO] [stderr] | [INFO] [stderr] 38 | Zero = 1 << 7, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `AddSub` [INFO] [stderr] --> src/hw/cpu/register.rs:39:3 [INFO] [stderr] | [INFO] [stderr] 39 | AddSub = 1 << 6, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `HalfCarry` [INFO] [stderr] --> src/hw/cpu/register.rs:40:3 [INFO] [stderr] | [INFO] [stderr] 40 | HalfCarry = 1 << 5, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Carry` [INFO] [stderr] --> src/hw/cpu/register.rs:41:3 [INFO] [stderr] | [INFO] [stderr] 41 | Carry = 1 << 4 [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `upper` [INFO] [stderr] --> src/hw/cpu/register.rs:57:3 [INFO] [stderr] | [INFO] [stderr] 57 | pub fn upper(&self) -> &Reg { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `upper_mut` [INFO] [stderr] --> src/hw/cpu/register.rs:61:3 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn upper_mut(&mut self) -> &mut Reg { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `lower` [INFO] [stderr] --> src/hw/cpu/register.rs:65:3 [INFO] [stderr] | [INFO] [stderr] 65 | pub fn lower(&self) -> &Reg { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `lower_mut` [INFO] [stderr] --> src/hw/cpu/register.rs:69:3 [INFO] [stderr] | [INFO] [stderr] 69 | pub fn lower_mut(&mut self) -> &mut Reg { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/hw/cpu/register.rs:75:3 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn new(initial: u16) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/hw/cpu/register.rs:86:3 [INFO] [stderr] | [INFO] [stderr] 86 | pub fn new(initial: u8) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Processor` [INFO] [stderr] --> src/hw/cpu/mod.rs:26:12 [INFO] [stderr] | [INFO] [stderr] 26 | pub struct Processor { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/hw/cpu/mod.rs:37:3 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn new() -> Processor { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `start` [INFO] [stderr] --> src/hw/cpu/mod.rs:48:3 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn start(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `MMU` [INFO] [stderr] --> src/hw/mmu.rs:18:12 [INFO] [stderr] | [INFO] [stderr] 18 | pub struct MMU { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: the feature `try_from` has been stable since 1.34.0 and no longer requires an attribute to enable [INFO] [stderr] --> src/main.rs:18:12 [INFO] [stderr] | [INFO] [stderr] 18 | #![feature(try_from)] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(stable_features)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/hw/cart.rs:190:12 [INFO] [stderr] | [INFO] [stderr] 190 | Ok(x) => bytes, [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: this method call currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added. [INFO] [stderr] --> src/hw/cart.rs:431:19 [INFO] [stderr] | [INFO] [stderr] 431 | for &b in bytes.into_iter() { [INFO] [stderr] | ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(array_into_iter)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #66145 [INFO] [stderr] [INFO] [stderr] warning: unused variable: `raw` [INFO] [stderr] --> src/hw/cpu/instr.rs:75:17 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn decode(raw: &[u8]) -> Result { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_raw` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `dec` [INFO] [stderr] --> src/hw/cpu/instr.rs:157:13 [INFO] [stderr] | [INFO] [stderr] 157 | fn from(dec: Decoder) -> Decoder { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_dec` [INFO] [stderr] [INFO] [stderr] warning: 67 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `KILOBYTE_BYTES` [INFO] [stderr] --> src/hw/cart.rs:111:1 [INFO] [stderr] | [INFO] [stderr] 111 | const KILOBYTE_BYTES: usize = 1024; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_ENTRY` [INFO] [stderr] --> src/hw/cart.rs:122:3 [INFO] [stderr] | [INFO] [stderr] 122 | pub const META_ENTRY: Region<[u8; 0x4]> = Region(0x100, 0x104, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_LOGO` [INFO] [stderr] --> src/hw/cart.rs:123:3 [INFO] [stderr] | [INFO] [stderr] 123 | pub const META_LOGO: Region<[u8; 0x30]> = Region(0x104, 0x134, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_MANUFACTURER` [INFO] [stderr] --> src/hw/cart.rs:125:3 [INFO] [stderr] | [INFO] [stderr] 125 | pub const META_MANUFACTURER: Region = Region(0x13F, 0x143, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_LICENSEE` [INFO] [stderr] --> src/hw/cart.rs:127:3 [INFO] [stderr] | [INFO] [stderr] 127 | pub const META_LICENSEE: Region = Region(0x144, 0x146, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_DEST` [INFO] [stderr] --> src/hw/cart.rs:132:3 [INFO] [stderr] | [INFO] [stderr] 132 | pub const META_DEST: Region = Region(0x14A, 0x14B, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_LICENSEE_OLD` [INFO] [stderr] --> src/hw/cart.rs:133:3 [INFO] [stderr] | [INFO] [stderr] 133 | pub const META_LICENSEE_OLD: Region = Region(0x14B, 0x14C, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_VERSION` [INFO] [stderr] --> src/hw/cart.rs:134:3 [INFO] [stderr] | [INFO] [stderr] 134 | pub const META_VERSION: Region = Region(0x14C, 0x14D, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `META_CHECKSUM_ALL` [INFO] [stderr] --> src/hw/cart.rs:136:3 [INFO] [stderr] | [INFO] [stderr] 136 | pub const META_CHECKSUM_ALL: Region = Region(0x14E, 0x150, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `EXEC_BOOT` [INFO] [stderr] --> src/hw/cart.rs:140:3 [INFO] [stderr] | [INFO] [stderr] 140 | pub const EXEC_BOOT: Region<[u8; 256]> = Region(0x0, 0x256, PhantomData); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `has_component` [INFO] [stderr] --> src/hw/cart.rs:206:3 [INFO] [stderr] | [INFO] [stderr] 206 | pub fn has_component(&self, cmp: Component) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `bytes` [INFO] [stderr] --> src/hw/cart.rs:260:3 [INFO] [stderr] | [INFO] [stderr] 260 | fn bytes(&self) -> &'a [u8] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `size_bytes` [INFO] [stderr] --> src/hw/cart.rs:277:3 [INFO] [stderr] | [INFO] [stderr] 277 | pub fn size_bytes(self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `size_bytes` [INFO] [stderr] --> src/hw/cart.rs:320:3 [INFO] [stderr] | [INFO] [stderr] 320 | pub fn size_bytes(self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `CYCLE_INCREMENT` [INFO] [stderr] --> src/hw/cpu/clock.rs:19:1 [INFO] [stderr] | [INFO] [stderr] 19 | const CYCLE_INCREMENT: usize = 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Clock` [INFO] [stderr] --> src/hw/cpu/clock.rs:21:12 [INFO] [stderr] | [INFO] [stderr] 21 | pub struct Clock { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `Frequency` [INFO] [stderr] --> src/hw/cpu/clock.rs:26:10 [INFO] [stderr] | [INFO] [stderr] 26 | pub enum Frequency { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/hw/cpu/clock.rs:33:3 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn new(freq: Frequency) -> Clock { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new_start_time` [INFO] [stderr] --> src/hw/cpu/clock.rs:37:3 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn new_start_time(time: usize, freq: Frequency) -> Clock { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `incr` [INFO] [stderr] --> src/hw/cpu/clock.rs:44:3 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn incr(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `incr_n` [INFO] [stderr] --> src/hw/cpu/clock.rs:48:3 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn incr_n(&mut self, n: usize) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `time` [INFO] [stderr] --> src/hw/cpu/clock.rs:52:3 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn time(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `Immediate` [INFO] [stderr] --> src/hw/cpu/instr.rs:44:6 [INFO] [stderr] | [INFO] [stderr] 44 | enum Immediate { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `Opcode` [INFO] [stderr] --> src/hw/cpu/instr.rs:50:6 [INFO] [stderr] | [INFO] [stderr] 50 | enum Opcode { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `Instr` [INFO] [stderr] --> src/hw/cpu/instr.rs:54:6 [INFO] [stderr] | [INFO] [stderr] 54 | enum Instr { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `Result` [INFO] [stderr] --> src/hw/cpu/instr.rs:71:1 [INFO] [stderr] | [INFO] [stderr] 71 | type Result = result::Result; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `decode` [INFO] [stderr] --> src/hw/cpu/instr.rs:75:3 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn decode(raw: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `Result` [INFO] [stderr] --> src/hw/cpu/instr.rs:109:3 [INFO] [stderr] | [INFO] [stderr] 109 | pub type Result = result::Result; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `bytes` [INFO] [stderr] --> src/hw/cpu/instr.rs:115:5 [INFO] [stderr] | [INFO] [stderr] 115 | bytes: [u8; 4], [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `state` [INFO] [stderr] --> src/hw/cpu/instr.rs:116:5 [INFO] [stderr] | [INFO] [stderr] 116 | state: S, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `DblPrefix` [INFO] [stderr] --> src/hw/cpu/instr.rs:131:10 [INFO] [stderr] | [INFO] [stderr] 131 | struct DblPrefix { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Opcode` [INFO] [stderr] --> src/hw/cpu/instr.rs:135:10 [INFO] [stderr] | [INFO] [stderr] 135 | struct Opcode { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Displace` [INFO] [stderr] --> src/hw/cpu/instr.rs:139:10 [INFO] [stderr] | [INFO] [stderr] 139 | struct Displace { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Immed` [INFO] [stderr] --> src/hw/cpu/instr.rs:143:10 [INFO] [stderr] | [INFO] [stderr] 143 | struct Immed { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/hw/cpu/instr.rs:148:5 [INFO] [stderr] | [INFO] [stderr] 148 | pub fn new(bytes: [u8; 4]) -> Decoder { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Zero` [INFO] [stderr] --> src/hw/cpu/register.rs:38:3 [INFO] [stderr] | [INFO] [stderr] 38 | Zero = 1 << 7, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `AddSub` [INFO] [stderr] --> src/hw/cpu/register.rs:39:3 [INFO] [stderr] | [INFO] [stderr] 39 | AddSub = 1 << 6, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `HalfCarry` [INFO] [stderr] --> src/hw/cpu/register.rs:40:3 [INFO] [stderr] | [INFO] [stderr] 40 | HalfCarry = 1 << 5, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Carry` [INFO] [stderr] --> src/hw/cpu/register.rs:41:3 [INFO] [stderr] | [INFO] [stderr] 41 | Carry = 1 << 4 [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `upper` [INFO] [stderr] --> src/hw/cpu/register.rs:57:3 [INFO] [stderr] | [INFO] [stderr] 57 | pub fn upper(&self) -> &Reg { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `upper_mut` [INFO] [stderr] --> src/hw/cpu/register.rs:61:3 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn upper_mut(&mut self) -> &mut Reg { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `lower` [INFO] [stderr] --> src/hw/cpu/register.rs:65:3 [INFO] [stderr] | [INFO] [stderr] 65 | pub fn lower(&self) -> &Reg { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `lower_mut` [INFO] [stderr] --> src/hw/cpu/register.rs:69:3 [INFO] [stderr] | [INFO] [stderr] 69 | pub fn lower_mut(&mut self) -> &mut Reg { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/hw/cpu/register.rs:75:3 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn new(initial: u16) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/hw/cpu/register.rs:86:3 [INFO] [stderr] | [INFO] [stderr] 86 | pub fn new(initial: u8) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Processor` [INFO] [stderr] --> src/hw/cpu/mod.rs:26:12 [INFO] [stderr] | [INFO] [stderr] 26 | pub struct Processor { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/hw/cpu/mod.rs:37:3 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn new() -> Processor { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `start` [INFO] [stderr] --> src/hw/cpu/mod.rs:48:3 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn start(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `MMU` [INFO] [stderr] --> src/hw/mmu.rs:18:12 [INFO] [stderr] | [INFO] [stderr] 18 | pub struct MMU { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: the feature `try_from` has been stable since 1.34.0 and no longer requires an attribute to enable [INFO] [stderr] --> src/main.rs:18:12 [INFO] [stderr] | [INFO] [stderr] 18 | #![feature(try_from)] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(stable_features)]` on by default [INFO] [stderr] [INFO] [stderr] warning: this method call currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added. [INFO] [stderr] --> src/hw/cart.rs:431:19 [INFO] [stderr] | [INFO] [stderr] 431 | for &b in bytes.into_iter() { [INFO] [stderr] | ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(array_into_iter)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #66145 [INFO] [stderr] [INFO] [stderr] warning: 67 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.17s [INFO] running `"docker" "inspect" "dbe55e59afbb6e01d2653ae1a12588bf5c91f327ca937fb5fe5594cb5bc4256c"` [INFO] running `"docker" "rm" "-f" "dbe55e59afbb6e01d2653ae1a12588bf5c91f327ca937fb5fe5594cb5bc4256c"` [INFO] [stdout] dbe55e59afbb6e01d2653ae1a12588bf5c91f327ca937fb5fe5594cb5bc4256c