[INFO] fetching crate dmc 0.1.0...
[INFO] checking dmc-0.1.0 against master#6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd for pr-153721
[INFO] extracting crate dmc 0.1.0 into /workspace/builds/worker-3-tc1/source
[INFO] started tweaking crates.io crate dmc 0.1.0
[INFO] finished tweaking crates.io crate dmc 0.1.0
[INFO] tweaked toml for crates.io crate dmc 0.1.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate dmc 0.1.0 on toolchain 6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 7 packages to latest compatible versions
[INFO] [stderr]       Adding num-traits v0.1.43 (available: v0.2.19)
[INFO] [stderr]       Adding uuid v0.5.1 (available: v1.23.3)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `dmc` (manifest) generated 1 warning
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded x11 v2.21.0
[INFO] [stderr]   Downloaded uuid v0.5.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3e793bdf10248eb2ddbd6b0faebed8155c11b4589982e2893733958d93e8d540" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] a308bdb7389e4bec225198d45dc2e980a891a29572eb5776fd1ad01d0aaf7816
[INFO] running `Command { std: "docker" "start" "a308bdb7389e4bec225198d45dc2e980a891a29572eb5776fd1ad01d0aaf7816", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a308bdb7389e4bec225198d45dc2e980a891a29572eb5776fd1ad01d0aaf7816" "/opt/rustwide/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a308bdb7389e4bec225198d45dc2e980a891a29572eb5776fd1ad01d0aaf7816", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a308bdb7389e4bec225198d45dc2e980a891a29572eb5776fd1ad01d0aaf7816" "/opt/rustwide/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `dmc` (manifest) generated 1 warning
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling dmc v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking uuid v0.5.1
[INFO] [stdout] warning: unexpected `cfg` condition value: `winrt`
[INFO] [stdout]  --> build.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[cfg(target_os="winrt")]
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `helenos`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `qurt`, `redox`, `rtems`, `solaris`, and `solid_asp3` and 14 more
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling x11 v2.21.0
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/lib.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 | #![cfg_attr(feature="cargo-clippy", allow(doc_markdown))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `cargo-clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `dmc_display_backend`
[INFO] [stdout]    --> src/display/mod.rs:146:7
[INFO] [stdout]     |
[INFO] [stdout] 146 | #[cfg(dmc_display_backend="x11")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `docsrs`, `feature`, and `test` and 32 more
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(dmc_display_backend, values("x11"))'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(dmc_display_backend, values(\"x11\"))");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/display/x11.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:262:41
[INFO] [stdout]     |
[INFO] [stdout] 262 |     pub type glXGetProcAddress = unsafe extern fn(*const u8) -> Option<unsafe extern fn()>;
[INFO] [stdout]     |                                         ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(missing_abi)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:262:79
[INFO] [stdout]     |
[INFO] [stdout] 262 |     pub type glXGetProcAddress = unsafe extern fn(*const u8) -> Option<unsafe extern fn()>;
[INFO] [stdout]     |                                                                               ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:263:43
[INFO] [stdout]     |
[INFO] [stdout] 263 |     pub type glXSwapIntervalMESA = unsafe extern fn(interval: c_int) -> c_int;
[INFO] [stdout]     |                                           ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:264:46
[INFO] [stdout]     |
[INFO] [stdout] 264 |     pub type glXGetSwapIntervalMESA = unsafe extern fn() -> c_int;
[INFO] [stdout]     |                                              ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:265:42
[INFO] [stdout]     |
[INFO] [stdout] 265 |     pub type glXSwapIntervalSGI = unsafe extern fn(interval: c_int) -> c_int;
[INFO] [stdout]     |                                          ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:266:42
[INFO] [stdout]     |
[INFO] [stdout] 266 |     pub type glXSwapIntervalEXT = unsafe extern fn(
[INFO] [stdout]     |                                          ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:269:50
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub type glXCreateContextAttribsARB = unsafe extern fn(
[INFO] [stdout]     |                                                  ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:519:12
[INFO] [stdout]     |
[INFO] [stdout] 519 |     unsafe extern fn _is_map_notify_callback(_x_dpy: *mut x::Display, ev: *mut x::XEvent, win: x::XPointer) -> i32 {
[INFO] [stdout]     |            ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `dmc_display_backend`
[INFO] [stdout]    --> src/display/mod.rs:560:11
[INFO] [stdout]     |
[INFO] [stdout] 560 |     #[cfg(dmc_display_backend="x11")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(dmc_display_backend, values("x11"))'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(dmc_display_backend, values(\"x11\"))");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> src/event/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/display/x11.rs:394:57
[INFO] [stdout]     |
[INFO] [stdout] 394 |             let (mut error_base, mut event_base) = mem::uninitialized();
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/display/x11.rs:402:47
[INFO] [stdout]     |
[INFO] [stdout] 402 |             let (mut major, mut minor) = mem::uninitialized();
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/display/x11.rs:546:56
[INFO] [stdout]     |
[INFO] [stdout] 546 |             let mut attrs: x::XWindowAttributes = mem::uninitialized();
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/display/x11.rs:594:57
[INFO] [stdout]     |
[INFO] [stdout] 594 |             let mut title_prop: x::XTextProperty = mem::uninitialized();
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[no_implicit_prelude]` attribute cannot be used on constants
[INFO] [stdout]   --> src/display/x11.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     #[no_implicit_prelude]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[no_implicit_prelude]` can be applied to crates and modules
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/display/x11.rs:776:9
[INFO] [stdout]     |
[INFO] [stdout] 775 |           let best_fbc: glx::GLXFBConfig = unimplemented!(); // FIXME
[INFO] [stdout]     |                                            ---------------- any code following this expression is unreachable
[INFO] [stdout] 776 | /         let attribs_arb = [
[INFO] [stdout] 777 | |             glx::arb::GLX_CONTEXT_MAJOR_VERSION_ARB, 3,
[INFO] [stdout] 778 | |             glx::arb::GLX_CONTEXT_MINOR_VERSION_ARB, 0,
[INFO] [stdout] 779 | |             glx::arb::GLX_CONTEXT_FLAGS_ARB, 
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |             xx::None
[INFO] [stdout] 787 | |         ];
[INFO] [stdout]     | |__________^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/lib.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 | #![cfg_attr(feature="cargo-clippy", allow(doc_markdown))]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `cargo-clippy` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `dmc_display_backend`
[INFO] [stdout]    --> src/display/mod.rs:146:7
[INFO] [stdout]     |
[INFO] [stdout] 146 | #[cfg(dmc_display_backend="x11")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `docsrs`, `feature`, and `test` and 32 more
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(dmc_display_backend, values("x11"))'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(dmc_display_backend, values(\"x11\"))");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/display/x11.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:262:41
[INFO] [stdout]     |
[INFO] [stdout] 262 |     pub type glXGetProcAddress = unsafe extern fn(*const u8) -> Option<unsafe extern fn()>;
[INFO] [stdout]     |                                         ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(missing_abi)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:262:79
[INFO] [stdout]     |
[INFO] [stdout] 262 |     pub type glXGetProcAddress = unsafe extern fn(*const u8) -> Option<unsafe extern fn()>;
[INFO] [stdout]     |                                                                               ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:263:43
[INFO] [stdout]     |
[INFO] [stdout] 263 |     pub type glXSwapIntervalMESA = unsafe extern fn(interval: c_int) -> c_int;
[INFO] [stdout]     |                                           ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:264:46
[INFO] [stdout]     |
[INFO] [stdout] 264 |     pub type glXGetSwapIntervalMESA = unsafe extern fn() -> c_int;
[INFO] [stdout]     |                                              ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:265:42
[INFO] [stdout]     |
[INFO] [stdout] 265 |     pub type glXSwapIntervalSGI = unsafe extern fn(interval: c_int) -> c_int;
[INFO] [stdout]     |                                          ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:266:42
[INFO] [stdout]     |
[INFO] [stdout] 266 |     pub type glXSwapIntervalEXT = unsafe extern fn(
[INFO] [stdout]     |                                          ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:269:50
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub type glXCreateContextAttribsARB = unsafe extern fn(
[INFO] [stdout]     |                                                  ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/display/x11.rs:519:12
[INFO] [stdout]     |
[INFO] [stdout] 519 |     unsafe extern fn _is_map_notify_callback(_x_dpy: *mut x::Display, ev: *mut x::XEvent, win: x::XPointer) -> i32 {
[INFO] [stdout]     |            ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `dmc_display_backend`
[INFO] [stdout]    --> src/display/mod.rs:560:11
[INFO] [stdout]     |
[INFO] [stdout] 560 |     #[cfg(dmc_display_backend="x11")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(dmc_display_backend, values("x11"))'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(dmc_display_backend, values(\"x11\"))");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> src/event/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_vendor`
[INFO] [stdout]    --> src/display/x11.rs:419:17
[INFO] [stdout]     |
[INFO] [stdout] 419 |             let client_vendor  = glx::glXGetClientString(  x_dpy, xx::GLX_VENDOR);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_vendor`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_version`
[INFO] [stdout]    --> src/display/x11.rs:420:17
[INFO] [stdout]     |
[INFO] [stdout] 420 |             let client_version = glx::glXGetClientString(  x_dpy, xx::GLX_VERSION);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_version`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_vendor`
[INFO] [stdout]    --> src/display/x11.rs:421:17
[INFO] [stdout]     |
[INFO] [stdout] 421 |             let server_vendor  = glx::glXQueryServerString(x_dpy, screen_num, xx::GLX_VENDOR);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_vendor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_version`
[INFO] [stdout]    --> src/display/x11.rs:422:17
[INFO] [stdout]     |
[INFO] [stdout] 422 |             let server_version = glx::glXQueryServerString(x_dpy, screen_num, xx::GLX_VERSION);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_version`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resizable`
[INFO] [stdout]    --> src/display/x11.rs:458:23
[INFO] [stdout]     |
[INFO] [stdout] 458 |                 mode, resizable, fully_opaque, opengl, allow_high_dpi
[INFO] [stdout]     |                       ^^^^^^^^^ help: try ignoring the field: `resizable: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fully_opaque`
[INFO] [stdout]    --> src/display/x11.rs:458:34
[INFO] [stdout]     |
[INFO] [stdout] 458 |                 mode, resizable, fully_opaque, opengl, allow_high_dpi
[INFO] [stdout]     |                                  ^^^^^^^^^^^^ help: try ignoring the field: `fully_opaque: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `opengl`
[INFO] [stdout]    --> src/display/x11.rs:458:48
[INFO] [stdout]     |
[INFO] [stdout] 458 |                 mode, resizable, fully_opaque, opengl, allow_high_dpi
[INFO] [stdout]     |                                                ^^^^^^ help: try ignoring the field: `opengl: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `allow_high_dpi`
[INFO] [stdout]    --> src/display/x11.rs:458:56
[INFO] [stdout]     |
[INFO] [stdout] 458 |                 mode, resizable, fully_opaque, opengl, allow_high_dpi
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^ help: try ignoring the field: `allow_high_dpi: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `version`
[INFO] [stdout]    --> src/display/x11.rs:762:13
[INFO] [stdout]     |
[INFO] [stdout] 762 |             version, debug, forward_compatible, profile, msaa, ..
[INFO] [stdout]     |             ^^^^^^^ help: try ignoring the field: `version: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug`
[INFO] [stdout]    --> src/display/x11.rs:762:22
[INFO] [stdout]     |
[INFO] [stdout] 762 |             version, debug, forward_compatible, profile, msaa, ..
[INFO] [stdout]     |                      ^^^^^ help: try ignoring the field: `debug: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `forward_compatible`
[INFO] [stdout]    --> src/display/x11.rs:762:29
[INFO] [stdout]     |
[INFO] [stdout] 762 |             version, debug, forward_compatible, profile, msaa, ..
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `forward_compatible: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `profile`
[INFO] [stdout]    --> src/display/x11.rs:762:49
[INFO] [stdout]     |
[INFO] [stdout] 762 |             version, debug, forward_compatible, profile, msaa, ..
[INFO] [stdout]     |                                                 ^^^^^^^ help: try ignoring the field: `profile: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msaa`
[INFO] [stdout]    --> src/display/x11.rs:762:58
[INFO] [stdout]     |
[INFO] [stdout] 762 |             version, debug, forward_compatible, profile, msaa, ..
[INFO] [stdout]     |                                                          ^^^^ help: try ignoring the field: `msaa: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `best_fbc`
[INFO] [stdout]    --> src/display/x11.rs:775:13
[INFO] [stdout]     |
[INFO] [stdout] 775 |         let best_fbc: glx::GLXFBConfig = unimplemented!(); // FIXME
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_best_fbc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/display/x11.rs:394:57
[INFO] [stdout]     |
[INFO] [stdout] 394 |             let (mut error_base, mut event_base) = mem::uninitialized();
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/display/x11.rs:402:47
[INFO] [stdout]     |
[INFO] [stdout] 402 |             let (mut major, mut minor) = mem::uninitialized();
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/display/x11.rs:546:56
[INFO] [stdout]     |
[INFO] [stdout] 546 |             let mut attrs: x::XWindowAttributes = mem::uninitialized();
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/display/x11.rs:594:57
[INFO] [stdout]     |
[INFO] [stdout] 594 |             let mut title_prop: x::XTextProperty = mem::uninitialized();
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[no_implicit_prelude]` attribute cannot be used on constants
[INFO] [stdout]   --> src/display/x11.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     #[no_implicit_prelude]
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[no_implicit_prelude]` can be applied to crates and modules
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function cannot return without recursing
[INFO] [stdout]    --> src/display/mod.rs:830:5
[INFO] [stdout]     |
[INFO] [stdout] 830 |     fn default() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ cannot return without recursing
[INFO] [stdout] ...
[INFO] [stdout] 834 |             .. Default::default()
[INFO] [stdout]     |                ------------------ recursive call site
[INFO] [stdout]     |
[INFO] [stdout]     = help: a `loop` may express intention better if this is on purpose
[INFO] [stdout]     = note: `#[warn(unconditional_recursion)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/display/x11.rs:776:9
[INFO] [stdout]     |
[INFO] [stdout] 775 |           let best_fbc: glx::GLXFBConfig = unimplemented!(); // FIXME
[INFO] [stdout]     |                                            ---------------- any code following this expression is unreachable
[INFO] [stdout] 776 | /         let attribs_arb = [
[INFO] [stdout] 777 | |             glx::arb::GLX_CONTEXT_MAJOR_VERSION_ARB, 3,
[INFO] [stdout] 778 | |             glx::arb::GLX_CONTEXT_MINOR_VERSION_ARB, 0,
[INFO] [stdout] 779 | |             glx::arb::GLX_CONTEXT_FLAGS_ARB, 
[INFO] [stdout] ...   |
[INFO] [stdout] 786 | |             xx::None
[INFO] [stdout] 787 | |         ];
[INFO] [stdout]     | |__________^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `gen_fbconfig_attribs` is never used
[INFO] [stdout]    --> src/display/x11.rs:690:8
[INFO] [stdout]     |
[INFO] [stdout] 643 | impl Display {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 690 |     fn gen_fbconfig_attribs(settings: &GLContextSettings) -> [c_int; 37] {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GLX_EXTENSIONS` is never used
[INFO] [stdout]   --> src/display/x11.rs:72:15
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub const GLX_EXTENSIONS: i32 = 3;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/display/x11.rs:280:15
[INFO] [stdout]     |
[INFO] [stdout] 280 |               $(pub $func: Option<types::$func>,)+
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 313 | / glx_ext!((
[INFO] [stdout] 314 | |     GLX_ARB_multisample
[INFO] [stdout] 315 | |     GLX_EXT_swap_control
[INFO] [stdout] 316 | |     GLX_EXT_swap_control_tear
[INFO] [stdout] ...   |
[INFO] [stdout] 329 | |     glXCreateContextAttribsARB
[INFO] [stdout] 330 | | ));
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `glx_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/display/x11.rs:335:5
[INFO] [stdout]     |
[INFO] [stdout] 332 | #[derive(Debug, Hash, PartialEq, Eq)]
[INFO] [stdout]     |                       --------- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 335 |     get_proc_address: types::glXGetProcAddress,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `(i32, i32)` does not permit being left uninitialized
[INFO] [stdout]    --> src/display/x11.rs:394:52
[INFO] [stdout]     |
[INFO] [stdout] 394 |             let (mut error_base, mut event_base) = mem::uninitialized();
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                    |
[INFO] [stdout]     |                                                    this code causes undefined behavior when executed
[INFO] [stdout]     |                                                    help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `(i32, i32)` does not permit being left uninitialized
[INFO] [stdout]    --> src/display/x11.rs:402:42
[INFO] [stdout]     |
[INFO] [stdout] 402 |             let (mut major, mut minor) = mem::uninitialized();
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          this code causes undefined behavior when executed
[INFO] [stdout]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `XWindowAttributes` does not permit being left uninitialized
[INFO] [stdout]    --> src/display/x11.rs:546:51
[INFO] [stdout]     |
[INFO] [stdout] 546 |             let mut attrs: x::XWindowAttributes = mem::uninitialized();
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this code causes undefined behavior when executed
[INFO] [stdout]     |                                                   help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `XTextProperty` does not permit being left uninitialized
[INFO] [stdout]    --> src/display/x11.rs:594:52
[INFO] [stdout]     |
[INFO] [stdout] 594 |             let mut title_prop: x::XTextProperty = mem::uninitialized();
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                    |
[INFO] [stdout]     |                                                    this code causes undefined behavior when executed
[INFO] [stdout]     |                                                    help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `glXCreateContextAttribsARB` should have a snake case name
[INFO] [stdout]    --> src/display/x11.rs:807:13
[INFO] [stdout]     |
[INFO] [stdout] 807 |         let glXCreateContextAttribsARB = glx.ext.glXCreateContextAttribsARB.unwrap();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `gl_xcreate_context_attribs_arb`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `None` should have an upper case name
[INFO] [stdout]   --> src/display/x11.rs:68:15
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub const None: i32 = 0;
[INFO] [stdout]    |               ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 68 -     pub const None: i32 = 0;
[INFO] [stdout] 68 +     pub const NONE: i32 = 0;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/display/mod.rs:424:53
[INFO] [stdout]     |
[INFO] [stdout] 424 |         pub unsafe fn get_internal(&'b self) -> &'a backend::Window {
[INFO] [stdout]     |                                     --              ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'b`
[INFO] [stdout]     |
[INFO] [stdout] 424 |         pub unsafe fn get_internal(&'b self) -> &'a backend::Window<'b> {
[INFO] [stdout]     |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/display/mod.rs:431:67
[INFO] [stdout]     |
[INFO] [stdout] 431 |         pub unsafe fn get_internal_mut(&'dpy mut self) -> &'a mut backend::Window {
[INFO] [stdout]     |                                         ----                      ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'dpy`
[INFO] [stdout]     |
[INFO] [stdout] 431 |         pub unsafe fn get_internal_mut(&'dpy mut self) -> &'a mut backend::Window<'dpy> {
[INFO] [stdout]     |                                                                                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/game_input_device/mod.rs:947:52
[INFO] [stdout]     |
[INFO] [stdout] 947 |     pub fn upload_haptic_effect<E: haptic::Effect>(&mut self, _effect: E) 
[INFO] [stdout]     |                                                    ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 948 |         -> Result<haptic::UploadedEffect, haptic::Error>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^ the same lifetimes are hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 948 |         -> Result<haptic::UploadedEffect<'_, '_>, haptic::Error>
[INFO] [stdout]     |                                         ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/game_input_device/mod.rs:1162:21
[INFO] [stdout]      |
[INFO] [stdout] 1162 |         pub fn play(&self) -> Result<PlayingEffect,()> {
[INFO] [stdout]      |                     ^^^^^            ^^^^^^^^^^^^^ the same lifetimes are hidden here
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     the lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1162 |         pub fn play(&self) -> Result<PlayingEffect<'_, '_, '_>,()> {
[INFO] [stdout]      |                                                   ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/event/mod.rs:123:18
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn start(&mut self) -> TextInputRecording { unimplemented!() }
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn start(&mut self) -> TextInputRecording<'_> { unimplemented!() }
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_vendor`
[INFO] [stdout]    --> src/display/x11.rs:419:17
[INFO] [stdout]     |
[INFO] [stdout] 419 |             let client_vendor  = glx::glXGetClientString(  x_dpy, xx::GLX_VENDOR);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_vendor`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_version`
[INFO] [stdout]    --> src/display/x11.rs:420:17
[INFO] [stdout]     |
[INFO] [stdout] 420 |             let client_version = glx::glXGetClientString(  x_dpy, xx::GLX_VERSION);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_version`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_vendor`
[INFO] [stdout]    --> src/display/x11.rs:421:17
[INFO] [stdout]     |
[INFO] [stdout] 421 |             let server_vendor  = glx::glXQueryServerString(x_dpy, screen_num, xx::GLX_VENDOR);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_vendor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_version`
[INFO] [stdout]    --> src/display/x11.rs:422:17
[INFO] [stdout]     |
[INFO] [stdout] 422 |             let server_version = glx::glXQueryServerString(x_dpy, screen_num, xx::GLX_VERSION);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_version`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resizable`
[INFO] [stdout]    --> src/display/x11.rs:458:23
[INFO] [stdout]     |
[INFO] [stdout] 458 |                 mode, resizable, fully_opaque, opengl, allow_high_dpi
[INFO] [stdout]     |                       ^^^^^^^^^ help: try ignoring the field: `resizable: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fully_opaque`
[INFO] [stdout]    --> src/display/x11.rs:458:34
[INFO] [stdout]     |
[INFO] [stdout] 458 |                 mode, resizable, fully_opaque, opengl, allow_high_dpi
[INFO] [stdout]     |                                  ^^^^^^^^^^^^ help: try ignoring the field: `fully_opaque: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `opengl`
[INFO] [stdout]    --> src/display/x11.rs:458:48
[INFO] [stdout]     |
[INFO] [stdout] 458 |                 mode, resizable, fully_opaque, opengl, allow_high_dpi
[INFO] [stdout]     |                                                ^^^^^^ help: try ignoring the field: `opengl: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `allow_high_dpi`
[INFO] [stdout]    --> src/display/x11.rs:458:56
[INFO] [stdout]     |
[INFO] [stdout] 458 |                 mode, resizable, fully_opaque, opengl, allow_high_dpi
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^ help: try ignoring the field: `allow_high_dpi: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `version`
[INFO] [stdout]    --> src/display/x11.rs:762:13
[INFO] [stdout]     |
[INFO] [stdout] 762 |             version, debug, forward_compatible, profile, msaa, ..
[INFO] [stdout]     |             ^^^^^^^ help: try ignoring the field: `version: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug`
[INFO] [stdout]    --> src/display/x11.rs:762:22
[INFO] [stdout]     |
[INFO] [stdout] 762 |             version, debug, forward_compatible, profile, msaa, ..
[INFO] [stdout]     |                      ^^^^^ help: try ignoring the field: `debug: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `forward_compatible`
[INFO] [stdout]    --> src/display/x11.rs:762:29
[INFO] [stdout]     |
[INFO] [stdout] 762 |             version, debug, forward_compatible, profile, msaa, ..
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `forward_compatible: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `profile`
[INFO] [stdout]    --> src/display/x11.rs:762:49
[INFO] [stdout]     |
[INFO] [stdout] 762 |             version, debug, forward_compatible, profile, msaa, ..
[INFO] [stdout]     |                                                 ^^^^^^^ help: try ignoring the field: `profile: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msaa`
[INFO] [stdout]    --> src/display/x11.rs:762:58
[INFO] [stdout]     |
[INFO] [stdout] 762 |             version, debug, forward_compatible, profile, msaa, ..
[INFO] [stdout]     |                                                          ^^^^ help: try ignoring the field: `msaa: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `best_fbc`
[INFO] [stdout]    --> src/display/x11.rs:775:13
[INFO] [stdout]     |
[INFO] [stdout] 775 |         let best_fbc: glx::GLXFBConfig = unimplemented!(); // FIXME
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_best_fbc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function cannot return without recursing
[INFO] [stdout]    --> src/display/mod.rs:830:5
[INFO] [stdout]     |
[INFO] [stdout] 830 |     fn default() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^ cannot return without recursing
[INFO] [stdout] ...
[INFO] [stdout] 834 |             .. Default::default()
[INFO] [stdout]     |                ------------------ recursive call site
[INFO] [stdout]     |
[INFO] [stdout]     = help: a `loop` may express intention better if this is on purpose
[INFO] [stdout]     = note: `#[warn(unconditional_recursion)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `gen_fbconfig_attribs` is never used
[INFO] [stdout]    --> src/display/x11.rs:690:8
[INFO] [stdout]     |
[INFO] [stdout] 643 | impl Display {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 690 |     fn gen_fbconfig_attribs(settings: &GLContextSettings) -> [c_int; 37] {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GLX_EXTENSIONS` is never used
[INFO] [stdout]   --> src/display/x11.rs:72:15
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub const GLX_EXTENSIONS: i32 = 3;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/display/x11.rs:280:15
[INFO] [stdout]     |
[INFO] [stdout] 280 |               $(pub $func: Option<types::$func>,)+
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 313 | / glx_ext!((
[INFO] [stdout] 314 | |     GLX_ARB_multisample
[INFO] [stdout] 315 | |     GLX_EXT_swap_control
[INFO] [stdout] 316 | |     GLX_EXT_swap_control_tear
[INFO] [stdout] ...   |
[INFO] [stdout] 329 | |     glXCreateContextAttribsARB
[INFO] [stdout] 330 | | ));
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `glx_ext` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/display/x11.rs:335:5
[INFO] [stdout]     |
[INFO] [stdout] 332 | #[derive(Debug, Hash, PartialEq, Eq)]
[INFO] [stdout]     |                       --------- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 335 |     get_proc_address: types::glXGetProcAddress,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `(i32, i32)` does not permit being left uninitialized
[INFO] [stdout]    --> src/display/x11.rs:394:52
[INFO] [stdout]     |
[INFO] [stdout] 394 |             let (mut error_base, mut event_base) = mem::uninitialized();
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                    |
[INFO] [stdout]     |                                                    this code causes undefined behavior when executed
[INFO] [stdout]     |                                                    help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `(i32, i32)` does not permit being left uninitialized
[INFO] [stdout]    --> src/display/x11.rs:402:42
[INFO] [stdout]     |
[INFO] [stdout] 402 |             let (mut major, mut minor) = mem::uninitialized();
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          this code causes undefined behavior when executed
[INFO] [stdout]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `XWindowAttributes` does not permit being left uninitialized
[INFO] [stdout]    --> src/display/x11.rs:546:51
[INFO] [stdout]     |
[INFO] [stdout] 546 |             let mut attrs: x::XWindowAttributes = mem::uninitialized();
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this code causes undefined behavior when executed
[INFO] [stdout]     |                                                   help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `XTextProperty` does not permit being left uninitialized
[INFO] [stdout]    --> src/display/x11.rs:594:52
[INFO] [stdout]     |
[INFO] [stdout] 594 |             let mut title_prop: x::XTextProperty = mem::uninitialized();
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                    |
[INFO] [stdout]     |                                                    this code causes undefined behavior when executed
[INFO] [stdout]     |                                                    help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `glXCreateContextAttribsARB` should have a snake case name
[INFO] [stdout]    --> src/display/x11.rs:807:13
[INFO] [stdout]     |
[INFO] [stdout] 807 |         let glXCreateContextAttribsARB = glx.ext.glXCreateContextAttribsARB.unwrap();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `gl_xcreate_context_attribs_arb`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `None` should have an upper case name
[INFO] [stdout]   --> src/display/x11.rs:68:15
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub const None: i32 = 0;
[INFO] [stdout]    |               ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 68 -     pub const None: i32 = 0;
[INFO] [stdout] 68 +     pub const NONE: i32 = 0;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/display/mod.rs:424:53
[INFO] [stdout]     |
[INFO] [stdout] 424 |         pub unsafe fn get_internal(&'b self) -> &'a backend::Window {
[INFO] [stdout]     |                                     --              ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'b`
[INFO] [stdout]     |
[INFO] [stdout] 424 |         pub unsafe fn get_internal(&'b self) -> &'a backend::Window<'b> {
[INFO] [stdout]     |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/display/mod.rs:431:67
[INFO] [stdout]     |
[INFO] [stdout] 431 |         pub unsafe fn get_internal_mut(&'dpy mut self) -> &'a mut backend::Window {
[INFO] [stdout]     |                                         ----                      ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'dpy`
[INFO] [stdout]     |
[INFO] [stdout] 431 |         pub unsafe fn get_internal_mut(&'dpy mut self) -> &'a mut backend::Window<'dpy> {
[INFO] [stdout]     |                                                                                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/game_input_device/mod.rs:947:52
[INFO] [stdout]     |
[INFO] [stdout] 947 |     pub fn upload_haptic_effect<E: haptic::Effect>(&mut self, _effect: E) 
[INFO] [stdout]     |                                                    ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 948 |         -> Result<haptic::UploadedEffect, haptic::Error>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^ the same lifetimes are hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 948 |         -> Result<haptic::UploadedEffect<'_, '_>, haptic::Error>
[INFO] [stdout]     |                                         ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/game_input_device/mod.rs:1162:21
[INFO] [stdout]      |
[INFO] [stdout] 1162 |         pub fn play(&self) -> Result<PlayingEffect,()> {
[INFO] [stdout]      |                     ^^^^^            ^^^^^^^^^^^^^ the same lifetimes are hidden here
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     the lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1162 |         pub fn play(&self) -> Result<PlayingEffect<'_, '_, '_>,()> {
[INFO] [stdout]      |                                                   ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/event/mod.rs:123:18
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn start(&mut self) -> TextInputRecording { unimplemented!() }
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn start(&mut self) -> TextInputRecording<'_> { unimplemented!() }
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.46s
[INFO] running `Command { std: "docker" "inspect" "a308bdb7389e4bec225198d45dc2e980a891a29572eb5776fd1ad01d0aaf7816", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a308bdb7389e4bec225198d45dc2e980a891a29572eb5776fd1ad01d0aaf7816", kill_on_drop: false }`
[INFO] [stdout] a308bdb7389e4bec225198d45dc2e980a891a29572eb5776fd1ad01d0aaf7816
