[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 1.59.0 for beta-1.60-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flutianming%2Frustile" "/workspace/builds/worker-5/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/lutianming/rustile on toolchain 1.59.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.59.0" "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-5/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" "+1.59.0" "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] Downloading crates ... [INFO] [stderr] Downloaded env_logger v0.3.1 [INFO] [stderr] Downloaded regex v0.1.33 [INFO] [stderr] Downloaded regex-syntax v0.1.2 [INFO] [stderr] Downloaded x11 v1.1.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 974b775c6783d58d7919e5f93223f7b7e0a410e5844dccddd71b82f54def712a [INFO] running `Command { std: "docker" "start" "-a" "974b775c6783d58d7919e5f93223f7b7e0a410e5844dccddd71b82f54def712a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "974b775c6783d58d7919e5f93223f7b7e0a410e5844dccddd71b82f54def712a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "974b775c6783d58d7919e5f93223f7b7e0a410e5844dccddd71b82f54def712a", kill_on_drop: false }` [INFO] [stdout] 974b775c6783d58d7919e5f93223f7b7e0a410e5844dccddd71b82f54def712a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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=warn" "-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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f866994f94d41922b61a27d864c6a986d60d6b7e9babf3bf11bdcd646f0055e1 [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" "f866994f94d41922b61a27d864c6a986d60d6b7e9babf3bf11bdcd646f0055e1", 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 pkg-config v0.3.4 [INFO] [stderr] Compiling libc v0.1.8 [INFO] [stderr] Compiling regex-syntax v0.1.2 [INFO] [stderr] Compiling log v0.3.1 [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: 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: 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] | ^^^^^^^^^^^^^^^^^^^^^^ [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] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 53 - pub type HandleFn = Box; [INFO] [stdout] 53 + pub type HandleFn = 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 10.83s [INFO] running `Command { std: "docker" "inspect" "f866994f94d41922b61a27d864c6a986d60d6b7e9babf3bf11bdcd646f0055e1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f866994f94d41922b61a27d864c6a986d60d6b7e9babf3bf11bdcd646f0055e1", kill_on_drop: false }` [INFO] [stdout] f866994f94d41922b61a27d864c6a986d60d6b7e9babf3bf11bdcd646f0055e1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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=warn" "-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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 43f7c0001ed47629791a3d3e959636ca09664c3d88bf5733c2b0ef22cd5da9df [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" "43f7c0001ed47629791a3d3e959636ca09664c3d88bf5733c2b0ef22cd5da9df", 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: 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: 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] | ^^^^^^^^^^^^^^^^^^^^^^ [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] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 53 - pub type HandleFn = Box; [INFO] [stdout] 53 + pub type HandleFn = 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] [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 `#[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: 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: 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] | ^^^^^^^^^^^^^^^^^^^^^^ [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] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 53 - pub type HandleFn = Box; [INFO] [stdout] 53 + pub type HandleFn = 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 3.09s [INFO] running `Command { std: "docker" "inspect" "43f7c0001ed47629791a3d3e959636ca09664c3d88bf5733c2b0ef22cd5da9df", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "43f7c0001ed47629791a3d3e959636ca09664c3d88bf5733c2b0ef22cd5da9df", kill_on_drop: false }` [INFO] [stdout] 43f7c0001ed47629791a3d3e959636ca09664c3d88bf5733c2b0ef22cd5da9df [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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=warn" "-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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 518ff77b247aac1f384b278ccbcfff3bf73c28506a512c760a6db04ffdd6adf4 [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" "518ff77b247aac1f384b278ccbcfff3bf73c28506a512c760a6db04ffdd6adf4", 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: 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: 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] | ^^^^^^^^^^^^^^^^^^^^^^ [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] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 53 - pub type HandleFn = Box; [INFO] [stderr] 53 + pub type HandleFn = 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.03s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/rustile-07d1037fa38f643b) [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: 0x558fe6679c8c - std::backtrace_rs::backtrace::libunwind::trace::h91c465e73bf6c785 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x558fe6679c8c - std::backtrace_rs::backtrace::trace_unsynchronized::hae9da36f5d58b5f3 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x558fe6679c8c - std::sys_common::backtrace::_print_fmt::h7f499fa126a7effb [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x558fe6679c8c - ::fmt::h3e2b509ce2ce6007 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x558fe669f68c - core::fmt::write::h753c7571fa063ecb [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/fmt/mod.rs:1168:17 [INFO] [stdout] 5: 0x558fe6674e93 - std::io::Write::write_fmt::hb649ab67f71b6655 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/io/mod.rs:1660:15 [INFO] [stdout] 6: 0x558fe667c362 - std::sys_common::backtrace::_print::h64941a6fc8b0ed9b [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x558fe667c362 - std::sys_common::backtrace::print::hcf25e43e1a9b0766 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x558fe667c362 - std::panicking::default_hook::{{closure}}::h78d3e6cf97fc623d [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x558fe667bfb1 - std::panicking::default_hook::hda898f8d3ad1a5ae [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x558fe667c9b3 - std::panicking::rust_panic_with_hook::h1a5ea2d6c23051aa [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x558fe667c6a2 - std::panicking::begin_panic_handler::{{closure}}::h07f549390938b73f [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:500:13 [INFO] [stdout] 12: 0x558fe667a134 - std::sys_common::backtrace::__rust_end_short_backtrace::h5ec3758a92cfb00d [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x558fe667c409 - rust_begin_unwind [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x558fe65f0e51 - core::panicking::panic_fmt::h3a79a6a99affe1d5 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/panicking.rs:116:14 [INFO] [stdout] 15: 0x558fe65f0d9d - core::panicking::panic::h97167cd315d19cd4 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/panicking.rs:48:5 [INFO] [stdout] 16: 0x558fe66039ea - rustile::libx::test::test_open::ha69f6f5e81d127fa [INFO] [stdout] at /opt/rustwide/workdir/src/libx/mod.rs:571:5 [INFO] [stdout] 17: 0x558fe660397a - rustile::libx::test::test_open::{{closure}}::h51a3f8275b942a17 [INFO] [stdout] at /opt/rustwide/workdir/src/libx/mod.rs:569:1 [INFO] [stdout] 18: 0x558fe660ce6e - core::ops::function::FnOnce::call_once::hf0eb4ebc5a374f11 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 19: 0x558fe664e7a3 - core::ops::function::FnOnce::call_once::h1845a80638abc06e [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 20: 0x558fe664e7a3 - test::__rust_begin_short_backtrace::h4f56ccea01b9889f [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/test/src/lib.rs:574:5 [INFO] [stdout] 21: 0x558fe664d48f - as core::ops::function::FnOnce>::call_once::h5afedf14a39ffa74 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/alloc/src/boxed.rs:1854:9 [INFO] [stdout] 22: 0x558fe664d48f - as core::ops::function::FnOnce<()>>::call_once::hd5aaa1b551e9ce71 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 23: 0x558fe664d48f - std::panicking::try::do_call::h316eebee63f96d32 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:406:40 [INFO] [stdout] 24: 0x558fe664d48f - std::panicking::try::h662e31e84dd7ce52 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:370:19 [INFO] [stdout] 25: 0x558fe664d48f - std::panic::catch_unwind::h129c1b23f076663f [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panic.rs:133:14 [INFO] [stdout] 26: 0x558fe664d48f - test::run_test_in_process::h51d800d572f878ef [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/test/src/lib.rs:597:18 [INFO] [stdout] 27: 0x558fe664d48f - test::run_test::run_test_inner::{{closure}}::h71a47db430260854 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/test/src/lib.rs:491:39 [INFO] [stdout] 28: 0x558fe6656851 - test::run_test::run_test_inner::{{closure}}::h02edd5b3e2dab52a [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/test/src/lib.rs:518:37 [INFO] [stdout] 29: 0x558fe6656851 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0838cfc8b0e995ec [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 30: 0x558fe66232df - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h4c2725d7078043cd [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/thread/mod.rs:477:17 [INFO] [stdout] 31: 0x558fe66232df - as core::ops::function::FnOnce<()>>::call_once::hdf1aa612eed87270 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 32: 0x558fe66232df - std::panicking::try::do_call::hc72f8de3706d18d6 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:406:40 [INFO] [stdout] 33: 0x558fe66232df - std::panicking::try::h63f01f54dbd0fb87 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:370:19 [INFO] [stdout] 34: 0x558fe66232df - std::panic::catch_unwind::h58bc464ae9b26453 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panic.rs:133:14 [INFO] [stdout] 35: 0x558fe66232df - std::thread::Builder::spawn_unchecked::{{closure}}::h6c065e19513e33e3 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/thread/mod.rs:476:30 [INFO] [stdout] 36: 0x558fe66232df - core::ops::function::FnOnce::call_once{{vtable.shim}}::hd143450c74f35c32 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 37: 0x558fe6682643 - as core::ops::function::FnOnce>::call_once::h49b6c7c5155a2296 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/alloc/src/boxed.rs:1854:9 [INFO] [stdout] 38: 0x558fe6682643 - as core::ops::function::FnOnce>::call_once::ha8b5234bfeb15105 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/alloc/src/boxed.rs:1854:9 [INFO] [stdout] 39: 0x558fe6682643 - std::sys::unix::thread::Thread::new::thread_start::h6f207dd842d64859 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys/unix/thread.rs:108:17 [INFO] [stdout] 40: 0x7febdc200609 - start_thread [INFO] [stdout] 41: 0x7febdc4a6293 - 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: 0x558fe6679c8c - std::backtrace_rs::backtrace::libunwind::trace::h91c465e73bf6c785 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x558fe6679c8c - std::backtrace_rs::backtrace::trace_unsynchronized::hae9da36f5d58b5f3 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x558fe6679c8c - std::sys_common::backtrace::_print_fmt::h7f499fa126a7effb [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x558fe6679c8c - ::fmt::h3e2b509ce2ce6007 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x558fe669f68c - core::fmt::write::h753c7571fa063ecb [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/fmt/mod.rs:1168:17 [INFO] [stdout] 5: 0x558fe6674e93 - std::io::Write::write_fmt::hb649ab67f71b6655 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/io/mod.rs:1660:15 [INFO] [stdout] 6: 0x558fe667c362 - std::sys_common::backtrace::_print::h64941a6fc8b0ed9b [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x558fe667c362 - std::sys_common::backtrace::print::hcf25e43e1a9b0766 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x558fe667c362 - std::panicking::default_hook::{{closure}}::h78d3e6cf97fc623d [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x558fe667bfb1 - std::panicking::default_hook::hda898f8d3ad1a5ae [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x558fe667c9b3 - std::panicking::rust_panic_with_hook::h1a5ea2d6c23051aa [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x558fe66168fe - std::panicking::begin_panic::{{closure}}::h39eb5f7f5fea5240 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:526:9 [INFO] [stdout] 12: 0x558fe65ff7d8 - std::sys_common::backtrace::__rust_end_short_backtrace::h4a30021225115fd5 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x558fe66167ff - std::panicking::begin_panic::h8003b7dbe45b3da2 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:525:12 [INFO] [stdout] 14: 0x558fe660ec79 - rustile::core::window_manager::WindowManager::new::h5915c90e1c8c3ad8 [INFO] [stdout] at /opt/rustwide/workdir/src/core/window_manager.rs:105:17 [INFO] [stdout] 15: 0x558fe65fe026 - rustile::core::container::test::init::hbe81be663dfec447 [INFO] [stdout] at /opt/rustwide/workdir/src/core/container.rs:555:22 [INFO] [stdout] 16: 0x558fe65fe0a1 - rustile::core::container::test::new::h4e79275e0fb09469 [INFO] [stdout] at /opt/rustwide/workdir/src/core/container.rs:566:22 [INFO] [stdout] 17: 0x558fe65fe07a - rustile::core::container::test::new::{{closure}}::hc4190c069e2c584d [INFO] [stdout] at /opt/rustwide/workdir/src/core/container.rs:565:5 [INFO] [stdout] 18: 0x558fe660ceae - core::ops::function::FnOnce::call_once::hfbddc5369ac2854c [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 19: 0x558fe664e7a3 - core::ops::function::FnOnce::call_once::h1845a80638abc06e [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 20: 0x558fe664e7a3 - test::__rust_begin_short_backtrace::h4f56ccea01b9889f [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/test/src/lib.rs:574:5 [INFO] [stdout] 21: 0x558fe664d48f - as core::ops::function::FnOnce>::call_once::h5afedf14a39ffa74 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/alloc/src/boxed.rs:1854:9 [INFO] [stdout] 22: 0x558fe664d48f - as core::ops::function::FnOnce<()>>::call_once::hd5aaa1b551e9ce71 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 23: 0x558fe664d48f - std::panicking::try::do_call::h316eebee63f96d32 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:406:40 [INFO] [stdout] 24: 0x558fe664d48f - std::panicking::try::h662e31e84dd7ce52 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:370:19 [INFO] [stdout] 25: 0x558fe664d48f - std::panic::catch_unwind::h129c1b23f076663f [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panic.rs:133:14 [INFO] [stdout] 26: 0x558fe664d48f - test::run_test_in_process::h51d800d572f878ef [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/test/src/lib.rs:597:18 [INFO] [stdout] 27: 0x558fe664d48f - test::run_test::run_test_inner::{{closure}}::h71a47db430260854 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/test/src/lib.rs:491:39 [INFO] [stdout] 28: 0x558fe6656851 - test::run_test::run_test_inner::{{closure}}::h02edd5b3e2dab52a [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/test/src/lib.rs:518:37 [INFO] [stdout] 29: 0x558fe6656851 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0838cfc8b0e995ec [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 30: 0x558fe66232df - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h4c2725d7078043cd [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/thread/mod.rs:477:17 [INFO] [stdout] 31: 0x558fe66232df - as core::ops::function::FnOnce<()>>::call_once::hdf1aa612eed87270 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 32: 0x558fe66232df - std::panicking::try::do_call::hc72f8de3706d18d6 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:406:40 [INFO] [stdout] 33: 0x558fe66232df - std::panicking::try::h63f01f54dbd0fb87 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:370:19 [INFO] [stdout] 34: 0x558fe66232df - std::panic::catch_unwind::h58bc464ae9b26453 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panic.rs:133:14 [INFO] [stdout] 35: 0x558fe66232df - std::thread::Builder::spawn_unchecked::{{closure}}::h6c065e19513e33e3 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/thread/mod.rs:476:30 [INFO] [stdout] 36: 0x558fe66232df - core::ops::function::FnOnce::call_once{{vtable.shim}}::hd143450c74f35c32 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 37: 0x558fe6682643 - as core::ops::function::FnOnce>::call_once::h49b6c7c5155a2296 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/alloc/src/boxed.rs:1854:9 [INFO] [stdout] 38: 0x558fe6682643 - as core::ops::function::FnOnce>::call_once::ha8b5234bfeb15105 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/alloc/src/boxed.rs:1854:9 [INFO] [stdout] 39: 0x558fe6682643 - std::sys::unix::thread::Thread::new::thread_start::h6f207dd842d64859 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys/unix/thread.rs:108:17 [INFO] [stdout] 40: 0x7febdc200609 - start_thread [INFO] [stdout] 41: 0x7febdc4a6293 - 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.07s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "518ff77b247aac1f384b278ccbcfff3bf73c28506a512c760a6db04ffdd6adf4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "518ff77b247aac1f384b278ccbcfff3bf73c28506a512c760a6db04ffdd6adf4", kill_on_drop: false }` [INFO] [stdout] 518ff77b247aac1f384b278ccbcfff3bf73c28506a512c760a6db04ffdd6adf4