[INFO] updating cached repository fdb/emunes [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/fdb/emunes [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/fdb/emunes" "work/ex/beta-1.38-1/sources/1.37.0/gh/fdb/emunes"` [INFO] [stderr] Cloning into 'work/ex/beta-1.38-1/sources/1.37.0/gh/fdb/emunes'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/fdb/emunes" "work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/fdb/emunes"` [INFO] [stderr] Cloning into 'work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/fdb/emunes'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 04b7a21cdb19f0acc0f079363960108ed44d3797 [INFO] sha for GitHub repo fdb/emunes: 04b7a21cdb19f0acc0f079363960108ed44d3797 [INFO] validating manifest of fdb/emunes on toolchain 1.37.0 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of fdb/emunes on toolchain beta-2019-08-13 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing fdb/emunes [INFO] finished frobbing fdb/emunes [INFO] frobbed toml for fdb/emunes written to work/ex/beta-1.38-1/sources/1.37.0/gh/fdb/emunes/Cargo.toml [INFO] started frobbing fdb/emunes [INFO] finished frobbing fdb/emunes [INFO] frobbed toml for fdb/emunes written to work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/fdb/emunes/Cargo.toml [INFO] crate fdb/emunes already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] testing fdb/emunes against beta-2019-08-13 for beta-1.38-1 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-3/beta-2019-08-13:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/beta-2019-08-13/gh/fdb/emunes:/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" "+beta-2019-08-13" "build" "--frozen"` [INFO] [stdout] 01f386f05a68251bd8476e53b3cd33dcd94627ecc809f519491cb2a065041cbd [INFO] running `"docker" "start" "-a" "01f386f05a68251bd8476e53b3cd33dcd94627ecc809f519491cb2a065041cbd"` [INFO] [stderr] Compiling num-traits v0.1.42 [INFO] [stderr] Compiling libc v0.2.36 [INFO] [stderr] Compiling lazy_static v0.2.11 [INFO] [stderr] Compiling bitflags v1.0.1 [INFO] [stderr] Compiling sdl2-sys v0.31.0 [INFO] [stderr] Compiling rand v0.3.20 [INFO] [stderr] Compiling num-integer v0.1.35 [INFO] [stderr] Compiling num-iter v0.1.34 [INFO] [stderr] Compiling num v0.1.41 [INFO] [stderr] Compiling sdl2 v0.31.0 [INFO] [stderr] Compiling emunes v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `sdl2::render::TextureQuery` [INFO] [stderr] --> src/main.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use sdl2::render::TextureQuery; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around method argument [INFO] [stderr] --> src/cpu.rs:203:47 [INFO] [stderr] | [INFO] [stderr] 203 | let address = bus.read_16_bug((bus.read(self.pc + 1) as u16)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/bus.rs:33:19 [INFO] [stderr] | [INFO] [stderr] 33 | 0x0000...0x1FFF => self.ram[(address % 0x2000) as usize], [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/bus.rs:34:19 [INFO] [stderr] | [INFO] [stderr] 34 | 0x2000...0x3FFF => 0xCC, // TODO: self.ppu.read_register(0x2000 + address % 8) [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/bus.rs:35:19 [INFO] [stderr] | [INFO] [stderr] 35 | 0x4000...0x4013 => 0xFF, // TODO: read from APU registers [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/bus.rs:40:19 [INFO] [stderr] | [INFO] [stderr] 40 | 0x4018...0x5FFF => 0xFF, // TODO: I/O registers [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/bus.rs:41:19 [INFO] [stderr] | [INFO] [stderr] 41 | 0x6000...0xFFFF => self.mapper_read(address), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/bus.rs:59:19 [INFO] [stderr] | [INFO] [stderr] 59 | 0x0000...0x1FFF => self.ram[(address % 2048) as usize] = value, [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/bus.rs:60:19 [INFO] [stderr] | [INFO] [stderr] 60 | 0x4000...0x4013 | 0x4015 => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/bus.rs:69:19 [INFO] [stderr] | [INFO] [stderr] 69 | 0x0000...0x2000 => self.cartridge.chr[address as usize], [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/bus.rs:70:19 [INFO] [stderr] | [INFO] [stderr] 70 | 0x6000...0x7FFF => 0xCC, // TODO: self.cartridge.sram[address - 0x6000] [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/bus.rs:71:19 [INFO] [stderr] | [INFO] [stderr] 71 | 0x8000...0xBFFF => self.cartridge.prg[(address - 0x8000) as usize], [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/bus.rs:72:19 [INFO] [stderr] | [INFO] [stderr] 72 | 0xC000...0xFFFF => self.cartridge.prg[(address - 0xC000) as usize], [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/bus.rs:80:19 [INFO] [stderr] | [INFO] [stderr] 80 | 0x0000...0x1FFF => self.mapper_read(address), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/bus.rs:81:19 [INFO] [stderr] | [INFO] [stderr] 81 | 0x2000...0x3F00 => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/bus.rs:86:19 [INFO] [stderr] | [INFO] [stderr] 86 | 0x3F00...0x4000 => self.ppu_palette[(address % 32) as usize], [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/main.rs:112:19 [INFO] [stderr] | [INFO] [stderr] 112 | 0x0000...0x2000 => self.cartridge.chr[address as usize], [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/main.rs:113:19 [INFO] [stderr] | [INFO] [stderr] 113 | 0x2001...0xC000 => self.cartridge.prg[address as usize], [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/main.rs:120:19 [INFO] [stderr] | [INFO] [stderr] 120 | 0x0000...0x2000 => self.cartridge.chr[address as usize] = value, [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/main.rs:121:19 [INFO] [stderr] | [INFO] [stderr] 121 | 0x2001...0xC000 => self.cartridge.prg[address as usize] = value, [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/bus.rs:42:13 [INFO] [stderr] | [INFO] [stderr] 42 | _ => panic!("Invalid bus memory read at address {:04X}", address), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `buffer` [INFO] [stderr] --> src/main.rs:232:13 [INFO] [stderr] | [INFO] [stderr] 232 | let mut buffer: Vec = vec![0; WINDOW_WIDTH * WINDOW_HEIGHT]; [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_buffer` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `render_line` [INFO] [stderr] --> src/ppu.rs:91:13 [INFO] [stderr] | [INFO] [stderr] 91 | let render_line = pre_line || visible_line; [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_render_line` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `bus` [INFO] [stderr] --> src/ppu.rs:87:28 [INFO] [stderr] | [INFO] [stderr] 87 | pub fn step(&mut self, bus: &mut Bus) { [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_bus` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mode` [INFO] [stderr] --> src/bus.rs:82:21 [INFO] [stderr] | [INFO] [stderr] 82 | let mode = self.cartridge.mirror_mode; [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_mode` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `bus` [INFO] [stderr] --> src/apu.rs:53:28 [INFO] [stderr] | [INFO] [stderr] 53 | pub fn step(&mut self, bus: &mut Bus) { [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_bus` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:232:9 [INFO] [stderr] | [INFO] [stderr] 232 | let mut buffer: Vec = vec![0; WINDOW_WIDTH * WINDOW_HEIGHT]; [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: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:297:9 [INFO] [stderr] | [INFO] [stderr] 297 | let mut current_cps = 0; [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cpu.rs:812:21 [INFO] [stderr] | [INFO] [stderr] 812 | let mut c: u8 = if self.flags.intersects(Flags::CARRY) { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: method is never used: `log_string` [INFO] [stderr] --> src/console.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn log_string(&mut self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `log_string` [INFO] [stderr] --> src/cpu.rs:246:5 [INFO] [stderr] | [INFO] [stderr] 246 | pub fn log_string(&mut self, bus: &Bus) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `log` [INFO] [stderr] --> src/cpu.rs:325:5 [INFO] [stderr] | [INFO] [stderr] 325 | pub fn log(&mut self, bus: &Bus) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `PALETTE` [INFO] [stderr] --> src/ppu.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / const PALETTE: [u32; 64] = [ [INFO] [stderr] 4 | | 0x666666, 0x002A88, 0x1412A7, 0x3B00A4, 0x5C007E, 0x6E0040, 0x6C0600, 0x561D00, 0x333500, [INFO] [stderr] 5 | | 0x0B4800, 0x005200, 0x004F08, 0x00404D, 0x000000, 0x000000, 0x000000, 0xADADAD, 0x155FD9, [INFO] [stderr] 6 | | 0x4240FF, 0x7527FE, 0xA01ACC, 0xB71E7B, 0xB53120, 0x994E00, 0x6B6D00, 0x388700, 0x0C9300, [INFO] [stderr] ... | [INFO] [stderr] 11 | | 0x000000, [INFO] [stderr] 12 | | ]; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `fetch_tile_data` [INFO] [stderr] --> src/ppu.rs:42:5 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn fetch_tile_data(&self) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `background_pixel` [INFO] [stderr] --> src/ppu.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn background_pixel(&mut self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `read_palette` [INFO] [stderr] --> src/ppu.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn read_palette(&self, address: u16) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `render_pixel` [INFO] [stderr] --> src/ppu.rs:64:5 [INFO] [stderr] | [INFO] [stderr] 64 | pub fn render_pixel(&mut self, bus: &mut Bus) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `ppu_read` [INFO] [stderr] --> src/bus.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn ppu_read(&self, address: u16) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `AUDIO_BUFFER_SIZE` [INFO] [stderr] --> src/apu.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | const AUDIO_BUFFER_SIZE: u32 = 50 * 1024; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `LENGTH_TABLE` [INFO] [stderr] --> src/apu.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / const LENGTH_TABLE: [u8; 32] = [ [INFO] [stderr] 5 | | 10, 254, 20, 2, 40, 4, 80, 6, 160, 8, 60, 10, 14, 12, 26, 14, [INFO] [stderr] 6 | | 12, 16, 24, 18, 48, 20, 96, 22, 192, 24, 72, 26, 16, 28, 32, 30, [INFO] [stderr] 7 | | ]; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DUTY_TABLE` [INFO] [stderr] --> src/apu.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | / const DUTY_TABLE: [[u8; 8]; 4] = [ [INFO] [stderr] 9 | | [0, 1, 0, 0, 0, 0, 0, 0], [INFO] [stderr] 10 | | [0, 1, 1, 0, 0, 0, 0, 0], [INFO] [stderr] 11 | | [0, 1, 1, 1, 1, 0, 0, 0], [INFO] [stderr] 12 | | [1, 0, 0, 1, 1, 1, 1, 1], [INFO] [stderr] 13 | | ]; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `square_wave` [INFO] [stderr] --> src/apu.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn square_wave(&mut self, bus: &mut Bus, tone_hz: u32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Pulse` [INFO] [stderr] --> src/apu.rs:61:1 [INFO] [stderr] | [INFO] [stderr] 61 | pub struct Pulse { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `write_control` [INFO] [stderr] --> src/apu.rs:86:5 [INFO] [stderr] | [INFO] [stderr] 86 | pub fn write_control(&mut self, value: u8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `write_sweep` [INFO] [stderr] --> src/apu.rs:96:5 [INFO] [stderr] | [INFO] [stderr] 96 | pub fn write_sweep(&mut self, value: u8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `write_timer_low` [INFO] [stderr] --> src/apu.rs:104:5 [INFO] [stderr] | [INFO] [stderr] 104 | pub fn write_timer_low(&mut self, value: u8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `write_timer_high` [INFO] [stderr] --> src/apu.rs:108:5 [INFO] [stderr] | [INFO] [stderr] 108 | pub fn write_timer_high(&mut self, value: u8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `step_timer` [INFO] [stderr] --> src/apu.rs:115:5 [INFO] [stderr] | [INFO] [stderr] 115 | pub fn step_timer(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `step_envelope` [INFO] [stderr] --> src/apu.rs:124:5 [INFO] [stderr] | [INFO] [stderr] 124 | pub fn step_envelope(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `step_sweep` [INFO] [stderr] --> src/apu.rs:141:5 [INFO] [stderr] | [INFO] [stderr] 141 | pub fn step_sweep(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `step_length` [INFO] [stderr] --> src/apu.rs:158:5 [INFO] [stderr] | [INFO] [stderr] 158 | pub fn step_length(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `sweep` [INFO] [stderr] --> src/apu.rs:164:5 [INFO] [stderr] | [INFO] [stderr] 164 | pub fn sweep(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `output` [INFO] [stderr] --> src/apu.rs:176:5 [INFO] [stderr] | [INFO] [stderr] 176 | pub fn output(&mut self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: linking with `cc` failed: exit code: 1 [INFO] [stderr] | [INFO] [stderr] = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-L" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.0.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.1.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.10.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.11.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.12.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.13.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.14.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.15.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.2.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.3.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.4.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.5.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.6.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.7.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.8.rcgu.o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.emunes.39i2s11m-cgu.9.rcgu.o" "-o" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76" "/opt/crater/target/debug/deps/emunes-b0800be77eadcf76.29kn4ef6ssv11pkm.rcgu.o" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-nodefaultlibs" "-L" "/opt/crater/target/debug/deps" "-L" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/opt/crater/target/debug/deps/libsdl2-252309b7d6bdc8dd.rlib" "/opt/crater/target/debug/deps/librand-9e8a18a99733ed92.rlib" "/opt/crater/target/debug/deps/libsdl2_sys-6ec9d610426acc19.rlib" "/opt/crater/target/debug/deps/libbitflags-b03ee8d07369378c.rlib" "/opt/crater/target/debug/deps/liblazy_static-8e8f275d3efea5b8.rlib" "/opt/crater/target/debug/deps/liblibc-799fedc4a55ea1c4.rlib" "/opt/crater/target/debug/deps/libnum-388f775b6912edc6.rlib" "/opt/crater/target/debug/deps/libnum_iter-0227dc6788739170.rlib" "/opt/crater/target/debug/deps/libnum_integer-b6648a7d9569e1ff.rlib" "/opt/crater/target/debug/deps/libnum_traits-42dee9e564280929.rlib" "/opt/crater/target/debug/deps/libbitflags-8691998c5ee83e05.rlib" "-Wl,--start-group" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-1d6d86bd078a28e9.rlib" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-e9721e46a424e2a9.rlib" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace-c07193698f282147.rlib" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libbacktrace_sys-6da45690f3863086.rlib" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-690797036dd27680.rlib" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-d3896ccbfd8eda2b.rlib" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-7cccc3739e3d7623.rlib" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-5e9ba178a513cd29.rlib" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-5ca9f83bf63d1f4b.rlib" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-bba1c7ef9e950882.rlib" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-e23c9de62012deb5.rlib" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-9b59dffdcd513d5d.rlib" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-17392340ab2e4a97.rlib" "-Wl,--end-group" "/opt/crater/rustup-home/toolchains/beta-2019-08-13-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-ac21508a81e3f7f3.rlib" "-Wl,-Bdynamic" "-lSDL2_ttf" "-lSDL2" "-lutil" "-lutil" "-ldl" "-lrt" "-lpthread" "-lgcc_s" "-lc" "-lm" "-lrt" "-lpthread" "-lutil" "-lutil" [INFO] [stderr] = note: /usr/bin/ld: cannot find -lSDL2_ttf [INFO] [stderr] collect2: error: ld returned 1 exit status [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `emunes`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "01f386f05a68251bd8476e53b3cd33dcd94627ecc809f519491cb2a065041cbd"` [INFO] running `"docker" "rm" "-f" "01f386f05a68251bd8476e53b3cd33dcd94627ecc809f519491cb2a065041cbd"` [INFO] [stdout] 01f386f05a68251bd8476e53b3cd33dcd94627ecc809f519491cb2a065041cbd