[INFO] cloning repository https://github.com/sifton/gbers [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sifton/gbers" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsifton%2Fgbers", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsifton%2Fgbers'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 3a94b798299f625a7e94cb8cae3cb2f114735d7b [INFO] testing sifton/gbers against 1.60.0 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsifton%2Fgbers" "/workspace/builds/worker-17/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-17/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/sifton/gbers on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [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-17/source/Cargo.toml [INFO] crate git repo https://github.com/sifton/gbers already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded byte-slice-cast v0.1.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-17/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-17/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e4110567d493c74fb401bf4ae46142901aba65ca7cb2451fdf5c3619067c6742 [INFO] running `Command { std: "docker" "start" "-a" "e4110567d493c74fb401bf4ae46142901aba65ca7cb2451fdf5c3619067c6742", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e4110567d493c74fb401bf4ae46142901aba65ca7cb2451fdf5c3619067c6742", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e4110567d493c74fb401bf4ae46142901aba65ca7cb2451fdf5c3619067c6742", kill_on_drop: false }` [INFO] [stdout] e4110567d493c74fb401bf4ae46142901aba65ca7cb2451fdf5c3619067c6742 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-17/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-17/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f564f2bbfe657973ff317c1106e7501ddf06fa4dd551252e4702e311d3f2f446 [INFO] running `Command { std: "docker" "start" "-a" "f564f2bbfe657973ff317c1106e7501ddf06fa4dd551252e4702e311d3f2f446", kill_on_drop: false }` [INFO] [stderr] Compiling byte-slice-cast v0.1.0 [INFO] [stderr] Compiling bitflags v1.0.1 [INFO] [stderr] Compiling gbers v0.0.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::marker::PhantomData` [INFO] [stdout] --> src/hw/cart.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | use std::marker::PhantomData; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/hw/cart.rs:155:13 [INFO] [stdout] | [INFO] [stdout] 155 | let x = try!(Cartridge::new_no_check(bytes)); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/hw/cart.rs:157:13 [INFO] [stdout] | [INFO] [stdout] 157 | let _ = try!(check_header_sum(&x.rom)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/hw/cart.rs:163:15 [INFO] [stdout] | [INFO] [stdout] 163 | let rom = try!(ROM::from_raw_bytes(bytes)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/hw/cart.rs:165:17 [INFO] [stdout] | [INFO] [stdout] 165 | let title = try!(read_title(&rom)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/hw/cart.rs:166:22 [INFO] [stdout] | [INFO] [stdout] 166 | let components = try!(decode_components(&rom)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/hw/cart.rs:167:18 [INFO] [stdout] | [INFO] [stdout] 167 | let is_cgb = try!(decode_is_cgb(&rom)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/hw/cart.rs:168:18 [INFO] [stdout] | [INFO] [stdout] 168 | let is_sgb = try!(decode_is_sgb(&rom)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/hw/cart.rs:365:17 [INFO] [stdout] | [INFO] [stdout] 365 | let _romnum = try!(decode_rom_size(rom)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/hw/cart.rs:366:17 [INFO] [stdout] | [INFO] [stdout] 366 | let _ramnum = try!(decode_ram_size(rom)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TryInto` [INFO] [stdout] --> src/hw/cpu/instr.rs:28:35 [INFO] [stdout] | [INFO] [stdout] 28 | use std::convert::{Into, TryFrom, TryInto}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/hw/cpu/register.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | ((self.upper.get() << 8 + self.lower.get()) as u16) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 46 - ((self.upper.get() << 8 + self.lower.get()) as u16) [INFO] [stdout] 46 + (self.upper.get() << 8 + self.lower.get()) as u16 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::cart` [INFO] [stdout] --> src/hw/cpu/mod.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | use super::cart; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/hw/cart.rs:190:12 [INFO] [stdout] | [INFO] [stdout] 190 | Ok(x) => bytes, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `raw` [INFO] [stdout] --> src/hw/cpu/instr.rs:75:17 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn decode(raw: &[u8]) -> Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_raw` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `gbers` due to 2 previous errors; 64 warnings emitted [INFO] [stdout] warning: unused variable: `dec` [INFO] [stdout] --> src/hw/cpu/instr.rs:157:13 [INFO] [stdout] | [INFO] [stdout] 157 | fn from(dec: Decoder) -> Decoder { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_dec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `rom` [INFO] [stdout] --> src/hw/cart.rs:62:3 [INFO] [stdout] | [INFO] [stdout] 62 | rom: &'a ROM, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] note: `ROMSlice` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hw/cart.rs:60:10 [INFO] [stdout] | [INFO] [stdout] 60 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `KILOBYTE_BYTES` [INFO] [stdout] --> src/hw/cart.rs:111:1 [INFO] [stdout] | [INFO] [stdout] 111 | const KILOBYTE_BYTES: usize = 1024; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `has_component` [INFO] [stdout] --> src/hw/cart.rs:206:10 [INFO] [stdout] | [INFO] [stdout] 206 | pub fn has_component(&self, cmp: Component) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `bytes` [INFO] [stdout] --> src/hw/cart.rs:260:6 [INFO] [stdout] | [INFO] [stdout] 260 | fn bytes(&self) -> &'a [u8] { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `size_bytes` [INFO] [stdout] --> src/hw/cart.rs:277:10 [INFO] [stdout] | [INFO] [stdout] 277 | pub fn size_bytes(self) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `size_bytes` [INFO] [stdout] --> src/hw/cart.rs:320:10 [INFO] [stdout] | [INFO] [stdout] 320 | pub fn size_bytes(self) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Processor` [INFO] [stdout] --> src/hw/cpu/mod.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Processor { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/hw/cpu/mod.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn new() -> Processor { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `start` [INFO] [stdout] --> src/hw/cpu/mod.rs:48:10 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn start(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `MMU` [INFO] [stdout] --> src/hw/mmu.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct MMU { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `META_ENTRY` [INFO] [stdout] --> src/hw/cart.rs:122:3 [INFO] [stdout] | [INFO] [stdout] 122 | pub const META_ENTRY: Region<[u8; 0x4]> = Region(0x100, 0x104, PhantomData); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `META_LOGO` [INFO] [stdout] --> src/hw/cart.rs:123:3 [INFO] [stdout] | [INFO] [stdout] 123 | pub const META_LOGO: Region<[u8; 0x30]> = Region(0x104, 0x134, PhantomData); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `META_MANUFACTURER` [INFO] [stdout] --> src/hw/cart.rs:125:3 [INFO] [stdout] | [INFO] [stdout] 125 | pub const META_MANUFACTURER: Region = Region(0x13F, 0x143, PhantomData); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `META_LICENSEE` [INFO] [stdout] --> src/hw/cart.rs:127:3 [INFO] [stdout] | [INFO] [stdout] 127 | pub const META_LICENSEE: Region = Region(0x144, 0x146, PhantomData); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `META_DEST` [INFO] [stdout] --> src/hw/cart.rs:132:3 [INFO] [stdout] | [INFO] [stdout] 132 | pub const META_DEST: Region = Region(0x14A, 0x14B, PhantomData); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `META_LICENSEE_OLD` [INFO] [stdout] --> src/hw/cart.rs:133:3 [INFO] [stdout] | [INFO] [stdout] 133 | pub const META_LICENSEE_OLD: Region = Region(0x14B, 0x14C, PhantomData); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `META_VERSION` [INFO] [stdout] --> src/hw/cart.rs:134:3 [INFO] [stdout] | [INFO] [stdout] 134 | pub const META_VERSION: Region = Region(0x14C, 0x14D, PhantomData); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `META_CHECKSUM_ALL` [INFO] [stdout] --> src/hw/cart.rs:136:3 [INFO] [stdout] | [INFO] [stdout] 136 | pub const META_CHECKSUM_ALL: Region = Region(0x14E, 0x150, PhantomData); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `EXEC_BOOT` [INFO] [stdout] --> src/hw/cart.rs:140:3 [INFO] [stdout] | [INFO] [stdout] 140 | pub const EXEC_BOOT: Region<[u8; 256]> = Region(0x0, 0x256, PhantomData); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CYCLE_INCREMENT` [INFO] [stdout] --> src/hw/cpu/clock.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | const CYCLE_INCREMENT: usize = 4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Clock` [INFO] [stdout] --> src/hw/cpu/clock.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct Clock { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `Frequency` [INFO] [stdout] --> src/hw/cpu/clock.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | pub enum Frequency { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/hw/cpu/clock.rs:33:10 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn new(freq: Frequency) -> Clock { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new_start_time` [INFO] [stdout] --> src/hw/cpu/clock.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn new_start_time(time: usize, freq: Frequency) -> Clock { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `incr` [INFO] [stdout] --> src/hw/cpu/clock.rs:44:10 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn incr(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `incr_n` [INFO] [stdout] --> src/hw/cpu/clock.rs:48:10 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn incr_n(&mut self, n: usize) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `time` [INFO] [stdout] --> src/hw/cpu/clock.rs:52:10 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn time(&self) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `Immediate` [INFO] [stdout] --> src/hw/cpu/instr.rs:44:6 [INFO] [stdout] | [INFO] [stdout] 44 | enum Immediate { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `Opcode` [INFO] [stdout] --> src/hw/cpu/instr.rs:50:6 [INFO] [stdout] | [INFO] [stdout] 50 | enum Opcode { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `Instr` [INFO] [stdout] --> src/hw/cpu/instr.rs:54:6 [INFO] [stdout] | [INFO] [stdout] 54 | enum Instr { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias is never used: `Result` [INFO] [stdout] --> src/hw/cpu/instr.rs:71:1 [INFO] [stdout] | [INFO] [stdout] 71 | type Result = result::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `decode` [INFO] [stdout] --> src/hw/cpu/instr.rs:75:10 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn decode(raw: &[u8]) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Zero` [INFO] [stdout] --> src/hw/cpu/register.rs:38:3 [INFO] [stdout] | [INFO] [stdout] 38 | Zero = 1 << 7, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `AddSub` [INFO] [stdout] --> src/hw/cpu/register.rs:39:3 [INFO] [stdout] | [INFO] [stdout] 39 | AddSub = 1 << 6, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `HalfCarry` [INFO] [stdout] --> src/hw/cpu/register.rs:40:3 [INFO] [stdout] | [INFO] [stdout] 40 | HalfCarry = 1 << 5, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Carry` [INFO] [stdout] --> src/hw/cpu/register.rs:41:3 [INFO] [stdout] | [INFO] [stdout] 41 | Carry = 1 << 4 [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `upper` [INFO] [stdout] --> src/hw/cpu/register.rs:57:10 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn upper(&self) -> &Reg { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `upper_mut` [INFO] [stdout] --> src/hw/cpu/register.rs:61:10 [INFO] [stdout] | [INFO] [stdout] 61 | pub fn upper_mut(&mut self) -> &mut Reg { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `lower` [INFO] [stdout] --> src/hw/cpu/register.rs:65:10 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn lower(&self) -> &Reg { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `lower_mut` [INFO] [stdout] --> src/hw/cpu/register.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn lower_mut(&mut self) -> &mut Reg { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/hw/cpu/register.rs:75:10 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn new(initial: u16) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/hw/cpu/register.rs:86:10 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn new(initial: u8) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias is never used: `Result` [INFO] [stdout] --> src/hw/cpu/instr.rs:109:3 [INFO] [stdout] | [INFO] [stdout] 109 | pub type Result = result::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `bytes` [INFO] [stdout] --> src/hw/cpu/instr.rs:115:5 [INFO] [stdout] | [INFO] [stdout] 115 | bytes: [u8; 4], [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `state` [INFO] [stdout] --> src/hw/cpu/instr.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | state: S, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/hw/cpu/instr.rs:148:12 [INFO] [stdout] | [INFO] [stdout] 148 | pub fn new(bytes: [u8; 4]) -> Decoder { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel [INFO] [stdout] --> src/main.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | #![feature(try_from)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `try_from` has been stable since 1.34.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/main.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | #![feature(try_from)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021 [INFO] [stdout] --> src/hw/cart.rs:431:19 [INFO] [stdout] | [INFO] [stdout] 431 | for &b in bytes.into_iter() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(array_into_iter)]` on by default [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 431 | for &b in bytes.iter() { [INFO] [stdout] | ~~~~ [INFO] [stdout] help: or remove `.into_iter()` to iterate by value [INFO] [stdout] | [INFO] [stdout] 431 - for &b in bytes.into_iter() { [INFO] [stdout] 431 + for &b in bytes { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error; 64 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0554`. [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "f564f2bbfe657973ff317c1106e7501ddf06fa4dd551252e4702e311d3f2f446", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f564f2bbfe657973ff317c1106e7501ddf06fa4dd551252e4702e311d3f2f446", kill_on_drop: false }` [INFO] [stdout] f564f2bbfe657973ff317c1106e7501ddf06fa4dd551252e4702e311d3f2f446