[INFO] updating cached repository https://github.com/iburinoc/gba-rs [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] d5e59ca598eaff908d871dde9a9795b4d332257b [INFO] testing iburinoc/gba-rs against 1.44.0 for beta-1.45-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fiburinoc%2Fgba-rs" "/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/iburinoc/gba-rs on toolchain 1.44.0 [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/iburinoc/gba-rs [INFO] finished tweaking git repo https://github.com/iburinoc/gba-rs [INFO] tweaked toml for git repo https://github.com/iburinoc/gba-rs written to /workspace/builds/worker-4/source/Cargo.toml [INFO] crate git repo https://github.com/iburinoc/gba-rs already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "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=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.44.0" "build" "--frozen"` [INFO] [stdout] a59b218758e99532c4b10bf0cbdfe01b5884468c17bdc136df8945a08bc5a637 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "a59b218758e99532c4b10bf0cbdfe01b5884468c17bdc136df8945a08bc5a637"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling proc-macro2 v1.0.3 [INFO] [stderr] Compiling syn v1.0.5 [INFO] [stderr] Compiling serde v1.0.101 [INFO] [stderr] Compiling arraydeque v0.4.5 [INFO] [stderr] Compiling gba-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling num-integer v0.1.41 [INFO] [stderr] Compiling bincode v1.1.4 [INFO] [stderr] Compiling sdl2-sys v0.31.0 [INFO] [stderr] Compiling humantime v1.3.0 [INFO] [stderr] Compiling thread-id v3.3.0 [INFO] [stderr] Compiling memmap v0.6.2 [INFO] [stderr] Compiling jobserver v0.1.17 [INFO] [stderr] Compiling rand v0.3.23 [INFO] [stderr] Compiling env_logger v0.5.13 [INFO] [stderr] Compiling cc v1.0.45 [INFO] [stderr] Compiling num-iter v0.1.39 [INFO] [stderr] Compiling num v0.1.42 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Compiling zstd-sys v1.4.13+zstd.1.4.3 [INFO] [stderr] Compiling sdl2 v0.31.0 [INFO] [stderr] Compiling serde_derive v1.0.101 [INFO] [stderr] Compiling serde_json v1.0.40 [INFO] [stderr] Compiling arm7tdmi-rs v0.1.0 (https://github.com/daniel5151/arm7tdmi-rs.git#9bbf5e75) [INFO] [stderr] Compiling flame v0.2.2 [INFO] [stderr] Compiling zstd-safe v1.4.13+zstd.1.4.3 [INFO] [stderr] Compiling zstd v0.4.28+zstd.1.4.3 [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/io/ppu/render/mod.rs:124:5 [INFO] [stderr] | [INFO] [stderr] 124 | ((colour.0 as u32) << 16 | (colour.1 as u32) << 8 | (colour.2 as u32)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `AudioSpecDesired` [INFO] [stderr] --> src/io/spu/mod.rs:5:34 [INFO] [stderr] | [INFO] [stderr] 5 | use sdl2::audio::{AudioCallback, AudioSpecDesired}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `mmu::gba::Gba as GbaMmu` [INFO] [stderr] --> src/io/spu/mod.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use mmu::gba::Gba as GbaMmu; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::u16` [INFO] [stderr] --> src/io/mod.rs:270:9 [INFO] [stderr] | [INFO] [stderr] 270 | use std::u16; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::u16` [INFO] [stderr] --> src/io/mod.rs:280:9 [INFO] [stderr] | [INFO] [stderr] 280 | use std::u16; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mmu/gba/mod.rs:154:57 [INFO] [stderr] | [INFO] [stderr] 154 | pub fn get_range(&self, addr: u32) -> Option<(u32, &Mmu)> { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Mmu` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mmu/gba/mod.rs:173:69 [INFO] [stderr] | [INFO] [stderr] 173 | pub fn get_range_mut(&mut self, addr: u32) -> Option<(u32, &mut Mmu)> { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Mmu` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/gba/mod.rs:80:46 [INFO] [stderr] | [INFO] [stderr] 80 | let mut gba: Box = Box::new(mem::uninitialized()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/gba/save_state.rs:82:49 [INFO] [stderr] | [INFO] [stderr] 82 | let mut gba: Gba<'static> = mem::uninitialized(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/main.rs:100:41 [INFO] [stderr] | [INFO] [stderr] 100 | Err(err) => Err(err.description().to_string()), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `mask_match` [INFO] [stderr] --> src/bit_util.rs:10:8 [INFO] [stderr] | [INFO] [stderr] 10 | pub fn mask_match(val: u32, mask: u32, test: u32) -> bool { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `set` [INFO] [stderr] --> src/bit_util.rs:15:8 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn set(base: u32, off: u8, len: u8, val: u32) -> u32 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `shift_lsl` [INFO] [stderr] --> src/bit_util.rs:36:8 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn shift_lsl(val: u32, rot: u32) -> (u32, u32) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `shift_lsr` [INFO] [stderr] --> src/bit_util.rs:45:8 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn shift_lsr(val: u32, rot: u32) -> (u32, u32) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `shift_asr` [INFO] [stderr] --> src/bit_util.rs:55:8 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn shift_asr(val: u32, rot: u32) -> (u32, u32) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `shift_ror` [INFO] [stderr] --> src/bit_util.rs:64:8 [INFO] [stderr] | [INFO] [stderr] 64 | pub fn shift_ror(val: u32, rot: u32) -> (u32, u32) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_pos` [INFO] [stderr] --> src/bit_util.rs:72:8 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn is_pos(val: u32) -> bool { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_neg` [INFO] [stderr] --> src/bit_util.rs:77:8 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn is_neg(val: u32) -> bool { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `add_flags` [INFO] [stderr] --> src/bit_util.rs:83:8 [INFO] [stderr] | [INFO] [stderr] 83 | pub fn add_flags(lhs: u32, rhs: u32, carry: u32) -> (u32, u32, u32) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sub_flags` [INFO] [stderr] --> src/bit_util.rs:99:8 [INFO] [stderr] | [INFO] [stderr] 99 | pub fn sub_flags(lhs: u32, rhs: u32, carry: u32) -> (u32, u32, u32) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `combine64` [INFO] [stderr] --> src/bit_util.rs:115:8 [INFO] [stderr] | [INFO] [stderr] 115 | pub fn combine64(hi: u32, lo: u32) -> u64 { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `split64` [INFO] [stderr] --> src/bit_util.rs:122:8 [INFO] [stderr] | [INFO] [stderr] 122 | pub fn split64(quad: u64) -> (u32, u32) { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `SoundFifo` [INFO] [stderr] --> src/io/dma.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | SoundFifo, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `io` [INFO] [stderr] --> src/io/spu/mod.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | io: Shared>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new_with_data` [INFO] [stderr] --> src/mmu/ram.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn new_with_data(size: usize, data: &[u8]) -> Ram { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the type `gba::Gba` does not permit being left uninitialized [INFO] [stderr] --> src/gba/mod.rs:80:46 [INFO] [stderr] | [INFO] [stderr] 80 | let mut gba: Box = Box::new(mem::uninitialized()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(invalid_value)]` on by default [INFO] [stderr] note: booleans must be either `true` or `false` (in this struct field) [INFO] [stderr] --> src/gba/mod.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | pub fps_limit: bool, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the type `gba::Gba` does not permit being left uninitialized [INFO] [stderr] --> src/gba/save_state.rs:82:49 [INFO] [stderr] | [INFO] [stderr] 82 | let mut gba: Gba<'static> = mem::uninitialized(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] | [INFO] [stderr] note: booleans must be either `true` or `false` (in this struct field) [INFO] [stderr] --> src/gba/mod.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | pub fps_limit: bool, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 27 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2m 01s [INFO] running `"docker" "inspect" "a59b218758e99532c4b10bf0cbdfe01b5884468c17bdc136df8945a08bc5a637"` [INFO] running `"docker" "rm" "-f" "a59b218758e99532c4b10bf0cbdfe01b5884468c17bdc136df8945a08bc5a637"` [INFO] [stdout] a59b218758e99532c4b10bf0cbdfe01b5884468c17bdc136df8945a08bc5a637 [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=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.44.0" "test" "--frozen" "--no-run"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] eabf7fd88320528aaef643fbb3bbbf05f8d8802300f8d296d3eff9df1cf570b7 [INFO] running `"docker" "start" "-a" "eabf7fd88320528aaef643fbb3bbbf05f8d8802300f8d296d3eff9df1cf570b7"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling gba-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/io/ppu/render/mod.rs:124:5 [INFO] [stderr] | [INFO] [stderr] 124 | ((colour.0 as u32) << 16 | (colour.1 as u32) << 8 | (colour.2 as u32)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `AudioSpecDesired` [INFO] [stderr] --> src/io/spu/mod.rs:5:34 [INFO] [stderr] | [INFO] [stderr] 5 | use sdl2::audio::{AudioCallback, AudioSpecDesired}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `mmu::gba::Gba as GbaMmu` [INFO] [stderr] --> src/io/spu/mod.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use mmu::gba::Gba as GbaMmu; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::u16` [INFO] [stderr] --> src/io/mod.rs:270:9 [INFO] [stderr] | [INFO] [stderr] 270 | use std::u16; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::u16` [INFO] [stderr] --> src/io/mod.rs:280:9 [INFO] [stderr] | [INFO] [stderr] 280 | use std::u16; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mmu/gba/mod.rs:154:57 [INFO] [stderr] | [INFO] [stderr] 154 | pub fn get_range(&self, addr: u32) -> Option<(u32, &Mmu)> { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Mmu` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mmu/gba/mod.rs:173:69 [INFO] [stderr] | [INFO] [stderr] 173 | pub fn get_range_mut(&mut self, addr: u32) -> Option<(u32, &mut Mmu)> { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Mmu` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/gba/mod.rs:80:46 [INFO] [stderr] | [INFO] [stderr] 80 | let mut gba: Box = Box::new(mem::uninitialized()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/gba/save_state.rs:82:49 [INFO] [stderr] | [INFO] [stderr] 82 | let mut gba: Gba<'static> = mem::uninitialized(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/test.rs:1:23 [INFO] [stderr] | [INFO] [stderr] 1 | use std::sync::{Once, ONCE_INIT}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/test.rs:5:21 [INFO] [stderr] | [INFO] [stderr] 5 | static INIT: Once = ONCE_INIT; [INFO] [stderr] | ^^^^^^^^^ help: replace the use of the deprecated item: `Once::new()` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/main.rs:100:41 [INFO] [stderr] | [INFO] [stderr] 100 | Err(err) => Err(err.description().to_string()), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `mask_match` [INFO] [stderr] --> src/bit_util.rs:10:8 [INFO] [stderr] | [INFO] [stderr] 10 | pub fn mask_match(val: u32, mask: u32, test: u32) -> bool { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `set` [INFO] [stderr] --> src/bit_util.rs:15:8 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn set(base: u32, off: u8, len: u8, val: u32) -> u32 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `shift_asr` [INFO] [stderr] --> src/bit_util.rs:55:8 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn shift_asr(val: u32, rot: u32) -> (u32, u32) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_pos` [INFO] [stderr] --> src/bit_util.rs:72:8 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn is_pos(val: u32) -> bool { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_neg` [INFO] [stderr] --> src/bit_util.rs:77:8 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn is_neg(val: u32) -> bool { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `add_flags` [INFO] [stderr] --> src/bit_util.rs:83:8 [INFO] [stderr] | [INFO] [stderr] 83 | pub fn add_flags(lhs: u32, rhs: u32, carry: u32) -> (u32, u32, u32) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sub_flags` [INFO] [stderr] --> src/bit_util.rs:99:8 [INFO] [stderr] | [INFO] [stderr] 99 | pub fn sub_flags(lhs: u32, rhs: u32, carry: u32) -> (u32, u32, u32) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `combine64` [INFO] [stderr] --> src/bit_util.rs:115:8 [INFO] [stderr] | [INFO] [stderr] 115 | pub fn combine64(hi: u32, lo: u32) -> u64 { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `split64` [INFO] [stderr] --> src/bit_util.rs:122:8 [INFO] [stderr] | [INFO] [stderr] 122 | pub fn split64(quad: u64) -> (u32, u32) { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `SoundFifo` [INFO] [stderr] --> src/io/dma.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | SoundFifo, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `io` [INFO] [stderr] --> src/io/spu/mod.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | io: Shared>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new_with_data` [INFO] [stderr] --> src/mmu/ram.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn new_with_data(size: usize, data: &[u8]) -> Ram { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `INIT` [INFO] [stderr] --> src/test.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | static INIT: Once = ONCE_INIT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `setup` [INFO] [stderr] --> src/test.rs:7:8 [INFO] [stderr] | [INFO] [stderr] 7 | pub fn setup() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the type `gba::Gba` does not permit being left uninitialized [INFO] [stderr] --> src/gba/mod.rs:80:46 [INFO] [stderr] | [INFO] [stderr] 80 | let mut gba: Box = Box::new(mem::uninitialized()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(invalid_value)]` on by default [INFO] [stderr] note: booleans must be either `true` or `false` (in this struct field) [INFO] [stderr] --> src/gba/mod.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | pub fps_limit: bool, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the type `gba::Gba` does not permit being left uninitialized [INFO] [stderr] --> src/gba/save_state.rs:82:49 [INFO] [stderr] | [INFO] [stderr] 82 | let mut gba: Gba<'static> = mem::uninitialized(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] | [INFO] [stderr] note: booleans must be either `true` or `false` (in this struct field) [INFO] [stderr] --> src/gba/mod.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | pub fps_limit: bool, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 28 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 4.21s [INFO] running `"docker" "inspect" "eabf7fd88320528aaef643fbb3bbbf05f8d8802300f8d296d3eff9df1cf570b7"` [INFO] running `"docker" "rm" "-f" "eabf7fd88320528aaef643fbb3bbbf05f8d8802300f8d296d3eff9df1cf570b7"` [INFO] [stdout] eabf7fd88320528aaef643fbb3bbbf05f8d8802300f8d296d3eff9df1cf570b7 [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=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.44.0" "test" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 76d584c2dfd02f9fec420054f8421118ca702ab9d0bb47ad3fac27d2d7f1ab0c [INFO] running `"docker" "start" "-a" "76d584c2dfd02f9fec420054f8421118ca702ab9d0bb47ad3fac27d2d7f1ab0c"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/io/ppu/render/mod.rs:124:5 [INFO] [stderr] | [INFO] [stderr] 124 | ((colour.0 as u32) << 16 | (colour.1 as u32) << 8 | (colour.2 as u32)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `AudioSpecDesired` [INFO] [stderr] --> src/io/spu/mod.rs:5:34 [INFO] [stderr] | [INFO] [stderr] 5 | use sdl2::audio::{AudioCallback, AudioSpecDesired}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `mmu::gba::Gba as GbaMmu` [INFO] [stderr] --> src/io/spu/mod.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use mmu::gba::Gba as GbaMmu; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::u16` [INFO] [stderr] --> src/io/mod.rs:270:9 [INFO] [stderr] | [INFO] [stderr] 270 | use std::u16; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::u16` [INFO] [stderr] --> src/io/mod.rs:280:9 [INFO] [stderr] | [INFO] [stderr] 280 | use std::u16; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mmu/gba/mod.rs:154:57 [INFO] [stderr] | [INFO] [stderr] 154 | pub fn get_range(&self, addr: u32) -> Option<(u32, &Mmu)> { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Mmu` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/mmu/gba/mod.rs:173:69 [INFO] [stderr] | [INFO] [stderr] 173 | pub fn get_range_mut(&mut self, addr: u32) -> Option<(u32, &mut Mmu)> { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Mmu` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/gba/mod.rs:80:46 [INFO] [stderr] | [INFO] [stderr] 80 | let mut gba: Box = Box::new(mem::uninitialized()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/gba/save_state.rs:82:49 [INFO] [stderr] | [INFO] [stderr] 82 | let mut gba: Gba<'static> = mem::uninitialized(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/test.rs:1:23 [INFO] [stderr] | [INFO] [stderr] 1 | use std::sync::{Once, ONCE_INIT}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/test.rs:5:21 [INFO] [stderr] | [INFO] [stderr] 5 | static INIT: Once = ONCE_INIT; [INFO] [stderr] | ^^^^^^^^^ help: replace the use of the deprecated item: `Once::new()` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/main.rs:100:41 [INFO] [stderr] | [INFO] [stderr] 100 | Err(err) => Err(err.description().to_string()), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `mask_match` [INFO] [stderr] --> src/bit_util.rs:10:8 [INFO] [stderr] | [INFO] [stderr] 10 | pub fn mask_match(val: u32, mask: u32, test: u32) -> bool { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `set` [INFO] [stderr] --> src/bit_util.rs:15:8 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn set(base: u32, off: u8, len: u8, val: u32) -> u32 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `shift_asr` [INFO] [stderr] --> src/bit_util.rs:55:8 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn shift_asr(val: u32, rot: u32) -> (u32, u32) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_pos` [INFO] [stderr] --> src/bit_util.rs:72:8 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn is_pos(val: u32) -> bool { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_neg` [INFO] [stderr] --> src/bit_util.rs:77:8 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn is_neg(val: u32) -> bool { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `add_flags` [INFO] [stderr] --> src/bit_util.rs:83:8 [INFO] [stderr] | [INFO] [stderr] 83 | pub fn add_flags(lhs: u32, rhs: u32, carry: u32) -> (u32, u32, u32) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sub_flags` [INFO] [stderr] --> src/bit_util.rs:99:8 [INFO] [stderr] | [INFO] [stderr] 99 | pub fn sub_flags(lhs: u32, rhs: u32, carry: u32) -> (u32, u32, u32) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `combine64` [INFO] [stderr] --> src/bit_util.rs:115:8 [INFO] [stderr] | [INFO] [stderr] 115 | pub fn combine64(hi: u32, lo: u32) -> u64 { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `split64` [INFO] [stderr] --> src/bit_util.rs:122:8 [INFO] [stderr] | [INFO] [stderr] 122 | pub fn split64(quad: u64) -> (u32, u32) { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `SoundFifo` [INFO] [stderr] --> src/io/dma.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | SoundFifo, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `io` [INFO] [stderr] --> src/io/spu/mod.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | io: Shared>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new_with_data` [INFO] [stderr] --> src/mmu/ram.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn new_with_data(size: usize, data: &[u8]) -> Ram { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `INIT` [INFO] [stderr] --> src/test.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | static INIT: Once = ONCE_INIT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `setup` [INFO] [stderr] --> src/test.rs:7:8 [INFO] [stderr] | [INFO] [stderr] 7 | pub fn setup() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the type `gba::Gba` does not permit being left uninitialized [INFO] [stderr] --> src/gba/mod.rs:80:46 [INFO] [stderr] | [INFO] [stderr] 80 | let mut gba: Box = Box::new(mem::uninitialized()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(invalid_value)]` on by default [INFO] [stderr] note: booleans must be either `true` or `false` (in this struct field) [INFO] [stderr] --> src/gba/mod.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | pub fps_limit: bool, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the type `gba::Gba` does not permit being left uninitialized [INFO] [stderr] --> src/gba/save_state.rs:82:49 [INFO] [stderr] | [INFO] [stderr] 82 | let mut gba: Gba<'static> = mem::uninitialized(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] | [INFO] [stderr] note: booleans must be either `true` or `false` (in this struct field) [INFO] [stderr] --> src/gba/mod.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | pub fps_limit: bool, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 28 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.10s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/gba_rs-17a06dd25fd9e79d [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test bit_util::test::signed_conversions ... ok [INFO] [stdout] test bit_util::test::test_shifts ... ok [INFO] [stdout] test bit_util::test::test_overrotate ... ok [INFO] [stdout] test io::ppu::render::combine::test::test_alpha_blend1 ... ok [INFO] [stdout] test io::ppu::render::combine::test::test_alpha_blend2 ... ok [INFO] [stdout] test shared::test::test_shared ... ok [INFO] [stdout] test io::ppu::render::test::test_colourconvert ... ok [INFO] [stdout] test bit_util::test::test_sign_extend ... ok [INFO] [stdout] test shared::test::test_uninitialized ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "76d584c2dfd02f9fec420054f8421118ca702ab9d0bb47ad3fac27d2d7f1ab0c"` [INFO] running `"docker" "rm" "-f" "76d584c2dfd02f9fec420054f8421118ca702ab9d0bb47ad3fac27d2d7f1ab0c"` [INFO] [stdout] 76d584c2dfd02f9fec420054f8421118ca702ab9d0bb47ad3fac27d2d7f1ab0c