[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.60.0 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flutianming%2Frustile" "/workspace/builds/worker-29/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-29/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/lutianming/rustile on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.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-29/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.60.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] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [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-29/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-29/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c3bc8ec8715fb6451d8302f8a4fbf842e7a875cde5909f9461993a4acace5ee1 [INFO] running `Command { std: "docker" "start" "-a" "c3bc8ec8715fb6451d8302f8a4fbf842e7a875cde5909f9461993a4acace5ee1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c3bc8ec8715fb6451d8302f8a4fbf842e7a875cde5909f9461993a4acace5ee1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c3bc8ec8715fb6451d8302f8a4fbf842e7a875cde5909f9461993a4acace5ee1", kill_on_drop: false }` [INFO] [stdout] c3bc8ec8715fb6451d8302f8a4fbf842e7a875cde5909f9461993a4acace5ee1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-29/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-29/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 12a51935897b9a6e0d2675734d4e47db249c3beb57bc69a8d6f13745a00e96ee [INFO] running `Command { std: "docker" "start" "-a" "12a51935897b9a6e0d2675734d4e47db249c3beb57bc69a8d6f13745a00e96ee", kill_on_drop: false }` [INFO] [stderr] warning: dependency (x11) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling libc v0.1.8 [INFO] [stderr] Compiling pkg-config v0.3.4 [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: `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] = note: `#[warn(dead_code)]` on by default [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: 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] [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: 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 5.23s [INFO] running `Command { std: "docker" "inspect" "12a51935897b9a6e0d2675734d4e47db249c3beb57bc69a8d6f13745a00e96ee", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "12a51935897b9a6e0d2675734d4e47db249c3beb57bc69a8d6f13745a00e96ee", kill_on_drop: false }` [INFO] [stdout] 12a51935897b9a6e0d2675734d4e47db249c3beb57bc69a8d6f13745a00e96ee [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-29/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-29/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8f92dbe8005a6e12b3b80d2d898d40c29aa4b20b5080a77bcccab1a0a3eb8004 [INFO] running `Command { std: "docker" "start" "-a" "8f92dbe8005a6e12b3b80d2d898d40c29aa4b20b5080a77bcccab1a0a3eb8004", 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] [stderr] Compiling rustile v0.0.1 (/opt/rustwide/workdir) [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: `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] = note: `#[warn(dead_code)]` on by default [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: 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] [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: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/core/window_manager.rs:63:48 [INFO] [stdout] | [INFO] [stdout] 63 | let s = ffi::CString::new("").unwrap().as_ptr(); [INFO] [stdout] | ------------------------------ ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(temporary_cstring_as_ptr)]` on by default [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/core/window_manager.rs:73:57 [INFO] [stdout] | [INFO] [stdout] 73 | let fontbase = ffi::CString::new(name).unwrap().as_ptr(); [INFO] [stdout] | -------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/libx/mod.rs:517:54 [INFO] [stdout] | [INFO] [stdout] 517 | let cname = ffi::CString::new(name).unwrap().as_ptr(); [INFO] [stdout] | -------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/libx/mod.rs:527:58 [INFO] [stdout] | [INFO] [stdout] 527 | let cstring = ffi::CString::new(string).unwrap().as_ptr(); [INFO] [stdout] | ---------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: getting the inner pointer of a temporary `CString` [INFO] [stdout] --> src/libx/mod.rs:540:58 [INFO] [stdout] | [INFO] [stdout] 540 | let cstring = ffi::CString::new(string).unwrap().as_ptr(); [INFO] [stdout] | ---------------------------------- ^^^^^^ this pointer will be invalid [INFO] [stdout] | | [INFO] [stdout] | this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: for more information, see https://doc.rust-lang.org/reference/destructors.html [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWWidth` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const CWWidth: libc::c_uint = 1<<2; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `CWWIDTH` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWHeight` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const CWHeight: libc::c_uint = 1<<3; [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `CWHEIGHT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWBorderWidth` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:21:7 [INFO] [stdout] | [INFO] [stdout] 21 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CWBORDER_WIDTH` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWSibling` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper case: `CWSIBLING` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWStackMode` should have an upper case name [INFO] [stdout] --> src/libx/mod.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper case: `CWSTACK_MODE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/core/config.rs:86:21 [INFO] [stdout] | [INFO] [stdout] 86 | cmd.spawn(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/core/handler.rs:56:33 [INFO] [stdout] | [INFO] [stdout] 56 | Box::new(move |workspaces| {cmd.spawn();}) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWWidth` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const CWWidth: libc::c_uint = 1<<2; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `CWWIDTH` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWHeight` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:15:7 [INFO] [stdout] | [INFO] [stdout] 15 | const CWHeight: libc::c_uint = 1<<3; [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to upper case: `CWHEIGHT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWBorderWidth` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | const CWBorderWidth: libc::c_uint = 1<<4; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CWBORDER_WIDTH` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWSibling` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const CWSibling: libc::c_uint = 1<<5; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper case: `CWSIBLING` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CWStackMode` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const CWStackMode: libc::c_uint = 1<<6; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper case: `CWSTACK_MODE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `border` should have an upper case name [INFO] [stdout] --> src/core/layout.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const border: u32 = 1; [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper case: `BORDER` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/core/container.rs:280:12 [INFO] [stdout] | [INFO] [stdout] 280 | if index >= 0 && index < size && neighbor >= 0 && neighbor < size { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/core/container.rs:280:42 [INFO] [stdout] | [INFO] [stdout] 280 | if index >= 0 && index < size && neighbor >= 0 && neighbor < size { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/core/container.rs:352:20 [INFO] [stdout] | [INFO] [stdout] 352 | if last < 0 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 99 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `unstable` [INFO] [stdout] --> src/libx/mod.rs:1:10 [INFO] [stdout] | [INFO] [stdout] 1 | #![allow(unstable)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unknown_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `x11::xlib::Window` [INFO] [stdout] --> src/core/window_manager.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use x11::xlib::Window; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Lines` [INFO] [stdout] --> src/core/config.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io::Lines; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi` [INFO] [stdout] --> src/core/config.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::ffi; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::boxed::Box` [INFO] [stdout] --> src/core/config.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::boxed::Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr` [INFO] [stdout] --> src/core/handler.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ptr; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::WindowManager` [INFO] [stdout] --> src/core/handler.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use super::WindowManager; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/core/handler.rs:13:32 [INFO] [stdout] | [INFO] [stdout] 13 | use super::super::libx::{self, Context}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 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: `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] = note: `#[warn(dead_code)]` on by default [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: 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] [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: 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 0.84s [INFO] running `Command { std: "docker" "inspect" "8f92dbe8005a6e12b3b80d2d898d40c29aa4b20b5080a77bcccab1a0a3eb8004", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8f92dbe8005a6e12b3b80d2d898d40c29aa4b20b5080a77bcccab1a0a3eb8004", kill_on_drop: false }` [INFO] [stdout] 8f92dbe8005a6e12b3b80d2d898d40c29aa4b20b5080a77bcccab1a0a3eb8004 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-29/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-29/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] ca83e82712e454d27ad32da9134cef5355ad6a4d2be1419d1026d0b3955f9a42 [INFO] running `Command { std: "docker" "start" "-a" "ca83e82712e454d27ad32da9134cef5355ad6a4d2be1419d1026d0b3955f9a42", kill_on_drop: false }` [INFO] [stderr] warning: dependency (x11) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [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: `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] = note: `#[warn(dead_code)]` on by default [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: 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] 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: 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.51s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/rustile-fdd348dfd13d0a7d) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test core::config::test_map ... ok [INFO] [stdout] test core::container::test::new ... FAILED [INFO] [stdout] test libx::test::test_open ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [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: 0x5564cb1ea46d - std::backtrace_rs::backtrace::libunwind::trace::hee598835bc88d35b [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5564cb1ea46d - std::backtrace_rs::backtrace::trace_unsynchronized::h9cdc730ba5cf5d72 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5564cb1ea46d - std::sys_common::backtrace::_print_fmt::h75aeaf7ed30e43fa [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:66:5 [INFO] [stdout] 3: 0x5564cb1ea46d - ::fmt::h606862f787600875 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:45:22 [INFO] [stdout] 4: 0x5564cb20f90c - core::fmt::write::he803f0f418caf762 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/fmt/mod.rs:1190:17 [INFO] [stdout] 5: 0x5564cb1e5d08 - std::io::Write::write_fmt::hbe7c1a63616291e2 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/io/mod.rs:1657:15 [INFO] [stdout] 6: 0x5564cb1ec747 - std::sys_common::backtrace::_print::h64d038cf8ac3e13e [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:48:5 [INFO] [stdout] 7: 0x5564cb1ec747 - std::sys_common::backtrace::print::h359300b4a7fccf65 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:35:9 [INFO] [stdout] 8: 0x5564cb1ec747 - std::panicking::default_hook::{{closure}}::hf51be35e2f510149 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:295:22 [INFO] [stdout] 9: 0x5564cb1ec47c - std::panicking::default_hook::h03ca0f22e1d2d25e [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:311:9 [INFO] [stdout] 10: 0x5564cb1ece99 - std::panicking::rust_panic_with_hook::h3b7380e99b825b63 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:698:17 [INFO] [stdout] 11: 0x5564cb189e54 - std::panicking::begin_panic::{{closure}}::h94d0cdbf499c6b72 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:617:9 [INFO] [stdout] 12: 0x5564cb178af8 - std::sys_common::backtrace::__rust_end_short_backtrace::h11573bbf99ea4c37 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:138:18 [INFO] [stdout] 13: 0x5564cb189d4f - std::panicking::begin_panic::had57ed7f66eb65f8 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:616:12 [INFO] [stdout] 14: 0x5564cb17d999 - rustile::core::window_manager::WindowManager::new::h4784db385071f526 [INFO] [stdout] at /opt/rustwide/workdir/src/core/window_manager.rs:105:17 [INFO] [stdout] 15: 0x5564cb174866 - rustile::core::container::test::init::hc30c8fc48b7bb8f6 [INFO] [stdout] at /opt/rustwide/workdir/src/core/container.rs:555:22 [INFO] [stdout] 16: 0x5564cb1748e1 - rustile::core::container::test::new::h62f69482789b8d37 [INFO] [stdout] at /opt/rustwide/workdir/src/core/container.rs:566:22 [INFO] [stdout] 17: 0x5564cb1748ba - rustile::core::container::test::new::{{closure}}::h8f830c2bf9345c75 [INFO] [stdout] at /opt/rustwide/workdir/src/core/container.rs:565:5 [INFO] [stdout] 18: 0x5564cb1814ce - core::ops::function::FnOnce::call_once::hdbe28a922cf19c8c [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 19: 0x5564cb1bec43 - core::ops::function::FnOnce::call_once::h2a47b4b927cb6ca5 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 20: 0x5564cb1bec43 - test::__rust_begin_short_backtrace::h594ef8055a183b9b [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:575:5 [INFO] [stdout] 21: 0x5564cb1bd924 - as core::ops::function::FnOnce>::call_once::hb40cbb8bc3e1be15 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853:9 [INFO] [stdout] 22: 0x5564cb1bd924 - as core::ops::function::FnOnce<()>>::call_once::ha4f2bd3b806745a0 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 23: 0x5564cb1bd924 - std::panicking::try::do_call::h92af9f8bc77a5987 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:492:40 [INFO] [stdout] 24: 0x5564cb1bd924 - std::panicking::try::h9df49eeae42572b7 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:456:19 [INFO] [stdout] 25: 0x5564cb1bd924 - std::panic::catch_unwind::h101dbadc82bbe0fd [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panic.rs:137:14 [INFO] [stdout] 26: 0x5564cb1bd924 - test::run_test_in_process::h2ad7bffb068e750a [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:598:18 [INFO] [stdout] 27: 0x5564cb1bd924 - test::run_test::run_test_inner::{{closure}}::h384faf46554c5acb [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:492:39 [INFO] [stdout] 28: 0x5564cb1c7241 - test::run_test::run_test_inner::{{closure}}::h17cfe94835a46685 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:519:37 [INFO] [stdout] 29: 0x5564cb1c7241 - std::sys_common::backtrace::__rust_begin_short_backtrace::h82709e5086312627 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:122:18 [INFO] [stdout] 30: 0x5564cb1938bf - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hdfea66a201b39571 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/thread/mod.rs:498:17 [INFO] [stdout] 31: 0x5564cb1938bf - as core::ops::function::FnOnce<()>>::call_once::h4912df03598e67fa [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 32: 0x5564cb1938bf - std::panicking::try::do_call::h6d5dc1045d0eade8 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:492:40 [INFO] [stdout] 33: 0x5564cb1938bf - std::panicking::try::hbc897fc717ec6571 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:456:19 [INFO] [stdout] 34: 0x5564cb1938bf - std::panic::catch_unwind::h27f1e958c91391ad [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panic.rs:137:14 [INFO] [stdout] 35: 0x5564cb1938bf - std::thread::Builder::spawn_unchecked_::{{closure}}::h1b42e48537edc3c0 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/thread/mod.rs:497:30 [INFO] [stdout] 36: 0x5564cb1938bf - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9137b3d6d2a88354 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 37: 0x5564cb1f2c63 - as core::ops::function::FnOnce>::call_once::hf70ac038171e3e1a [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853:9 [INFO] [stdout] 38: 0x5564cb1f2c63 - as core::ops::function::FnOnce>::call_once::he6690128792365ad [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853:9 [INFO] [stdout] 39: 0x5564cb1f2c63 - std::sys::unix::thread::Thread::new::thread_start::ha07928d93d5a5ec9 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys/unix/thread.rs:108:17 [INFO] [stdout] 40: 0x7fe6b5893609 - start_thread [INFO] [stdout] 41: 0x7fe6b5b37163 - clone [INFO] [stdout] 42: 0x0 - [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: 0x5564cb1ea46d - std::backtrace_rs::backtrace::libunwind::trace::hee598835bc88d35b [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5564cb1ea46d - std::backtrace_rs::backtrace::trace_unsynchronized::h9cdc730ba5cf5d72 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5564cb1ea46d - std::sys_common::backtrace::_print_fmt::h75aeaf7ed30e43fa [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:66:5 [INFO] [stdout] 3: 0x5564cb1ea46d - ::fmt::h606862f787600875 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:45:22 [INFO] [stdout] 4: 0x5564cb20f90c - core::fmt::write::he803f0f418caf762 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/fmt/mod.rs:1190:17 [INFO] [stdout] 5: 0x5564cb1e5d08 - std::io::Write::write_fmt::hbe7c1a63616291e2 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/io/mod.rs:1657:15 [INFO] [stdout] 6: 0x5564cb1ec747 - std::sys_common::backtrace::_print::h64d038cf8ac3e13e [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:48:5 [INFO] [stdout] 7: 0x5564cb1ec747 - std::sys_common::backtrace::print::h359300b4a7fccf65 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:35:9 [INFO] [stdout] 8: 0x5564cb1ec747 - std::panicking::default_hook::{{closure}}::hf51be35e2f510149 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:295:22 [INFO] [stdout] 9: 0x5564cb1ec47c - std::panicking::default_hook::h03ca0f22e1d2d25e [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:311:9 [INFO] [stdout] 10: 0x5564cb1ece99 - std::panicking::rust_panic_with_hook::h3b7380e99b825b63 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:698:17 [INFO] [stdout] 11: 0x5564cb1ecb49 - std::panicking::begin_panic_handler::{{closure}}::h8e849d0710154ce0 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:586:13 [INFO] [stdout] 12: 0x5564cb1ea934 - std::sys_common::backtrace::__rust_end_short_backtrace::hedcdaddbd4c46cc5 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:138:18 [INFO] [stdout] 13: 0x5564cb1ec899 - rust_begin_unwind [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:584:5 [INFO] [stdout] 14: 0x5564cb1611b3 - core::panicking::panic_fmt::he1bbc7336d49a357 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:143:14 [INFO] [stdout] 15: 0x5564cb16107d - core::panicking::panic::h4241c5ccea17faca [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:48:5 [INFO] [stdout] 16: 0x5564cb176afa - rustile::libx::test::test_open::he0f7f86cdaf8f213 [INFO] [stdout] at /opt/rustwide/workdir/src/libx/mod.rs:571:5 [INFO] [stdout] 17: 0x5564cb176a8a - rustile::libx::test::test_open::{{closure}}::h5d183d4b3af745d9 [INFO] [stdout] at /opt/rustwide/workdir/src/libx/mod.rs:569:1 [INFO] [stdout] 18: 0x5564cb18137e - core::ops::function::FnOnce::call_once::ha7b8a51edb90bd39 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 19: 0x5564cb1bec43 - core::ops::function::FnOnce::call_once::h2a47b4b927cb6ca5 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 20: 0x5564cb1bec43 - test::__rust_begin_short_backtrace::h594ef8055a183b9b [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:575:5 [INFO] [stdout] 21: 0x5564cb1bd924 - as core::ops::function::FnOnce>::call_once::hb40cbb8bc3e1be15 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853:9 [INFO] [stdout] 22: 0x5564cb1bd924 - as core::ops::function::FnOnce<()>>::call_once::ha4f2bd3b806745a0 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 23: 0x5564cb1bd924 - std::panicking::try::do_call::h92af9f8bc77a5987 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:492:40 [INFO] [stdout] 24: 0x5564cb1bd924 - std::panicking::try::h9df49eeae42572b7 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:456:19 [INFO] [stdout] 25: 0x5564cb1bd924 - std::panic::catch_unwind::h101dbadc82bbe0fd [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panic.rs:137:14 [INFO] [stdout] 26: 0x5564cb1bd924 - test::run_test_in_process::h2ad7bffb068e750a [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:598:18 [INFO] [stdout] 27: 0x5564cb1bd924 - test::run_test::run_test_inner::{{closure}}::h384faf46554c5acb [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:492:39 [INFO] [stdout] 28: 0x5564cb1c7241 - test::run_test::run_test_inner::{{closure}}::h17cfe94835a46685 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:519:37 [INFO] [stdout] 29: 0x5564cb1c7241 - std::sys_common::backtrace::__rust_begin_short_backtrace::h82709e5086312627 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:122:18 [INFO] [stdout] 30: 0x5564cb1938bf - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hdfea66a201b39571 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/thread/mod.rs:498:17 [INFO] [stdout] 31: 0x5564cb1938bf - as core::ops::function::FnOnce<()>>::call_once::h4912df03598e67fa [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 32: 0x5564cb1938bf - std::panicking::try::do_call::h6d5dc1045d0eade8 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:492:40 [INFO] [stdout] 33: 0x5564cb1938bf - std::panicking::try::hbc897fc717ec6571 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:456:19 [INFO] [stdout] 34: 0x5564cb1938bf - std::panic::catch_unwind::h27f1e958c91391ad [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panic.rs:137:14 [INFO] [stdout] 35: 0x5564cb1938bf - std::thread::Builder::spawn_unchecked_::{{closure}}::h1b42e48537edc3c0 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/thread/mod.rs:497:30 [INFO] [stdout] 36: 0x5564cb1938bf - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9137b3d6d2a88354 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 37: 0x5564cb1f2c63 - as core::ops::function::FnOnce>::call_once::hf70ac038171e3e1a [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853:9 [INFO] [stdout] 38: 0x5564cb1f2c63 - as core::ops::function::FnOnce>::call_once::he6690128792365ad [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853:9 [INFO] [stdout] 39: 0x5564cb1f2c63 - std::sys::unix::thread::Thread::new::thread_start::ha07928d93d5a5ec9 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys/unix/thread.rs:108:17 [INFO] [stdout] 40: 0x7fe6b5893609 - start_thread [INFO] [stdout] 41: 0x7fe6b5b37163 - 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.01s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass '--lib' [INFO] running `Command { std: "docker" "inspect" "ca83e82712e454d27ad32da9134cef5355ad6a4d2be1419d1026d0b3955f9a42", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ca83e82712e454d27ad32da9134cef5355ad6a4d2be1419d1026d0b3955f9a42", kill_on_drop: false }` [INFO] [stdout] ca83e82712e454d27ad32da9134cef5355ad6a4d2be1419d1026d0b3955f9a42