[INFO] cloning repository https://github.com/lutianming/rustile [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lutianming/rustile" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flutianming%2Frustile", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flutianming%2Frustile'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d415482664db41661d0b06ada6d08025cad91eeb [INFO] testing lutianming/rustile against master#a77da2d454e6caa227a85b16410b95f93495e7e0 for pr-91031 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flutianming%2Frustile" "/workspace/builds/worker-3/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/lutianming/rustile on toolchain a77da2d454e6caa227a85b16410b95f93495e7e0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a77da2d454e6caa227a85b16410b95f93495e7e0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/lutianming/rustile [INFO] finished tweaking git repo https://github.com/lutianming/rustile [INFO] tweaked toml for git repo https://github.com/lutianming/rustile written to /workspace/builds/worker-3/source/Cargo.toml [INFO] crate git repo https://github.com/lutianming/rustile already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a77da2d454e6caa227a85b16410b95f93495e7e0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: dependency (x11) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+a77da2d454e6caa227a85b16410b95f93495e7e0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a4cdaf0a601ce72a58ac9a3cbaa82e44e63a84ad1cda10af051ea9555d4ea78c [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "a4cdaf0a601ce72a58ac9a3cbaa82e44e63a84ad1cda10af051ea9555d4ea78c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a4cdaf0a601ce72a58ac9a3cbaa82e44e63a84ad1cda10af051ea9555d4ea78c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a4cdaf0a601ce72a58ac9a3cbaa82e44e63a84ad1cda10af051ea9555d4ea78c", kill_on_drop: false }` [INFO] [stdout] a4cdaf0a601ce72a58ac9a3cbaa82e44e63a84ad1cda10af051ea9555d4ea78c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "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:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+a77da2d454e6caa227a85b16410b95f93495e7e0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 62857dd1da04e7c7c6a581b074213cebe2c5459cf5cf9e2cdd5d866b9a509203 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "62857dd1da04e7c7c6a581b074213cebe2c5459cf5cf9e2cdd5d866b9a509203", kill_on_drop: false }` [INFO] [stderr] warning: dependency (x11) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions [INFO] [stderr] Compiling regex-syntax v0.1.2 [INFO] [stderr] Compiling x11 v1.1.1 [INFO] [stderr] Compiling regex v0.1.33 [INFO] [stderr] Compiling env_logger v0.3.1 [INFO] [stderr] Compiling rustile v0.0.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unknown lint: `unstable` [INFO] [stdout] --> src/libx/mod.rs:1:10 [INFO] [stdout] | [INFO] [stdout] 1 | #![allow(unstable)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unknown_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `x11::xlib::Window` [INFO] [stdout] --> src/core/window_manager.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use x11::xlib::Window; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Lines` [INFO] [stdout] --> src/core/config.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io::Lines; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi` [INFO] [stdout] --> src/core/config.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::ffi; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::boxed::Box` [INFO] [stdout] --> src/core/config.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::boxed::Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr` [INFO] [stdout] --> src/core/handler.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ptr; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::WindowManager` [INFO] [stdout] --> src/core/handler.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use super::WindowManager; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/core/handler.rs:13:32 [INFO] [stdout] | [INFO] [stdout] 13 | use super::super::libx::{self, Context}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/core/handler.rs:53:25 [INFO] [stdout] | [INFO] [stdout] 53 | pub type HandleFn = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Workspaces)` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem` [INFO] [stdout] --> src/core/layout.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::mem; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi` [INFO] [stdout] --> src/core/layout.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::ffi; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr` [INFO] [stdout] --> src/core/layout.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ptr; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/core/layout.rs:9:24 [INFO] [stdout] | [INFO] [stdout] 9 | use super::container::{self, Container}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/core/layout.rs:188:40 [INFO] [stdout] | [INFO] [stdout] 188 | decorate(client, id==focus_id);; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::boxed::Box` [INFO] [stdout] --> src/libx/mod.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::boxed::Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/libx/mod.rs:184:21 [INFO] [stdout] | [INFO] [stdout] 184 | Err(e) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `root` is assigned to, but never used [INFO] [stdout] --> src/libx/mod.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 273 | let mut root = 0; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_root` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `root` is never read [INFO] [stdout] --> src/libx/mod.rs:285:21 [INFO] [stdout] | [INFO] [stdout] 285 | root = r; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pointer_root` [INFO] [stdout] --> src/libx/mod.rs:355:9 [INFO] [stdout] | [INFO] [stdout] 355 | let pointer_root = 1; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pointer_root` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `parent` [INFO] [stdout] --> src/libx/mod.rs:356:9 [INFO] [stdout] | [INFO] [stdout] 356 | let parent = 2; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_parent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/libx/mod.rs:368:13 [INFO] [stdout] | [INFO] [stdout] 368 | let s = xlib::XGetInputFocus(context.display, &mut window, &mut revert_to); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `status` [INFO] [stdout] --> src/libx/mod.rs:446:9 [INFO] [stdout] | [INFO] [stdout] 446 | let status: *mut xlib::XComposeStatus = ptr::null_mut(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/libx/mod.rs:518:13 [INFO] [stdout] | [INFO] [stdout] 518 | let r = xlib::XParseColor(display, cmap, cname, &mut color); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `display` [INFO] [stdout] --> src/core/window_manager.rs:16:32 [INFO] [stdout] | [INFO] [stdout] 16 | unsafe extern fn error_handler(display: *mut xlib::Display, event: *mut xlib::XErrorEvent) -> libc::c_int { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_display` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `event` [INFO] [stdout] --> src/core/window_manager.rs:16:61 [INFO] [stdout] | [INFO] [stdout] 16 | unsafe extern fn error_handler(display: *mut xlib::Display, event: *mut xlib::XErrorEvent) -> libc::c_int { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_event` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root` [INFO] [stdout] --> src/core/window_manager.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | let root = context.root; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_root` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `p` [INFO] [stdout] --> src/core/window_manager.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | let p = setlocale(6, s); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/core/window_manager.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | let res = xlib::XSupportsLocale(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/core/window_manager.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | let res = xlib::XSetLocaleModifiers(s); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mask` [INFO] [stdout] --> src/core/window_manager.rs:177:17 [INFO] [stdout] | [INFO] [stdout] 177 | let mask = 0x420010; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/core/window_manager.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | let s = libx::get_atom_name(self.context, event.message_type); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `event` [INFO] [stdout] --> src/core/window_manager.rs:222:44 [INFO] [stdout] | [INFO] [stdout] 222 | pub fn handle_button_motion(&mut self, event: &xlib::XMotionEvent) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_event` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/core/window_manager.rs:250:45 [INFO] [stdout] | [INFO] [stdout] 250 | container::Mode::Resize(index, x, y) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/core/window_manager.rs:250:52 [INFO] [stdout] | [INFO] [stdout] 250 | container::Mode::Resize(index, x, y) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/core/window_manager.rs:250:55 [INFO] [stdout] | [INFO] [stdout] 250 | container::Mode::Resize(index, x, y) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `usertime` [INFO] [stdout] --> src/core/window_manager.rs:305:13 [INFO] [stdout] | [INFO] [stdout] 305 | let usertime = libx::get_atom(self.context, "_NET_WM_USER_TIME"); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_usertime` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `usertime` [INFO] [stdout] --> src/core/window_manager.rs:307:13 [INFO] [stdout] | [INFO] [stdout] 307 | usertime => { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_usertime` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mask` [INFO] [stdout] --> src/core/window_manager.rs:452:13 [INFO] [stdout] | [INFO] [stdout] 452 | let mask = 0x1A0034; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> src/core/config.rs:60:29 [INFO] [stdout] | [INFO] [stdout] 60 | Err(err) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> src/core/config.rs:66:17 [INFO] [stdout] | [INFO] [stdout] 66 | Err(err) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `workspaces` [INFO] [stdout] --> src/core/handler.rs:56:20 [INFO] [stdout] | [INFO] [stdout] 56 | Box::new(move |workspaces| {cmd.spawn();}) [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_workspaces` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `boundingbox` [INFO] [stdout] --> src/core/layout.rs:93:18 [INFO] [stdout] | [INFO] [stdout] 93 | let (boundingbox, dummy) = libx::text_extents(context, s.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_boundingbox` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/core/layout.rs:164:10 [INFO] [stdout] | [INFO] [stdout] 164 | for (i, client) in container.clients.iter_mut().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/core/workspaces.rs:167:14 [INFO] [stdout] | [INFO] [stdout] 167 | for (k, workspace) in self.spaces.iter_mut() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/core/workspaces.rs:192:19 [INFO] [stdout] | [INFO] [stdout] 192 | Some((k, c)) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/core/container.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | for i in 0..indent { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/core/container.rs:427:14 [INFO] [stdout] | [INFO] [stdout] 427 | let (x, _) = libx::get_input_focus(self.context); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `p` [INFO] [stdout] --> src/core/container.rs:432:21 [INFO] [stdout] | [INFO] [stdout] 432 | if let Some(p) = self.get_parent() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `gc` [INFO] [stdout] --> src/core/taskbar.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 55 | let gc = context.gc; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_gc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `display` [INFO] [stdout] --> src/core/taskbar.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | let display = context.display; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_display` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `boundingbox` [INFO] [stdout] --> src/core/taskbar.rs:84:22 [INFO] [stdout] | [INFO] [stdout] 84 | let (boundingbox, dummy) = libx::text_extents(context, s.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_boundingbox` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | let mut values: xlib::XGCValues = unsafe{ mem::zeroed() }; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:113:6 [INFO] [stdout] | [INFO] [stdout] 113 | let mut wm = WindowManager { [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:314:13 [INFO] [stdout] | [INFO] [stdout] 314 | let mut change = xlib::XWindowChanges { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:390:21 [INFO] [stdout] | [INFO] [stdout] 390 | let mut event: xlib::XMotionEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:395:21 [INFO] [stdout] | [INFO] [stdout] 395 | let mut event: xlib::XButtonEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:399:21 [INFO] [stdout] | [INFO] [stdout] 399 | let mut event: xlib::XButtonEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:406:21 [INFO] [stdout] | [INFO] [stdout] 406 | let mut event: xlib::XConfigureRequestEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:411:21 [INFO] [stdout] | [INFO] [stdout] 411 | let mut event: xlib::XFocusChangeEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:417:21 [INFO] [stdout] | [INFO] [stdout] 417 | let mut event: xlib::XFocusChangeEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:421:21 [INFO] [stdout] | [INFO] [stdout] 421 | let mut event: xlib::XCrossingEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:425:21 [INFO] [stdout] | [INFO] [stdout] 425 | let mut event: xlib::XCrossingEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:430:21 [INFO] [stdout] | [INFO] [stdout] 430 | let mut event: xlib::XPropertyEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:442:17 [INFO] [stdout] | [INFO] [stdout] 442 | let mut e = libx::next_event(self.context); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/config.rs:108:21 [INFO] [stdout] | [INFO] [stdout] 108 | let mut cmd = build_cmd(args); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/libx/mod.rs:389:9 [INFO] [stdout] | [INFO] [stdout] 389 | let mut change = xlib::XWindowChanges { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/core/taskbar.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | unsafe{ [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWX` [INFO] [stdout] --> src/core/layout.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | const CWX: libc::c_uint = 1<<0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWY` [INFO] [stdout] --> src/core/layout.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const CWY: libc::c_uint = 1<<1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWWidth` [INFO] [stdout] --> src/core/layout.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const CWWidth: libc::c_uint = 1<<2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWHeight` [INFO] [stdout] --> src/core/layout.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | const CWHeight: libc::c_uint = 1<<3; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWBorderWidth` [INFO] [stdout] --> src/core/layout.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWSibling` [INFO] [stdout] --> src/core/layout.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWStackMode` [INFO] [stdout] --> src/core/layout.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWBorderWidth` [INFO] [stdout] --> src/libx/mod.rs:21:1 [INFO] [stdout] | [INFO] [stdout] 21 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWSibling` [INFO] [stdout] --> src/libx/mod.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWStackMode` [INFO] [stdout] --> src/libx/mod.rs:23:1 [INFO] [stdout] | [INFO] [stdout] 23 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_window_property` [INFO] [stdout] --> src/libx/mod.rs:234:4 [INFO] [stdout] | [INFO] [stdout] 234 | fn get_window_property(context: Context, window: Window, atom: xlib::Atom) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/core/window_manager.rs:63:48 [INFO] [stdout] | [INFO] [stdout] 63 | let s = ffi::CString::new("").unwrap().as_ptr(); [INFO] [stdout] | ------------------------------ ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(temporary_cstring_as_ptr)]` on by default [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/core/window_manager.rs:73:57 [INFO] [stdout] | [INFO] [stdout] 73 | let fontbase = ffi::CString::new(name).unwrap().as_ptr(); [INFO] [stdout] | -------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/libx/mod.rs:517:54 [INFO] [stdout] | [INFO] [stdout] 517 | let cname = ffi::CString::new(name).unwrap().as_ptr(); [INFO] [stdout] | -------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/libx/mod.rs:527:58 [INFO] [stdout] | [INFO] [stdout] 527 | let cstring = ffi::CString::new(string).unwrap().as_ptr(); [INFO] [stdout] | ---------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/libx/mod.rs:540:58 [INFO] [stdout] | [INFO] [stdout] 540 | let cstring = ffi::CString::new(string).unwrap().as_ptr(); [INFO] [stdout] | ---------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWWidth` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const CWWidth: libc::c_uint = 1<<2; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `CWWIDTH` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWHeight` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const CWHeight: libc::c_uint = 1<<3; [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `CWHEIGHT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWBorderWidth` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:21:7 [INFO] [stdout] | [INFO] [stdout] 21 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CWBORDER_WIDTH` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWSibling` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper case: `CWSIBLING` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWStackMode` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper case: `CWSTACK_MODE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/core/config.rs:86:21 [INFO] [stdout] | [INFO] [stdout] 86 | cmd.spawn(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/core/handler.rs:56:33 [INFO] [stdout] | [INFO] [stdout] 56 | Box::new(move |workspaces| {cmd.spawn();}) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWWidth` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const CWWidth: libc::c_uint = 1<<2; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `CWWIDTH` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWHeight` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:15:7 [INFO] [stdout] | [INFO] [stdout] 15 | const CWHeight: libc::c_uint = 1<<3; [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `CWHEIGHT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWBorderWidth` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CWBORDER_WIDTH` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWSibling` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper case: `CWSIBLING` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWStackMode` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper case: `CWSTACK_MODE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `border` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const border: u32 = 1; [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper case: `BORDER` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/core/container.rs:280:12 [INFO] [stdout] | [INFO] [stdout] 280 | if index >= 0 && index < size && neighbor >= 0 && neighbor < size { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/core/container.rs:280:42 [INFO] [stdout] | [INFO] [stdout] 280 | if index >= 0 && index < size && neighbor >= 0 && neighbor < size { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/core/container.rs:352:20 [INFO] [stdout] | [INFO] [stdout] 352 | if last < 0 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 99 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 8.47s [INFO] running `Command { std: "docker" "inspect" "62857dd1da04e7c7c6a581b074213cebe2c5459cf5cf9e2cdd5d866b9a509203", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "62857dd1da04e7c7c6a581b074213cebe2c5459cf5cf9e2cdd5d866b9a509203", kill_on_drop: false }` [INFO] [stdout] 62857dd1da04e7c7c6a581b074213cebe2c5459cf5cf9e2cdd5d866b9a509203 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "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:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+a77da2d454e6caa227a85b16410b95f93495e7e0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 552ee6c82e89bd8bc2b87b7cd7a875dd2e94dfaeecd50f66c6be0303d1b67f61 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "552ee6c82e89bd8bc2b87b7cd7a875dd2e94dfaeecd50f66c6be0303d1b67f61", kill_on_drop: false }` [INFO] [stderr] warning: dependency (x11) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions [INFO] [stdout] warning: unknown lint: `unstable` [INFO] [stdout] --> src/libx/mod.rs:1:10 [INFO] [stdout] | [INFO] [stdout] 1 | #![allow(unstable)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unknown_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `x11::xlib::Window` [INFO] [stdout] --> src/core/window_manager.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use x11::xlib::Window; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Lines` [INFO] [stdout] --> src/core/config.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io::Lines; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi` [INFO] [stdout] --> src/core/config.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::ffi; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::boxed::Box` [INFO] [stdout] --> src/core/config.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::boxed::Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr` [INFO] [stdout] --> src/core/handler.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ptr; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::WindowManager` [INFO] [stdout] --> src/core/handler.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use super::WindowManager; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/core/handler.rs:13:32 [INFO] [stdout] | [INFO] [stdout] 13 | use super::super::libx::{self, Context}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/core/handler.rs:53:25 [INFO] [stdout] | [INFO] [stdout] 53 | pub type HandleFn = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Workspaces)` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem` [INFO] [stdout] --> src/core/layout.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::mem; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi` [INFO] [stdout] --> src/core/layout.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::ffi; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr` [INFO] [stdout] --> src/core/layout.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ptr; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/core/layout.rs:9:24 [INFO] [stdout] | [INFO] [stdout] 9 | use super::container::{self, Container}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/core/layout.rs:188:40 [INFO] [stdout] | [INFO] [stdout] 188 | decorate(client, id==focus_id);; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::boxed::Box` [INFO] [stdout] --> src/libx/mod.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::boxed::Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/libx/mod.rs:184:21 [INFO] [stdout] | [INFO] [stdout] 184 | Err(e) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `root` is assigned to, but never used [INFO] [stdout] --> src/libx/mod.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 273 | let mut root = 0; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_root` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `root` is never read [INFO] [stdout] --> src/libx/mod.rs:285:21 [INFO] [stdout] | [INFO] [stdout] 285 | root = r; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pointer_root` [INFO] [stdout] --> src/libx/mod.rs:355:9 [INFO] [stdout] | [INFO] [stdout] 355 | let pointer_root = 1; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pointer_root` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `parent` [INFO] [stdout] --> src/libx/mod.rs:356:9 [INFO] [stdout] | [INFO] [stdout] 356 | let parent = 2; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_parent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/libx/mod.rs:368:13 [INFO] [stdout] | [INFO] [stdout] 368 | let s = xlib::XGetInputFocus(context.display, &mut window, &mut revert_to); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `status` [INFO] [stdout] --> src/libx/mod.rs:446:9 [INFO] [stdout] | [INFO] [stdout] 446 | let status: *mut xlib::XComposeStatus = ptr::null_mut(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/libx/mod.rs:518:13 [INFO] [stdout] | [INFO] [stdout] 518 | let r = xlib::XParseColor(display, cmap, cname, &mut color); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `display` [INFO] [stdout] --> src/core/window_manager.rs:16:32 [INFO] [stdout] | [INFO] [stdout] 16 | unsafe extern fn error_handler(display: *mut xlib::Display, event: *mut xlib::XErrorEvent) -> libc::c_int { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_display` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `event` [INFO] [stdout] --> src/core/window_manager.rs:16:61 [INFO] [stdout] | [INFO] [stdout] 16 | unsafe extern fn error_handler(display: *mut xlib::Display, event: *mut xlib::XErrorEvent) -> libc::c_int { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_event` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root` [INFO] [stdout] --> src/core/window_manager.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | let root = context.root; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_root` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `p` [INFO] [stdout] --> src/core/window_manager.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | let p = setlocale(6, s); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/core/window_manager.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | let res = xlib::XSupportsLocale(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/core/window_manager.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | let res = xlib::XSetLocaleModifiers(s); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mask` [INFO] [stdout] --> src/core/window_manager.rs:177:17 [INFO] [stdout] | [INFO] [stdout] 177 | let mask = 0x420010; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/core/window_manager.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | let s = libx::get_atom_name(self.context, event.message_type); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `event` [INFO] [stdout] --> src/core/window_manager.rs:222:44 [INFO] [stdout] | [INFO] [stdout] 222 | pub fn handle_button_motion(&mut self, event: &xlib::XMotionEvent) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_event` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/core/window_manager.rs:250:45 [INFO] [stdout] | [INFO] [stdout] 250 | container::Mode::Resize(index, x, y) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/core/window_manager.rs:250:52 [INFO] [stdout] | [INFO] [stdout] 250 | container::Mode::Resize(index, x, y) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/core/window_manager.rs:250:55 [INFO] [stdout] | [INFO] [stdout] 250 | container::Mode::Resize(index, x, y) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `usertime` [INFO] [stdout] --> src/core/window_manager.rs:305:13 [INFO] [stdout] | [INFO] [stdout] 305 | let usertime = libx::get_atom(self.context, "_NET_WM_USER_TIME"); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_usertime` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `usertime` [INFO] [stdout] --> src/core/window_manager.rs:307:13 [INFO] [stdout] | [INFO] [stdout] 307 | usertime => { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_usertime` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mask` [INFO] [stdout] --> src/core/window_manager.rs:452:13 [INFO] [stdout] | [INFO] [stdout] 452 | let mask = 0x1A0034; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> src/core/config.rs:60:29 [INFO] [stdout] | [INFO] [stdout] 60 | Err(err) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> src/core/config.rs:66:17 [INFO] [stdout] | [INFO] [stdout] 66 | Err(err) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `workspaces` [INFO] [stdout] --> src/core/handler.rs:56:20 [INFO] [stdout] | [INFO] [stdout] 56 | Box::new(move |workspaces| {cmd.spawn();}) [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_workspaces` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `boundingbox` [INFO] [stdout] --> src/core/layout.rs:93:18 [INFO] [stdout] | [INFO] [stdout] 93 | let (boundingbox, dummy) = libx::text_extents(context, s.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_boundingbox` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/core/layout.rs:164:10 [INFO] [stdout] | [INFO] [stdout] 164 | for (i, client) in container.clients.iter_mut().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/core/workspaces.rs:167:14 [INFO] [stdout] | [INFO] [stdout] 167 | for (k, workspace) in self.spaces.iter_mut() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/core/workspaces.rs:192:19 [INFO] [stdout] | [INFO] [stdout] 192 | Some((k, c)) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/core/container.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | for i in 0..indent { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/core/container.rs:427:14 [INFO] [stdout] | [INFO] [stdout] 427 | let (x, _) = libx::get_input_focus(self.context); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `p` [INFO] [stdout] --> src/core/container.rs:432:21 [INFO] [stdout] | [INFO] [stdout] 432 | if let Some(p) = self.get_parent() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `gc` [INFO] [stdout] --> src/core/taskbar.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 55 | let gc = context.gc; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_gc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `display` [INFO] [stdout] --> src/core/taskbar.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | let display = context.display; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_display` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `boundingbox` [INFO] [stdout] --> src/core/taskbar.rs:84:22 [INFO] [stdout] | [INFO] [stdout] 84 | let (boundingbox, dummy) = libx::text_extents(context, s.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_boundingbox` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | let mut values: xlib::XGCValues = unsafe{ mem::zeroed() }; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:113:6 [INFO] [stdout] | [INFO] [stdout] 113 | let mut wm = WindowManager { [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:314:13 [INFO] [stdout] | [INFO] [stdout] 314 | let mut change = xlib::XWindowChanges { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:390:21 [INFO] [stdout] | [INFO] [stdout] 390 | let mut event: xlib::XMotionEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:395:21 [INFO] [stdout] | [INFO] [stdout] 395 | let mut event: xlib::XButtonEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:399:21 [INFO] [stdout] | [INFO] [stdout] 399 | let mut event: xlib::XButtonEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:406:21 [INFO] [stdout] | [INFO] [stdout] 406 | let mut event: xlib::XConfigureRequestEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:411:21 [INFO] [stdout] | [INFO] [stdout] 411 | let mut event: xlib::XFocusChangeEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:417:21 [INFO] [stdout] | [INFO] [stdout] 417 | let mut event: xlib::XFocusChangeEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:421:21 [INFO] [stdout] | [INFO] [stdout] 421 | let mut event: xlib::XCrossingEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:425:21 [INFO] [stdout] | [INFO] [stdout] 425 | let mut event: xlib::XCrossingEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:430:21 [INFO] [stdout] | [INFO] [stdout] 430 | let mut event: xlib::XPropertyEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:442:17 [INFO] [stdout] | [INFO] [stdout] 442 | let mut e = libx::next_event(self.context); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/config.rs:108:21 [INFO] [stdout] | [INFO] [stdout] 108 | let mut cmd = build_cmd(args); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/libx/mod.rs:389:9 [INFO] [stdout] | [INFO] [stdout] 389 | let mut change = xlib::XWindowChanges { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/core/taskbar.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | unsafe{ [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWX` [INFO] [stdout] --> src/core/layout.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | const CWX: libc::c_uint = 1<<0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWY` [INFO] [stdout] --> src/core/layout.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const CWY: libc::c_uint = 1<<1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWWidth` [INFO] [stdout] --> src/core/layout.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const CWWidth: libc::c_uint = 1<<2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWHeight` [INFO] [stdout] --> src/core/layout.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | const CWHeight: libc::c_uint = 1<<3; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWBorderWidth` [INFO] [stdout] --> src/core/layout.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rustile v0.0.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: constant is never used: `CWSibling` [INFO] [stdout] --> src/core/layout.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWStackMode` [INFO] [stdout] --> src/core/layout.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWBorderWidth` [INFO] [stdout] --> src/libx/mod.rs:21:1 [INFO] [stdout] | [INFO] [stdout] 21 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWSibling` [INFO] [stdout] --> src/libx/mod.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWStackMode` [INFO] [stdout] --> src/libx/mod.rs:23:1 [INFO] [stdout] | [INFO] [stdout] 23 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_window_property` [INFO] [stdout] --> src/libx/mod.rs:234:4 [INFO] [stdout] | [INFO] [stdout] 234 | fn get_window_property(context: Context, window: Window, atom: xlib::Atom) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/core/window_manager.rs:63:48 [INFO] [stdout] | [INFO] [stdout] 63 | let s = ffi::CString::new("").unwrap().as_ptr(); [INFO] [stdout] | ------------------------------ ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(temporary_cstring_as_ptr)]` on by default [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/core/window_manager.rs:73:57 [INFO] [stdout] | [INFO] [stdout] 73 | let fontbase = ffi::CString::new(name).unwrap().as_ptr(); [INFO] [stdout] | -------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/libx/mod.rs:517:54 [INFO] [stdout] | [INFO] [stdout] 517 | let cname = ffi::CString::new(name).unwrap().as_ptr(); [INFO] [stdout] | -------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/libx/mod.rs:527:58 [INFO] [stdout] | [INFO] [stdout] 527 | let cstring = ffi::CString::new(string).unwrap().as_ptr(); [INFO] [stdout] | ---------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/libx/mod.rs:540:58 [INFO] [stdout] | [INFO] [stdout] 540 | let cstring = ffi::CString::new(string).unwrap().as_ptr(); [INFO] [stdout] | ---------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWWidth` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const CWWidth: libc::c_uint = 1<<2; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `CWWIDTH` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWHeight` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const CWHeight: libc::c_uint = 1<<3; [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `CWHEIGHT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWBorderWidth` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:21:7 [INFO] [stdout] | [INFO] [stdout] 21 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CWBORDER_WIDTH` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWSibling` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper case: `CWSIBLING` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWStackMode` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper case: `CWSTACK_MODE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/core/config.rs:86:21 [INFO] [stdout] | [INFO] [stdout] 86 | cmd.spawn(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/core/handler.rs:56:33 [INFO] [stdout] | [INFO] [stdout] 56 | Box::new(move |workspaces| {cmd.spawn();}) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWWidth` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const CWWidth: libc::c_uint = 1<<2; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `CWWIDTH` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWHeight` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:15:7 [INFO] [stdout] | [INFO] [stdout] 15 | const CWHeight: libc::c_uint = 1<<3; [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `CWHEIGHT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWBorderWidth` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CWBORDER_WIDTH` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWSibling` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper case: `CWSIBLING` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWStackMode` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper case: `CWSTACK_MODE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `border` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const border: u32 = 1; [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper case: `BORDER` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/core/container.rs:280:12 [INFO] [stdout] | [INFO] [stdout] 280 | if index >= 0 && index < size && neighbor >= 0 && neighbor < size { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/core/container.rs:280:42 [INFO] [stdout] | [INFO] [stdout] 280 | if index >= 0 && index < size && neighbor >= 0 && neighbor < size { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/core/container.rs:352:20 [INFO] [stdout] | [INFO] [stdout] 352 | if last < 0 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 99 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `unstable` [INFO] [stdout] --> src/libx/mod.rs:1:10 [INFO] [stdout] | [INFO] [stdout] 1 | #![allow(unstable)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unknown_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `x11::xlib::Window` [INFO] [stdout] --> src/core/window_manager.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use x11::xlib::Window; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Lines` [INFO] [stdout] --> src/core/config.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io::Lines; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi` [INFO] [stdout] --> src/core/config.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::ffi; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::boxed::Box` [INFO] [stdout] --> src/core/config.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::boxed::Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr` [INFO] [stdout] --> src/core/handler.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ptr; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::WindowManager` [INFO] [stdout] --> src/core/handler.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use super::WindowManager; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/core/handler.rs:13:32 [INFO] [stdout] | [INFO] [stdout] 13 | use super::super::libx::{self, Context}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/core/handler.rs:53:25 [INFO] [stdout] | [INFO] [stdout] 53 | pub type HandleFn = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Workspaces)` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem` [INFO] [stdout] --> src/core/layout.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::mem; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi` [INFO] [stdout] --> src/core/layout.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::ffi; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr` [INFO] [stdout] --> src/core/layout.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ptr; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/core/layout.rs:9:24 [INFO] [stdout] | [INFO] [stdout] 9 | use super::container::{self, Container}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/core/layout.rs:188:40 [INFO] [stdout] | [INFO] [stdout] 188 | decorate(client, id==focus_id);; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::super::super::libx` [INFO] [stdout] --> src/core/container.rs:552:9 [INFO] [stdout] | [INFO] [stdout] 552 | use super::super::super::libx; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::boxed::Box` [INFO] [stdout] --> src/libx/mod.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::boxed::Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/libx/mod.rs:184:21 [INFO] [stdout] | [INFO] [stdout] 184 | Err(e) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `root` is assigned to, but never used [INFO] [stdout] --> src/libx/mod.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 273 | let mut root = 0; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_root` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `root` is never read [INFO] [stdout] --> src/libx/mod.rs:285:21 [INFO] [stdout] | [INFO] [stdout] 285 | root = r; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pointer_root` [INFO] [stdout] --> src/libx/mod.rs:355:9 [INFO] [stdout] | [INFO] [stdout] 355 | let pointer_root = 1; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pointer_root` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `parent` [INFO] [stdout] --> src/libx/mod.rs:356:9 [INFO] [stdout] | [INFO] [stdout] 356 | let parent = 2; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_parent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/libx/mod.rs:368:13 [INFO] [stdout] | [INFO] [stdout] 368 | let s = xlib::XGetInputFocus(context.display, &mut window, &mut revert_to); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `status` [INFO] [stdout] --> src/libx/mod.rs:446:9 [INFO] [stdout] | [INFO] [stdout] 446 | let status: *mut xlib::XComposeStatus = ptr::null_mut(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/libx/mod.rs:518:13 [INFO] [stdout] | [INFO] [stdout] 518 | let r = xlib::XParseColor(display, cmap, cname, &mut color); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `display` [INFO] [stdout] --> src/core/window_manager.rs:16:32 [INFO] [stdout] | [INFO] [stdout] 16 | unsafe extern fn error_handler(display: *mut xlib::Display, event: *mut xlib::XErrorEvent) -> libc::c_int { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_display` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `event` [INFO] [stdout] --> src/core/window_manager.rs:16:61 [INFO] [stdout] | [INFO] [stdout] 16 | unsafe extern fn error_handler(display: *mut xlib::Display, event: *mut xlib::XErrorEvent) -> libc::c_int { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_event` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root` [INFO] [stdout] --> src/core/window_manager.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | let root = context.root; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_root` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `p` [INFO] [stdout] --> src/core/window_manager.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | let p = setlocale(6, s); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/core/window_manager.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | let res = xlib::XSupportsLocale(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/core/window_manager.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | let res = xlib::XSetLocaleModifiers(s); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mask` [INFO] [stdout] --> src/core/window_manager.rs:177:17 [INFO] [stdout] | [INFO] [stdout] 177 | let mask = 0x420010; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/core/window_manager.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | let s = libx::get_atom_name(self.context, event.message_type); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `event` [INFO] [stdout] --> src/core/window_manager.rs:222:44 [INFO] [stdout] | [INFO] [stdout] 222 | pub fn handle_button_motion(&mut self, event: &xlib::XMotionEvent) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_event` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/core/window_manager.rs:250:45 [INFO] [stdout] | [INFO] [stdout] 250 | container::Mode::Resize(index, x, y) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/core/window_manager.rs:250:52 [INFO] [stdout] | [INFO] [stdout] 250 | container::Mode::Resize(index, x, y) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/core/window_manager.rs:250:55 [INFO] [stdout] | [INFO] [stdout] 250 | container::Mode::Resize(index, x, y) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `usertime` [INFO] [stdout] --> src/core/window_manager.rs:305:13 [INFO] [stdout] | [INFO] [stdout] 305 | let usertime = libx::get_atom(self.context, "_NET_WM_USER_TIME"); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_usertime` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `usertime` [INFO] [stdout] --> src/core/window_manager.rs:307:13 [INFO] [stdout] | [INFO] [stdout] 307 | usertime => { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_usertime` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mask` [INFO] [stdout] --> src/core/window_manager.rs:452:13 [INFO] [stdout] | [INFO] [stdout] 452 | let mask = 0x1A0034; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> src/core/config.rs:60:29 [INFO] [stdout] | [INFO] [stdout] 60 | Err(err) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> src/core/config.rs:66:17 [INFO] [stdout] | [INFO] [stdout] 66 | Err(err) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `workspaces` [INFO] [stdout] --> src/core/handler.rs:56:20 [INFO] [stdout] | [INFO] [stdout] 56 | Box::new(move |workspaces| {cmd.spawn();}) [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_workspaces` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `boundingbox` [INFO] [stdout] --> src/core/layout.rs:93:18 [INFO] [stdout] | [INFO] [stdout] 93 | let (boundingbox, dummy) = libx::text_extents(context, s.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_boundingbox` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/core/layout.rs:164:10 [INFO] [stdout] | [INFO] [stdout] 164 | for (i, client) in container.clients.iter_mut().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/core/workspaces.rs:167:14 [INFO] [stdout] | [INFO] [stdout] 167 | for (k, workspace) in self.spaces.iter_mut() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/core/workspaces.rs:192:19 [INFO] [stdout] | [INFO] [stdout] 192 | Some((k, c)) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/core/container.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | for i in 0..indent { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/core/container.rs:427:14 [INFO] [stdout] | [INFO] [stdout] 427 | let (x, _) = libx::get_input_focus(self.context); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `p` [INFO] [stdout] --> src/core/container.rs:432:21 [INFO] [stdout] | [INFO] [stdout] 432 | if let Some(p) = self.get_parent() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `gc` [INFO] [stdout] --> src/core/taskbar.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 55 | let gc = context.gc; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_gc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `display` [INFO] [stdout] --> src/core/taskbar.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | let display = context.display; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_display` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `boundingbox` [INFO] [stdout] --> src/core/taskbar.rs:84:22 [INFO] [stdout] | [INFO] [stdout] 84 | let (boundingbox, dummy) = libx::text_extents(context, s.clone()); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_boundingbox` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | let mut values: xlib::XGCValues = unsafe{ mem::zeroed() }; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:113:6 [INFO] [stdout] | [INFO] [stdout] 113 | let mut wm = WindowManager { [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:314:13 [INFO] [stdout] | [INFO] [stdout] 314 | let mut change = xlib::XWindowChanges { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:390:21 [INFO] [stdout] | [INFO] [stdout] 390 | let mut event: xlib::XMotionEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:395:21 [INFO] [stdout] | [INFO] [stdout] 395 | let mut event: xlib::XButtonEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:399:21 [INFO] [stdout] | [INFO] [stdout] 399 | let mut event: xlib::XButtonEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:406:21 [INFO] [stdout] | [INFO] [stdout] 406 | let mut event: xlib::XConfigureRequestEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:411:21 [INFO] [stdout] | [INFO] [stdout] 411 | let mut event: xlib::XFocusChangeEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:417:21 [INFO] [stdout] | [INFO] [stdout] 417 | let mut event: xlib::XFocusChangeEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:421:21 [INFO] [stdout] | [INFO] [stdout] 421 | let mut event: xlib::XCrossingEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:425:21 [INFO] [stdout] | [INFO] [stdout] 425 | let mut event: xlib::XCrossingEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:430:21 [INFO] [stdout] | [INFO] [stdout] 430 | let mut event: xlib::XPropertyEvent = From::from(e); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/window_manager.rs:442:17 [INFO] [stdout] | [INFO] [stdout] 442 | let mut e = libx::next_event(self.context); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/config.rs:108:21 [INFO] [stdout] | [INFO] [stdout] 108 | let mut cmd = build_cmd(args); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/libx/mod.rs:389:9 [INFO] [stdout] | [INFO] [stdout] 389 | let mut change = xlib::XWindowChanges { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/container.rs:566:13 [INFO] [stdout] | [INFO] [stdout] 566 | let mut wm = init(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/core/taskbar.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | unsafe{ [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWX` [INFO] [stdout] --> src/core/layout.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | const CWX: libc::c_uint = 1<<0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWY` [INFO] [stdout] --> src/core/layout.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const CWY: libc::c_uint = 1<<1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWWidth` [INFO] [stdout] --> src/core/layout.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const CWWidth: libc::c_uint = 1<<2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWHeight` [INFO] [stdout] --> src/core/layout.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | const CWHeight: libc::c_uint = 1<<3; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWBorderWidth` [INFO] [stdout] --> src/core/layout.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWSibling` [INFO] [stdout] --> src/core/layout.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWStackMode` [INFO] [stdout] --> src/core/layout.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `clean` [INFO] [stdout] --> src/core/container.rs:560:8 [INFO] [stdout] | [INFO] [stdout] 560 | fn clean() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWBorderWidth` [INFO] [stdout] --> src/libx/mod.rs:21:1 [INFO] [stdout] | [INFO] [stdout] 21 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWSibling` [INFO] [stdout] --> src/libx/mod.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `CWStackMode` [INFO] [stdout] --> src/libx/mod.rs:23:1 [INFO] [stdout] | [INFO] [stdout] 23 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_window_property` [INFO] [stdout] --> src/libx/mod.rs:234:4 [INFO] [stdout] | [INFO] [stdout] 234 | fn get_window_property(context: Context, window: Window, atom: xlib::Atom) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/core/window_manager.rs:63:48 [INFO] [stdout] | [INFO] [stdout] 63 | let s = ffi::CString::new("").unwrap().as_ptr(); [INFO] [stdout] | ------------------------------ ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(temporary_cstring_as_ptr)]` on by default [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/core/window_manager.rs:73:57 [INFO] [stdout] | [INFO] [stdout] 73 | let fontbase = ffi::CString::new(name).unwrap().as_ptr(); [INFO] [stdout] | -------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/core/config.rs:231:40 [INFO] [stdout] | [INFO] [stdout] 231 | assert!(bindsyms.contains_key(&c), true); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 231 | assert!(bindsyms.contains_key(&c), "{}", true); [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/libx/mod.rs:517:54 [INFO] [stdout] | [INFO] [stdout] 517 | let cname = ffi::CString::new(name).unwrap().as_ptr(); [INFO] [stdout] | -------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/libx/mod.rs:527:58 [INFO] [stdout] | [INFO] [stdout] 527 | let cstring = ffi::CString::new(string).unwrap().as_ptr(); [INFO] [stdout] | ---------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/libx/mod.rs:540:58 [INFO] [stdout] | [INFO] [stdout] 540 | let cstring = ffi::CString::new(string).unwrap().as_ptr(); [INFO] [stdout] | ---------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWWidth` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const CWWidth: libc::c_uint = 1<<2; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `CWWIDTH` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWHeight` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const CWHeight: libc::c_uint = 1<<3; [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `CWHEIGHT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWBorderWidth` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:21:7 [INFO] [stdout] | [INFO] [stdout] 21 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CWBORDER_WIDTH` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWSibling` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper case: `CWSIBLING` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWStackMode` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper case: `CWSTACK_MODE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/core/config.rs:86:21 [INFO] [stdout] | [INFO] [stdout] 86 | cmd.spawn(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/core/handler.rs:56:33 [INFO] [stdout] | [INFO] [stdout] 56 | Box::new(move |workspaces| {cmd.spawn();}) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWWidth` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const CWWidth: libc::c_uint = 1<<2; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `CWWIDTH` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWHeight` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:15:7 [INFO] [stdout] | [INFO] [stdout] 15 | const CWHeight: libc::c_uint = 1<<3; [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `CWHEIGHT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWBorderWidth` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CWBORDER_WIDTH` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWSibling` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper case: `CWSIBLING` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWStackMode` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper case: `CWSTACK_MODE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `border` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const border: u32 = 1; [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper case: `BORDER` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/core/container.rs:280:12 [INFO] [stdout] | [INFO] [stdout] 280 | if index >= 0 && index < size && neighbor >= 0 && neighbor < size { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/core/container.rs:280:42 [INFO] [stdout] | [INFO] [stdout] 280 | if index >= 0 && index < size && neighbor >= 0 && neighbor < size { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/core/container.rs:352:20 [INFO] [stdout] | [INFO] [stdout] 352 | if last < 0 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 103 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 2.93s [INFO] running `Command { std: "docker" "inspect" "552ee6c82e89bd8bc2b87b7cd7a875dd2e94dfaeecd50f66c6be0303d1b67f61", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "552ee6c82e89bd8bc2b87b7cd7a875dd2e94dfaeecd50f66c6be0303d1b67f61", kill_on_drop: false }` [INFO] [stdout] 552ee6c82e89bd8bc2b87b7cd7a875dd2e94dfaeecd50f66c6be0303d1b67f61 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "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:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+a77da2d454e6caa227a85b16410b95f93495e7e0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 93ad811fbc8548ffb974f48b45d1b5b5f31fe2f713eacb4f436188771f3b4e3a [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "93ad811fbc8548ffb974f48b45d1b5b5f31fe2f713eacb4f436188771f3b4e3a", kill_on_drop: false }` [INFO] [stderr] warning: dependency (x11) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions [INFO] [stderr] warning: unknown lint: `unstable` [INFO] [stderr] --> src/libx/mod.rs:1:10 [INFO] [stderr] | [INFO] [stderr] 1 | #![allow(unstable)] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unknown_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `x11::xlib::Window` [INFO] [stderr] --> src/core/window_manager.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use x11::xlib::Window; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Lines` [INFO] [stderr] --> src/core/config.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::io::Lines; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ffi` [INFO] [stderr] --> src/core/config.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::ffi; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::boxed::Box` [INFO] [stderr] --> src/core/config.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use std::boxed::Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr` [INFO] [stderr] --> src/core/handler.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::ptr; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::WindowManager` [INFO] [stderr] --> src/core/handler.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use super::WindowManager; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Context` [INFO] [stderr] --> src/core/handler.rs:13:32 [INFO] [stderr] | [INFO] [stderr] 13 | use super::super::libx::{self, Context}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core/handler.rs:53:25 [INFO] [stderr] | [INFO] [stderr] 53 | pub type HandleFn = Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Workspaces)` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::mem` [INFO] [stderr] --> src/core/layout.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::mem; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ffi` [INFO] [stderr] --> src/core/layout.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::ffi; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr` [INFO] [stderr] --> src/core/layout.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::ptr; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self` [INFO] [stderr] --> src/core/layout.rs:9:24 [INFO] [stderr] | [INFO] [stderr] 9 | use super::container::{self, Container}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> src/core/layout.rs:188:40 [INFO] [stderr] | [INFO] [stderr] 188 | decorate(client, id==focus_id);; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::boxed::Box` [INFO] [stderr] --> src/libx/mod.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::boxed::Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/libx/mod.rs:184:21 [INFO] [stderr] | [INFO] [stderr] 184 | Err(e) => { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable `root` is assigned to, but never used [INFO] [stderr] --> src/libx/mod.rs:273:13 [INFO] [stderr] | [INFO] [stderr] 273 | let mut root = 0; [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_root` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `root` is never read [INFO] [stderr] --> src/libx/mod.rs:285:21 [INFO] [stderr] | [INFO] [stderr] 285 | root = r; [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pointer_root` [INFO] [stderr] --> src/libx/mod.rs:355:9 [INFO] [stderr] | [INFO] [stderr] 355 | let pointer_root = 1; [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pointer_root` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `parent` [INFO] [stderr] --> src/libx/mod.rs:356:9 [INFO] [stderr] | [INFO] [stderr] 356 | let parent = 2; [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_parent` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `s` [INFO] [stderr] --> src/libx/mod.rs:368:13 [INFO] [stderr] | [INFO] [stderr] 368 | let s = xlib::XGetInputFocus(context.display, &mut window, &mut revert_to); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `status` [INFO] [stderr] --> src/libx/mod.rs:446:9 [INFO] [stderr] | [INFO] [stderr] 446 | let status: *mut xlib::XComposeStatus = ptr::null_mut(); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `r` [INFO] [stderr] --> src/libx/mod.rs:518:13 [INFO] [stderr] | [INFO] [stderr] 518 | let r = xlib::XParseColor(display, cmap, cname, &mut color); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `display` [INFO] [stderr] --> src/core/window_manager.rs:16:32 [INFO] [stderr] | [INFO] [stderr] 16 | unsafe extern fn error_handler(display: *mut xlib::Display, event: *mut xlib::XErrorEvent) -> libc::c_int { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_display` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `event` [INFO] [stderr] --> src/core/window_manager.rs:16:61 [INFO] [stderr] | [INFO] [stderr] 16 | unsafe extern fn error_handler(display: *mut xlib::Display, event: *mut xlib::XErrorEvent) -> libc::c_int { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_event` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `root` [INFO] [stderr] --> src/core/window_manager.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | let root = context.root; [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_root` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `p` [INFO] [stderr] --> src/core/window_manager.rs:64:13 [INFO] [stderr] | [INFO] [stderr] 64 | let p = setlocale(6, s); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `res` [INFO] [stderr] --> src/core/window_manager.rs:65:13 [INFO] [stderr] | [INFO] [stderr] 65 | let res = xlib::XSupportsLocale(); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `res` [INFO] [stderr] --> src/core/window_manager.rs:66:13 [INFO] [stderr] | [INFO] [stderr] 66 | let res = xlib::XSetLocaleModifiers(s); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mask` [INFO] [stderr] --> src/core/window_manager.rs:177:17 [INFO] [stderr] | [INFO] [stderr] 177 | let mask = 0x420010; [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `s` [INFO] [stderr] --> src/core/window_manager.rs:193:13 [INFO] [stderr] | [INFO] [stderr] 193 | let s = libx::get_atom_name(self.context, event.message_type); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `event` [INFO] [stderr] --> src/core/window_manager.rs:222:44 [INFO] [stderr] | [INFO] [stderr] 222 | pub fn handle_button_motion(&mut self, event: &xlib::XMotionEvent) { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_event` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/core/window_manager.rs:250:45 [INFO] [stderr] | [INFO] [stderr] 250 | container::Mode::Resize(index, x, y) => { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/core/window_manager.rs:250:52 [INFO] [stderr] | [INFO] [stderr] 250 | container::Mode::Resize(index, x, y) => { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `y` [INFO] [stderr] --> src/core/window_manager.rs:250:55 [INFO] [stderr] | [INFO] [stderr] 250 | container::Mode::Resize(index, x, y) => { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `usertime` [INFO] [stderr] --> src/core/window_manager.rs:305:13 [INFO] [stderr] | [INFO] [stderr] 305 | let usertime = libx::get_atom(self.context, "_NET_WM_USER_TIME"); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_usertime` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `usertime` [INFO] [stderr] --> src/core/window_manager.rs:307:13 [INFO] [stderr] | [INFO] [stderr] 307 | usertime => { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_usertime` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mask` [INFO] [stderr] --> src/core/window_manager.rs:452:13 [INFO] [stderr] | [INFO] [stderr] 452 | let mask = 0x1A0034; [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `err` [INFO] [stderr] --> src/core/config.rs:60:29 [INFO] [stderr] | [INFO] [stderr] 60 | Err(err) => { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `err` [INFO] [stderr] --> src/core/config.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 66 | Err(err) => { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `workspaces` [INFO] [stderr] --> src/core/handler.rs:56:20 [INFO] [stderr] | [INFO] [stderr] 56 | Box::new(move |workspaces| {cmd.spawn();}) [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_workspaces` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `boundingbox` [INFO] [stderr] --> src/core/layout.rs:93:18 [INFO] [stderr] | [INFO] [stderr] 93 | let (boundingbox, dummy) = libx::text_extents(context, s.clone()); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_boundingbox` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/core/layout.rs:164:10 [INFO] [stderr] | [INFO] [stderr] 164 | for (i, client) in container.clients.iter_mut().enumerate() { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `k` [INFO] [stderr] --> src/core/workspaces.rs:167:14 [INFO] [stderr] | [INFO] [stderr] 167 | for (k, workspace) in self.spaces.iter_mut() { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `k` [INFO] [stderr] --> src/core/workspaces.rs:192:19 [INFO] [stderr] | [INFO] [stderr] 192 | Some((k, c)) => { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/core/container.rs:102:13 [INFO] [stderr] | [INFO] [stderr] 102 | for i in 0..indent { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/core/container.rs:427:14 [INFO] [stderr] | [INFO] [stderr] 427 | let (x, _) = libx::get_input_focus(self.context); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `p` [INFO] [stderr] --> src/core/container.rs:432:21 [INFO] [stderr] | [INFO] [stderr] 432 | if let Some(p) = self.get_parent() { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `gc` [INFO] [stderr] --> src/core/taskbar.rs:55:13 [INFO] [stderr] | [INFO] [stderr] 55 | let gc = context.gc; [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_gc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `display` [INFO] [stderr] --> src/core/taskbar.rs:56:13 [INFO] [stderr] | [INFO] [stderr] 56 | let display = context.display; [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_display` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `boundingbox` [INFO] [stderr] --> src/core/taskbar.rs:84:22 [INFO] [stderr] | [INFO] [stderr] 84 | let (boundingbox, dummy) = libx::text_extents(context, s.clone()); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_boundingbox` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/window_manager.rs:37:9 [INFO] [stderr] | [INFO] [stderr] 37 | let mut values: xlib::XGCValues = unsafe{ mem::zeroed() }; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/window_manager.rs:113:6 [INFO] [stderr] | [INFO] [stderr] 113 | let mut wm = WindowManager { [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/window_manager.rs:314:13 [INFO] [stderr] | [INFO] [stderr] 314 | let mut change = xlib::XWindowChanges { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/window_manager.rs:390:21 [INFO] [stderr] | [INFO] [stderr] 390 | let mut event: xlib::XMotionEvent = From::from(e); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/window_manager.rs:395:21 [INFO] [stderr] | [INFO] [stderr] 395 | let mut event: xlib::XButtonEvent = From::from(e); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/window_manager.rs:399:21 [INFO] [stderr] | [INFO] [stderr] 399 | let mut event: xlib::XButtonEvent = From::from(e); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/window_manager.rs:406:21 [INFO] [stderr] | [INFO] [stderr] 406 | let mut event: xlib::XConfigureRequestEvent = From::from(e); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/window_manager.rs:411:21 [INFO] [stderr] | [INFO] [stderr] 411 | let mut event: xlib::XFocusChangeEvent = From::from(e); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/window_manager.rs:417:21 [INFO] [stderr] | [INFO] [stderr] 417 | let mut event: xlib::XFocusChangeEvent = From::from(e); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/window_manager.rs:421:21 [INFO] [stderr] | [INFO] [stderr] 421 | let mut event: xlib::XCrossingEvent = From::from(e); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/window_manager.rs:425:21 [INFO] [stderr] | [INFO] [stderr] 425 | let mut event: xlib::XCrossingEvent = From::from(e); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/window_manager.rs:430:21 [INFO] [stderr] | [INFO] [stderr] 430 | let mut event: xlib::XPropertyEvent = From::from(e); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/window_manager.rs:442:17 [INFO] [stderr] | [INFO] [stderr] 442 | let mut e = libx::next_event(self.context); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/config.rs:108:21 [INFO] [stderr] | [INFO] [stderr] 108 | let mut cmd = build_cmd(args); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/libx/mod.rs:389:9 [INFO] [stderr] | [INFO] [stderr] 389 | let mut change = xlib::XWindowChanges { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/core/taskbar.rs:62:13 [INFO] [stderr] | [INFO] [stderr] 62 | unsafe{ [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `CWX` [INFO] [stderr] --> src/core/layout.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | const CWX: libc::c_uint = 1<<0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `CWY` [INFO] [stderr] --> src/core/layout.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | const CWY: libc::c_uint = 1<<1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `CWWidth` [INFO] [stderr] --> src/core/layout.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | const CWWidth: libc::c_uint = 1<<2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `CWHeight` [INFO] [stderr] --> src/core/layout.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | const CWHeight: libc::c_uint = 1<<3; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `CWBorderWidth` [INFO] [stderr] --> src/core/layout.rs:16:1 [INFO] [stderr] | [INFO] [stderr] 16 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `CWSibling` [INFO] [stderr] --> src/core/layout.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `CWStackMode` [INFO] [stderr] --> src/core/layout.rs:18:1 [INFO] [stderr] | [INFO] [stderr] 18 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `CWBorderWidth` [INFO] [stderr] --> src/libx/mod.rs:21:1 [INFO] [stderr] | [INFO] [stderr] 21 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `CWSibling` [INFO] [stderr] --> src/libx/mod.rs:22:1 [INFO] [stderr] | [INFO] [stderr] 22 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `CWStackMode` [INFO] [stderr] --> src/libx/mod.rs:23:1 [INFO] [stderr] | [INFO] [stderr] 23 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_window_property` [INFO] [stderr] --> src/libx/mod.rs:234:4 [INFO] [stderr] | [INFO] [stderr] 234 | fn get_window_property(context: Context, window: Window, atom: xlib::Atom) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/core/window_manager.rs:63:48 [INFO] [stderr] | [INFO] [stderr] 63 | let s = ffi::CString::new("").unwrap().as_ptr(); [INFO] [stderr] | ------------------------------ ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(temporary_cstring_as_ptr)]` on by default [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/core/window_manager.rs:73:57 [INFO] [stderr] | [INFO] [stderr] 73 | let fontbase = ffi::CString::new(name).unwrap().as_ptr(); [INFO] [stderr] | -------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/libx/mod.rs:517:54 [INFO] [stderr] | [INFO] [stderr] 517 | let cname = ffi::CString::new(name).unwrap().as_ptr(); [INFO] [stderr] | -------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/libx/mod.rs:527:58 [INFO] [stderr] | [INFO] [stderr] 527 | let cstring = ffi::CString::new(string).unwrap().as_ptr(); [INFO] [stderr] | ---------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/libx/mod.rs:540:58 [INFO] [stderr] | [INFO] [stderr] 540 | let cstring = ffi::CString::new(string).unwrap().as_ptr(); [INFO] [stderr] | ---------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stderr] | | [INFO] [stderr] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stderr] [INFO] [stderr] warning: constant `CWWidth` should have an upper case name [INFO] [stderr] --> src/libx/mod.rs:19:7 [INFO] [stderr] | [INFO] [stderr] 19 | const CWWidth: libc::c_uint = 1<<2; [INFO] [stderr] | ^^^^^^^ help: convert the identifier to upper case: `CWWIDTH` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant `CWHeight` should have an upper case name [INFO] [stderr] --> src/libx/mod.rs:20:7 [INFO] [stderr] | [INFO] [stderr] 20 | const CWHeight: libc::c_uint = 1<<3; [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to upper case: `CWHEIGHT` [INFO] [stderr] [INFO] [stderr] warning: constant `CWBorderWidth` should have an upper case name [INFO] [stderr] --> src/libx/mod.rs:21:7 [INFO] [stderr] | [INFO] [stderr] 21 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CWBORDER_WIDTH` [INFO] [stderr] [INFO] [stderr] warning: constant `CWSibling` should have an upper case name [INFO] [stderr] --> src/libx/mod.rs:22:7 [INFO] [stderr] | [INFO] [stderr] 22 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to upper case: `CWSIBLING` [INFO] [stderr] [INFO] [stderr] warning: constant `CWStackMode` should have an upper case name [INFO] [stderr] --> src/libx/mod.rs:23:7 [INFO] [stderr] | [INFO] [stderr] 23 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to upper case: `CWSTACK_MODE` [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/core/config.rs:86:21 [INFO] [stderr] | [INFO] [stderr] 86 | cmd.spawn(); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/core/handler.rs:56:33 [INFO] [stderr] | [INFO] [stderr] 56 | Box::new(move |workspaces| {cmd.spawn();}) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: constant `CWWidth` should have an upper case name [INFO] [stderr] --> src/core/layout.rs:14:7 [INFO] [stderr] | [INFO] [stderr] 14 | const CWWidth: libc::c_uint = 1<<2; [INFO] [stderr] | ^^^^^^^ help: convert the identifier to upper case: `CWWIDTH` [INFO] [stderr] [INFO] [stderr] warning: constant `CWHeight` should have an upper case name [INFO] [stderr] --> src/core/layout.rs:15:7 [INFO] [stderr] | [INFO] [stderr] 15 | const CWHeight: libc::c_uint = 1<<3; [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to upper case: `CWHEIGHT` [INFO] [stderr] [INFO] [stderr] warning: constant `CWBorderWidth` should have an upper case name [INFO] [stderr] --> src/core/layout.rs:16:7 [INFO] [stderr] | [INFO] [stderr] 16 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CWBORDER_WIDTH` [INFO] [stderr] [INFO] [stderr] warning: constant `CWSibling` should have an upper case name [INFO] [stderr] --> src/core/layout.rs:17:7 [INFO] [stderr] | [INFO] [stderr] 17 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to upper case: `CWSIBLING` [INFO] [stderr] [INFO] [stderr] warning: constant `CWStackMode` should have an upper case name [INFO] [stderr] --> src/core/layout.rs:18:7 [INFO] [stderr] | [INFO] [stderr] 18 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to upper case: `CWSTACK_MODE` [INFO] [stderr] [INFO] [stderr] warning: constant `border` should have an upper case name [INFO] [stderr] --> src/core/layout.rs:20:7 [INFO] [stderr] | [INFO] [stderr] 20 | const border: u32 = 1; [INFO] [stderr] | ^^^^^^ help: convert the identifier to upper case: `BORDER` [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/core/container.rs:280:12 [INFO] [stderr] | [INFO] [stderr] 280 | if index >= 0 && index < size && neighbor >= 0 && neighbor < size { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/core/container.rs:280:42 [INFO] [stderr] | [INFO] [stderr] 280 | if index >= 0 && index < size && neighbor >= 0 && neighbor < size { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> src/core/container.rs:352:20 [INFO] [stderr] | [INFO] [stderr] 352 | if last < 0 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::super::super::libx` [INFO] [stderr] --> src/core/container.rs:552:9 [INFO] [stderr] | [INFO] [stderr] 552 | use super::super::super::libx; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/container.rs:566:13 [INFO] [stderr] | [INFO] [stderr] 566 | let mut wm = init(); [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: function is never used: `clean` [INFO] [stderr] --> src/core/container.rs:560:8 [INFO] [stderr] | [INFO] [stderr] 560 | fn clean() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/core/config.rs:231:40 [INFO] [stderr] | [INFO] [stderr] 231 | assert!(bindsyms.contains_key(&c), true); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stderr] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 231 | assert!(bindsyms.contains_key(&c), "{}", true); [INFO] [stderr] | +++++ [INFO] [stderr] [INFO] [stderr] warning: `rustile` (lib) generated 99 warnings [INFO] [stderr] warning: `rustile` (lib test) generated 103 warnings (99 duplicates) [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/main.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `rustile` (bin "rustile" test) generated 1 warning [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.07s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/rustile-e7832a7a008f64ef) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test core::config::test_map ... ok [INFO] [stderr] error: test failed, to rerun pass '--lib' [INFO] [stdout] test libx::test::test_open ... FAILED [INFO] [stdout] test core::container::test::new ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- libx::test::test_open stdout ---- [INFO] [stdout] thread 'libx::test::test_open' panicked at 'assertion failed: display.is_some()', src/libx/mod.rs:571:5 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x55da0cf73d0c - std::backtrace_rs::backtrace::libunwind::trace::h7630ba4cba718aa0 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x55da0cf73d0c - std::backtrace_rs::backtrace::trace_unsynchronized::he7498e79c157f5ac [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x55da0cf73d0c - std::sys_common::backtrace::_print_fmt::hdaebadaee17bca49 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x55da0cf73d0c - ::fmt::h82b0e3aaf8a96140 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x55da0cf96bbc - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x55da0cf6fbe5 - std::io::Write::write_fmt::h21d7683cabdb4c35 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x55da0cf75760 - std::sys_common::backtrace::_print::h1c9a1d19c48821c1 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x55da0cf75760 - std::sys_common::backtrace::print::h7ce8802039fa9d0e [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x55da0cf75760 - std::panicking::default_hook::{{closure}}::hb2a74a8c1499c326 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x55da0cf75346 - std::panicking::default_hook::hf4f180b00076f2b2 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x55da0cf75e14 - std::panicking::rust_panic_with_hook::he85ce8435493b711 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x55da0cf758c2 - std::panicking::begin_panic_handler::{{closure}}::h31e15f69e6235bd2 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:500:13 [INFO] [stdout] 12: 0x55da0cf741c4 - std::sys_common::backtrace::__rust_end_short_backtrace::hfce2fadb61aaa3ae [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x55da0cf75859 - rust_begin_unwind [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x55da0cee88f1 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/core/src/panicking.rs:107:14 [INFO] [stdout] 15: 0x55da0cee883d - core::panicking::panic::h50b51d19800453c0 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/core/src/panicking.rs:48:5 [INFO] [stdout] 16: 0x55da0cf00c6a - rustile::libx::test::test_open::h357ce8105f0e0803 [INFO] [stdout] at /opt/rustwide/workdir/src/libx/mod.rs:571:5 [INFO] [stdout] 17: 0x55da0cf00bfa - rustile::libx::test::test_open::{{closure}}::h4f5669a51c672cd4 [INFO] [stdout] at /opt/rustwide/workdir/src/libx/mod.rs:569:1 [INFO] [stdout] 18: 0x55da0cf08e7e - core::ops::function::FnOnce::call_once::ha4100d9fe1f91905 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 19: 0x55da0cf50163 - core::ops::function::FnOnce::call_once::h449577f1c5b077cb [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 20: 0x55da0cf50163 - test::__rust_begin_short_backtrace::h8c2a0a5090591869 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/test/src/lib.rs:585:5 [INFO] [stdout] 21: 0x55da0cf4ecf7 - as core::ops::function::FnOnce>::call_once::hea00a22128a38543 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 22: 0x55da0cf4ecf7 - as core::ops::function::FnOnce<()>>::call_once::he10b35c3c50d78a0 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 23: 0x55da0cf4ecf7 - std::panicking::try::do_call::hc868e78bbc5af2ab [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:406:40 [INFO] [stdout] 24: 0x55da0cf4ecf7 - std::panicking::try::he468aede74df1b04 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:370:19 [INFO] [stdout] 25: 0x55da0cf4ecf7 - std::panic::catch_unwind::hce3c9152e1cf772d [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panic.rs:133:14 [INFO] [stdout] 26: 0x55da0cf4ecf7 - test::run_test_in_process::h9c4ab8162080cf8c [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/test/src/lib.rs:608:18 [INFO] [stdout] 27: 0x55da0cf4ecf7 - test::run_test::run_test_inner::{{closure}}::he9483433cef16afe [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/test/src/lib.rs:500:39 [INFO] [stdout] 28: 0x55da0cf1c03e - test::run_test::run_test_inner::{{closure}}::h479f1f872a5501ea [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/test/src/lib.rs:527:37 [INFO] [stdout] 29: 0x55da0cf1c03e - std::sys_common::backtrace::__rust_begin_short_backtrace::h0f1e9b1f279687bc [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 30: 0x55da0cf20e68 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::he5560613c5f5cb83 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 31: 0x55da0cf20e68 - as core::ops::function::FnOnce<()>>::call_once::h8190a68cb05ab92f [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 32: 0x55da0cf20e68 - std::panicking::try::do_call::h6ae22f5ac22596e4 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:406:40 [INFO] [stdout] 33: 0x55da0cf20e68 - std::panicking::try::h2381c25487d6a7c2 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:370:19 [INFO] [stdout] 34: 0x55da0cf20e68 - std::panic::catch_unwind::hfe902f4d5c9d7b6d [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panic.rs:133:14 [INFO] [stdout] 35: 0x55da0cf20e68 - std::thread::Builder::spawn_unchecked::{{closure}}::h547fad40771a584e [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 36: 0x55da0cf20e68 - core::ops::function::FnOnce::call_once{{vtable.shim}}::he8602a9971738410 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 37: 0x55da0cf7a9c3 - as core::ops::function::FnOnce>::call_once::he162a5c338a10a39 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 38: 0x55da0cf7a9c3 - as core::ops::function::FnOnce>::call_once::hb27497b21740dd97 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 39: 0x55da0cf7a9c3 - std::sys::unix::thread::Thread::new::thread_start::he467e990e49c5136 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 40: 0x7fd1cff59609 - start_thread [INFO] [stdout] 41: 0x7fd1d01ff293 - clone [INFO] [stdout] 42: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- core::container::test::new stdout ---- [INFO] [stdout] thread 'core::container::test::new' panicked at 'can't open display', src/core/window_manager.rs:105:17 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x55da0cf73d0c - std::backtrace_rs::backtrace::libunwind::trace::h7630ba4cba718aa0 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x55da0cf73d0c - std::backtrace_rs::backtrace::trace_unsynchronized::he7498e79c157f5ac [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x55da0cf73d0c - std::sys_common::backtrace::_print_fmt::hdaebadaee17bca49 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x55da0cf73d0c - ::fmt::h82b0e3aaf8a96140 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x55da0cf96bbc - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x55da0cf6fbe5 - std::io::Write::write_fmt::h21d7683cabdb4c35 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x55da0cf75760 - std::sys_common::backtrace::_print::h1c9a1d19c48821c1 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x55da0cf75760 - std::sys_common::backtrace::print::h7ce8802039fa9d0e [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x55da0cf75760 - std::panicking::default_hook::{{closure}}::hb2a74a8c1499c326 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x55da0cf75346 - std::panicking::default_hook::hf4f180b00076f2b2 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x55da0cf75e14 - std::panicking::rust_panic_with_hook::he85ce8435493b711 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x55da0cf0d50e - std::panicking::begin_panic::{{closure}}::h7b2e396adf3a2d9c [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:526:9 [INFO] [stdout] 12: 0x55da0cefb568 - std::sys_common::backtrace::__rust_end_short_backtrace::h0d75e44b8abe73e1 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x55da0cf0d38f - std::panicking::begin_panic::h37a675f213eac083 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:525:12 [INFO] [stdout] 14: 0x55da0cf07149 - rustile::core::window_manager::WindowManager::new::h037e531739bfa184 [INFO] [stdout] at /opt/rustwide/workdir/src/core/window_manager.rs:105:17 [INFO] [stdout] 15: 0x55da0cef5716 - rustile::core::container::test::init::hbc05967942404829 [INFO] [stdout] at /opt/rustwide/workdir/src/core/container.rs:555:22 [INFO] [stdout] 16: 0x55da0cef5791 - rustile::core::container::test::new::h39dc444abc52b9f1 [INFO] [stdout] at /opt/rustwide/workdir/src/core/container.rs:566:22 [INFO] [stdout] 17: 0x55da0cef576a - rustile::core::container::test::new::{{closure}}::h28886bcc30e76b39 [INFO] [stdout] at /opt/rustwide/workdir/src/core/container.rs:565:5 [INFO] [stdout] 18: 0x55da0cf08c4e - core::ops::function::FnOnce::call_once::h058049688044f834 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 19: 0x55da0cf50163 - core::ops::function::FnOnce::call_once::h449577f1c5b077cb [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 20: 0x55da0cf50163 - test::__rust_begin_short_backtrace::h8c2a0a5090591869 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/test/src/lib.rs:585:5 [INFO] [stdout] 21: 0x55da0cf4ecf7 - as core::ops::function::FnOnce>::call_once::hea00a22128a38543 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 22: 0x55da0cf4ecf7 - as core::ops::function::FnOnce<()>>::call_once::he10b35c3c50d78a0 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 23: 0x55da0cf4ecf7 - std::panicking::try::do_call::hc868e78bbc5af2ab [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:406:40 [INFO] [stdout] 24: 0x55da0cf4ecf7 - std::panicking::try::he468aede74df1b04 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:370:19 [INFO] [stdout] 25: 0x55da0cf4ecf7 - std::panic::catch_unwind::hce3c9152e1cf772d [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panic.rs:133:14 [INFO] [stdout] 26: 0x55da0cf4ecf7 - test::run_test_in_process::h9c4ab8162080cf8c [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/test/src/lib.rs:608:18 [INFO] [stdout] 27: 0x55da0cf4ecf7 - test::run_test::run_test_inner::{{closure}}::he9483433cef16afe [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/test/src/lib.rs:500:39 [INFO] [stdout] 28: 0x55da0cf1c03e - test::run_test::run_test_inner::{{closure}}::h479f1f872a5501ea [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/test/src/lib.rs:527:37 [INFO] [stdout] 29: 0x55da0cf1c03e - std::sys_common::backtrace::__rust_begin_short_backtrace::h0f1e9b1f279687bc [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 30: 0x55da0cf20e68 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::he5560613c5f5cb83 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 31: 0x55da0cf20e68 - as core::ops::function::FnOnce<()>>::call_once::h8190a68cb05ab92f [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 32: 0x55da0cf20e68 - std::panicking::try::do_call::h6ae22f5ac22596e4 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:406:40 [INFO] [stdout] 33: 0x55da0cf20e68 - std::panicking::try::h2381c25487d6a7c2 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panicking.rs:370:19 [INFO] [stdout] 34: 0x55da0cf20e68 - std::panic::catch_unwind::hfe902f4d5c9d7b6d [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/panic.rs:133:14 [INFO] [stdout] 35: 0x55da0cf20e68 - std::thread::Builder::spawn_unchecked::{{closure}}::h547fad40771a584e [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 36: 0x55da0cf20e68 - core::ops::function::FnOnce::call_once{{vtable.shim}}::he8602a9971738410 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 37: 0x55da0cf7a9c3 - as core::ops::function::FnOnce>::call_once::he162a5c338a10a39 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 38: 0x55da0cf7a9c3 - as core::ops::function::FnOnce>::call_once::hb27497b21740dd97 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 39: 0x55da0cf7a9c3 - std::sys::unix::thread::Thread::new::thread_start::he467e990e49c5136 [INFO] [stdout] at /rustc/a77da2d454e6caa227a85b16410b95f93495e7e0/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 40: 0x7fd1cff59609 - start_thread [INFO] [stdout] 41: 0x7fd1d01ff293 - clone [INFO] [stdout] 42: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] core::container::test::new [INFO] [stdout] libx::test::test_open [INFO] [stdout] [INFO] [stdout] test result: FAILED. 1 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "93ad811fbc8548ffb974f48b45d1b5b5f31fe2f713eacb4f436188771f3b4e3a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "93ad811fbc8548ffb974f48b45d1b5b5f31fe2f713eacb4f436188771f3b4e3a", kill_on_drop: false }` [INFO] [stdout] 93ad811fbc8548ffb974f48b45d1b5b5f31fe2f713eacb4f436188771f3b4e3a