[INFO] cloning repository https://github.com/PrattFall/oxide-gb [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/PrattFall/oxide-gb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPrattFall%2Foxide-gb", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPrattFall%2Foxide-gb'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 7cf13ad16c5cd7ff28afcc28cf4795e9fd017424 [INFO] testing PrattFall/oxide-gb against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_getrandom_patch_1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPrattFall%2Foxide-gb" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/PrattFall/oxide-gb [INFO] finished tweaking git repo https://github.com/PrattFall/oxide-gb [INFO] tweaked toml for git repo https://github.com/PrattFall/oxide-gb written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/PrattFall/oxide-gb on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/PrattFall/oxide-gb already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 89829e4f46e8bba4e42b1944a4de05e335c55348c36a5744e347b7cfb1691e14 [INFO] running `Command { std: "docker" "start" "-a" "89829e4f46e8bba4e42b1944a4de05e335c55348c36a5744e347b7cfb1691e14", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "89829e4f46e8bba4e42b1944a4de05e335c55348c36a5744e347b7cfb1691e14", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "89829e4f46e8bba4e42b1944a4de05e335c55348c36a5744e347b7cfb1691e14", kill_on_drop: false }` [INFO] [stdout] 89829e4f46e8bba4e42b1944a4de05e335c55348c36a5744e347b7cfb1691e14 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 35ee53d4d01a25027264cbd2470bc40fa47baa4695b0ddf02e5ae5f17b5baa58 [INFO] running `Command { std: "docker" "start" "-a" "35ee53d4d01a25027264cbd2470bc40fa47baa4695b0ddf02e5ae5f17b5baa58", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.149 [INFO] [stderr] Compiling xml-rs v0.8.19 [INFO] [stderr] Compiling smallvec v1.11.1 [INFO] [stderr] Compiling memchr v2.6.4 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Compiling libloading v0.8.1 [INFO] [stderr] Compiling wayland-sys v0.29.5 [INFO] [stderr] Compiling x11-dl v2.21.0 [INFO] [stderr] Compiling smithay-client-toolkit v0.15.4 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Compiling gimli v0.28.0 [INFO] [stderr] Compiling rustc-demangle v0.1.23 [INFO] [stderr] Compiling miniz_oxide v0.7.1 [INFO] [stderr] Compiling dlib v0.5.2 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling object v0.32.1 [INFO] [stderr] Compiling wayland-scanner v0.29.5 [INFO] [stderr] Compiling gl_generator v0.14.0 [INFO] [stderr] Compiling glutin_glx_sys v0.1.8 [INFO] [stderr] Compiling glutin_egl_sys v0.1.6 [INFO] [stderr] Compiling glium v0.31.0 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Compiling wayland-client v0.29.5 [INFO] [stderr] Compiling nix v0.24.3 [INFO] [stderr] Compiling wayland-protocols v0.29.5 [INFO] [stderr] Compiling nix v0.22.3 [INFO] [stderr] Compiling memmap2 v0.3.1 [INFO] [stderr] Compiling parking_lot_core v0.8.6 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Compiling mio v0.8.8 [INFO] [stderr] Compiling shared_library v0.1.9 [INFO] [stderr] Compiling num-complex v0.4.4 [INFO] [stderr] Compiling parking_lot v0.11.2 [INFO] [stderr] Compiling osmesa-sys v0.1.2 [INFO] [stderr] Compiling addr2line v0.21.0 [INFO] [stderr] Compiling xcursor v0.3.4 [INFO] [stderr] Compiling num-iter v0.1.43 [INFO] [stderr] Compiling backtrace v0.3.69 [INFO] [stderr] Compiling wayland-commons v0.29.5 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Compiling num v0.4.1 [INFO] [stderr] Compiling wayland-cursor v0.29.5 [INFO] [stderr] Compiling wayland-egl v0.29.5 [INFO] [stderr] Compiling calloop v0.9.3 [INFO] [stderr] Compiling winit v0.26.1 [INFO] [stderr] Compiling glutin v0.28.0 [INFO] [stderr] Compiling oxide-gb v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `RAM_ENABLE_VALUE` [INFO] [stdout] --> src/mbc.rs:107:22 [INFO] [stdout] | [INFO] [stdout] 107 | use super::{MBC, RAM_ENABLE_VALUE}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ram` [INFO] [stdout] --> src/video.rs:39:23 [INFO] [stdout] | [INFO] [stdout] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ram` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tile_index` [INFO] [stdout] --> src/video.rs:39:33 [INFO] [stdout] | [INFO] [stdout] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tile_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/cartridge_header.rs:92:9 [INFO] [stdout] | [INFO] [stdout] 91 | pub struct CartridgeHeader { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 92 | pub title: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 93 | pub manufacturer: String, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 94 | pub cartridge_type: CartridgeType, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 95 | pub color_gameboy_support: ColorGameboySupport, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 96 | pub super_gameboy_support: SuperGameboySupport, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 97 | pub rom_size_bytes: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 98 | pub ram_size: Option, [INFO] [stdout] 99 | pub destination_code: DestinationCode, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/lcdc.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl LCDC { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 19 | pub fn bg_and_window_enabled(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn sprites_enabled(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn sprite_size(&self) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn bg_tile_map_area(&self) -> RangeInclusive { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn bg_and_window_tile_data_area(&self) -> RangeInclusive { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn window_enabled(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | pub fn window_tile_map_area(&self) -> RangeInclusive { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn lcd_and_ppu_enabled(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `read_slice` is never used [INFO] [stdout] --> src/mbc.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 37 | impl MBC { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn read_slice(&self, start: usize, end: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_mock_mbc` is never used [INFO] [stdout] --> src/mbc.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | fn get_mock_mbc() -> MBC { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `dec_mem_rr` is never used [INFO] [stdout] --> src/ops.rs:86:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait Ops { [INFO] [stdout] | --- method in this trait [INFO] [stdout] ... [INFO] [stdout] 86 | fn dec_mem_rr(&mut self, mbc: &mut MBC, register: CombinedRegister); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TILE_SIZE_BYTES` is never used [INFO] [stdout] --> src/tile.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const TILE_SIZE_BYTES: usize = 16; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_ram` is never used [INFO] [stdout] --> src/tile.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 90 | impl Tile { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn from_ram(lcdc: LCDC, ram: &MBC, tile_index: usize) -> Tile { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tiles` is never read [INFO] [stdout] --> src/tile_dictionary.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct TileDictionary { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 6 | tiles: [Tile; MAX_TILES] [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set` is never used [INFO] [stdout] --> src/tile_dictionary.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl TileDictionary { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] 20 | pub fn set(&mut self, index: usize, value: Tile) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `toggle_bit` is never used [INFO] [stdout] --> src/utils.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub trait BitWise { [INFO] [stdout] | ------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 28 | fn toggle_bit(&self, bit: T, should_set: bool) -> T; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `pixels` is never read [INFO] [stdout] --> src/video.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct VideoBackground { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 17 | pixels: [[Pixel; BACKGROUND_SIZE]; BACKGROUND_SIZE], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tiles` is never read [INFO] [stdout] --> src/video.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct Video { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 30 | tiles: TileDictionary, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `build_tile_map`, `collect_tiles`, and `compose_tiles` are never used [INFO] [stdout] --> src/video.rs:39:8 [INFO] [stdout] | [INFO] [stdout] 33 | impl Video { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn collect_tiles(&mut self, lcdc: LCDC, ram: &MBC) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | fn compose_tiles(&self, tiles: Vec) -> Frame { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/render_opengl.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 72 | fn build_vertex_buffer(display: &glium::Display) -> glium::VertexBuffer { [INFO] [stdout] | ------------------------------------------------------------------------------- move the `impl` block outside of this function `build_vertex_buffer` [INFO] [stdout] 73 | implement_vertex!(Vertex, position, tex_coords); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Vertex` is not local [INFO] [stdout] | `Vertex` is not local [INFO] [stdout] | [INFO] [stdout] = note: the macro `implement_vertex` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the macro `implement_vertex` may come from an old version of the `glium` crate, try updating your dependency with `cargo update -p glium` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the macro `implement_vertex` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 41.18s [INFO] running `Command { std: "docker" "inspect" "35ee53d4d01a25027264cbd2470bc40fa47baa4695b0ddf02e5ae5f17b5baa58", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "35ee53d4d01a25027264cbd2470bc40fa47baa4695b0ddf02e5ae5f17b5baa58", kill_on_drop: false }` [INFO] [stdout] 35ee53d4d01a25027264cbd2470bc40fa47baa4695b0ddf02e5ae5f17b5baa58 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 61db320cf93062691e31847215e8e98e046581cd6b7994c773445d737c4284bb [INFO] running `Command { std: "docker" "start" "-a" "61db320cf93062691e31847215e8e98e046581cd6b7994c773445d737c4284bb", kill_on_drop: false }` [INFO] [stderr] Compiling oxide-gb v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `ram` [INFO] [stdout] --> src/video.rs:39:23 [INFO] [stdout] | [INFO] [stdout] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ram` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tile_index` [INFO] [stdout] --> src/video.rs:39:33 [INFO] [stdout] | [INFO] [stdout] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tile_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/cartridge_header.rs:92:9 [INFO] [stdout] | [INFO] [stdout] 91 | pub struct CartridgeHeader { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 92 | pub title: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 93 | pub manufacturer: String, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 94 | pub cartridge_type: CartridgeType, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 95 | pub color_gameboy_support: ColorGameboySupport, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 96 | pub super_gameboy_support: SuperGameboySupport, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 97 | pub rom_size_bytes: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 98 | pub ram_size: Option, [INFO] [stdout] 99 | pub destination_code: DestinationCode, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `read_slice` is never used [INFO] [stdout] --> src/mbc.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 37 | impl MBC { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn read_slice(&self, start: usize, end: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `dec_mem_rr` is never used [INFO] [stdout] --> src/ops.rs:86:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait Ops { [INFO] [stdout] | --- method in this trait [INFO] [stdout] ... [INFO] [stdout] 86 | fn dec_mem_rr(&mut self, mbc: &mut MBC, register: CombinedRegister); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TILE_SIZE_BYTES` is never used [INFO] [stdout] --> src/tile.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const TILE_SIZE_BYTES: usize = 16; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_ram` is never used [INFO] [stdout] --> src/tile.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 90 | impl Tile { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn from_ram(lcdc: LCDC, ram: &MBC, tile_index: usize) -> Tile { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tiles` is never read [INFO] [stdout] --> src/tile_dictionary.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct TileDictionary { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 6 | tiles: [Tile; MAX_TILES] [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set` is never used [INFO] [stdout] --> src/tile_dictionary.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl TileDictionary { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] 20 | pub fn set(&mut self, index: usize, value: Tile) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `toggle_bit` is never used [INFO] [stdout] --> src/utils.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub trait BitWise { [INFO] [stdout] | ------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 28 | fn toggle_bit(&self, bit: T, should_set: bool) -> T; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `pixels` is never read [INFO] [stdout] --> src/video.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct VideoBackground { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 17 | pixels: [[Pixel; BACKGROUND_SIZE]; BACKGROUND_SIZE], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tiles` is never read [INFO] [stdout] --> src/video.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct Video { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 30 | tiles: TileDictionary, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `build_tile_map`, `collect_tiles`, and `compose_tiles` are never used [INFO] [stdout] --> src/video.rs:39:8 [INFO] [stdout] | [INFO] [stdout] 33 | impl Video { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn collect_tiles(&mut self, lcdc: LCDC, ram: &MBC) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | fn compose_tiles(&self, tiles: Vec) -> Frame { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/render_opengl.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 72 | fn build_vertex_buffer(display: &glium::Display) -> glium::VertexBuffer { [INFO] [stdout] | ------------------------------------------------------------------------------- move the `impl` block outside of this function `build_vertex_buffer` [INFO] [stdout] 73 | implement_vertex!(Vertex, position, tex_coords); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Vertex` is not local [INFO] [stdout] | `Vertex` is not local [INFO] [stdout] | [INFO] [stdout] = note: the macro `implement_vertex` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the macro `implement_vertex` may come from an old version of the `glium` crate, try updating your dependency with `cargo update -p glium` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the macro `implement_vertex` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.27s [INFO] running `Command { std: "docker" "inspect" "61db320cf93062691e31847215e8e98e046581cd6b7994c773445d737c4284bb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "61db320cf93062691e31847215e8e98e046581cd6b7994c773445d737c4284bb", kill_on_drop: false }` [INFO] [stdout] 61db320cf93062691e31847215e8e98e046581cd6b7994c773445d737c4284bb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] de0077cc4b0cb6e4bcb3abc35081ce8536c5ecbb1f920b6fd553b39d648a7148 [INFO] running `Command { std: "docker" "start" "-a" "de0077cc4b0cb6e4bcb3abc35081ce8536c5ecbb1f920b6fd553b39d648a7148", kill_on_drop: false }` [INFO] [stderr] warning: unused variable: `ram` [INFO] [stderr] --> src/video.rs:39:23 [INFO] [stderr] | [INFO] [stderr] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_ram` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tile_index` [INFO] [stderr] --> src/video.rs:39:33 [INFO] [stderr] | [INFO] [stderr] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tile_index` [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/cartridge_header.rs:92:9 [INFO] [stderr] | [INFO] [stderr] 91 | pub struct CartridgeHeader { [INFO] [stderr] | --------------- fields in this struct [INFO] [stderr] 92 | pub title: String, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 93 | pub manufacturer: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 94 | pub cartridge_type: CartridgeType, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 95 | pub color_gameboy_support: ColorGameboySupport, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 96 | pub super_gameboy_support: SuperGameboySupport, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 97 | pub rom_size_bytes: u32, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 98 | pub ram_size: Option, [INFO] [stderr] 99 | pub destination_code: DestinationCode, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method `read_slice` is never used [INFO] [stderr] --> src/mbc.rs:99:12 [INFO] [stderr] | [INFO] [stderr] 37 | impl MBC { [INFO] [stderr] | -------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 99 | pub fn read_slice(&self, start: usize, end: usize) -> Vec { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `dec_mem_rr` is never used [INFO] [stderr] --> src/ops.rs:86:8 [INFO] [stderr] | [INFO] [stderr] 5 | pub trait Ops { [INFO] [stderr] | --- method in this trait [INFO] [stderr] ... [INFO] [stderr] 86 | fn dec_mem_rr(&mut self, mbc: &mut MBC, register: CombinedRegister); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `TILE_SIZE_BYTES` is never used [INFO] [stderr] --> src/tile.rs:9:7 [INFO] [stderr] | [INFO] [stderr] 9 | const TILE_SIZE_BYTES: usize = 16; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `from_ram` is never used [INFO] [stderr] --> src/tile.rs:93:12 [INFO] [stderr] | [INFO] [stderr] 90 | impl Tile { [INFO] [stderr] | --------- associated function in this implementation [INFO] [stderr] ... [INFO] [stderr] 93 | pub fn from_ram(lcdc: LCDC, ram: &MBC, tile_index: usize) -> Tile { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `tiles` is never read [INFO] [stderr] --> src/tile_dictionary.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 5 | pub struct TileDictionary { [INFO] [stderr] | -------------- field in this struct [INFO] [stderr] 6 | tiles: [Tile; MAX_TILES] [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `set` is never used [INFO] [stderr] --> src/tile_dictionary.rs:20:12 [INFO] [stderr] | [INFO] [stderr] 19 | impl TileDictionary { [INFO] [stderr] | ------------------- method in this implementation [INFO] [stderr] 20 | pub fn set(&mut self, index: usize, value: Tile) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: method `toggle_bit` is never used [INFO] [stderr] --> src/utils.rs:28:8 [INFO] [stderr] | [INFO] [stderr] 24 | pub trait BitWise { [INFO] [stderr] | ------- method in this trait [INFO] [stderr] ... [INFO] [stderr] 28 | fn toggle_bit(&self, bit: T, should_set: bool) -> T; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `pixels` is never read [INFO] [stderr] --> src/video.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 16 | pub struct VideoBackground { [INFO] [stderr] | --------------- field in this struct [INFO] [stderr] 17 | pixels: [[Pixel; BACKGROUND_SIZE]; BACKGROUND_SIZE], [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `tiles` is never read [INFO] [stderr] --> src/video.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 29 | pub struct Video { [INFO] [stderr] | ----- field in this struct [INFO] [stderr] 30 | tiles: TileDictionary, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `build_tile_map`, `collect_tiles`, and `compose_tiles` are never used [INFO] [stderr] --> src/video.rs:39:8 [INFO] [stderr] | [INFO] [stderr] 33 | impl Video { [INFO] [stderr] | ---------- associated items in this implementation [INFO] [stderr] ... [INFO] [stderr] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 43 | pub fn collect_tiles(&mut self, lcdc: LCDC, ram: &MBC) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 49 | fn compose_tiles(&self, tiles: Vec) -> Frame { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/render_opengl.rs:73:5 [INFO] [stderr] | [INFO] [stderr] 72 | fn build_vertex_buffer(display: &glium::Display) -> glium::VertexBuffer { [INFO] [stderr] | ------------------------------------------------------------------------------- move the `impl` block outside of this function `build_vertex_buffer` [INFO] [stderr] 73 | implement_vertex!(Vertex, position, tex_coords); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | `Vertex` is not local [INFO] [stderr] | `Vertex` is not local [INFO] [stderr] | [INFO] [stderr] = note: the macro `implement_vertex` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the macro `implement_vertex` may come from an old version of the `glium` crate, try updating your dependency with `cargo update -p glium` [INFO] [stdout] [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] running 18 tests [INFO] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the macro `implement_vertex` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `oxide-gb` (bin "oxide-gb" test) generated 14 warnings [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.17s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/oxide_gb-4a50e684bcd16116) [INFO] [stdout] test lcdc::tests::bg_and_window_enabled ... ok [INFO] [stdout] test lcdc::tests::lcd_and_ppu_enabled ... ok [INFO] [stdout] test lcdc::tests::bg_tile_map_area ... ok [INFO] [stdout] test lcdc::tests::bg_and_window_tile_data_area ... ok [INFO] [stdout] test lcdc::tests::sprite_size ... ok [INFO] [stdout] test lcdc::tests::sprites_enabled ... ok [INFO] [stdout] test lcdc::tests::window_tile_map_area ... ok [INFO] [stdout] test lcdc::tests::window_enabled ... ok [INFO] [stdout] test tile::tests::test_bytes_to_tile_row ... ok [INFO] [stdout] test mbc::tests::test_write_ram_enable ... ok [INFO] [stdout] test utils::tests::add_half_carry_check_10plus12 ... ok [INFO] [stdout] test utils::tests::bitwise_is_bit_set_1 ... ok [INFO] [stdout] test utils::tests::bitwise_is_bit_set_3c ... ok [INFO] [stdout] test utils::tests::bitwise_is_bit_set_0 ... ok [INFO] [stdout] test utils::tests::bitwise_is_bit_set_7e ... ok [INFO] [stdout] test utils::tests::bitwise_is_bit_set_excludes_unset_bits ... ok [INFO] [stdout] test utils::tests::bitwise_is_bit_set_for_3 ... ok [INFO] [stdout] test utils::tests::add_half_carry_check_5plus4 ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "de0077cc4b0cb6e4bcb3abc35081ce8536c5ecbb1f920b6fd553b39d648a7148", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "de0077cc4b0cb6e4bcb3abc35081ce8536c5ecbb1f920b6fd553b39d648a7148", kill_on_drop: false }` [INFO] [stdout] de0077cc4b0cb6e4bcb3abc35081ce8536c5ecbb1f920b6fd553b39d648a7148