[INFO] cloning repository https://github.com/lkitching/rlpi [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lkitching/rlpi" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flkitching%2Frlpi", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flkitching%2Frlpi'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 572ab7ab702e3d756ffca048a8449c85c217e17d [INFO] checking lkitching/rlpi against try#c6f1a85c8f06c93ddc6200caf413929a2e7e7dd6 for pr-145463 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flkitching%2Frlpi" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/lkitching/rlpi [INFO] finished tweaking git repo https://github.com/lkitching/rlpi [INFO] tweaked toml for git repo https://github.com/lkitching/rlpi written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/lkitching/rlpi on toolchain c6f1a85c8f06c93ddc6200caf413929a2e7e7dd6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c6f1a85c8f06c93ddc6200caf413929a2e7e7dd6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/lkitching/rlpi already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c6f1a85c8f06c93ddc6200caf413929a2e7e7dd6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [ERROR] error running command: no output for 300 seconds [INFO] checking lkitching/rlpi against try#c6f1a85c8f06c93ddc6200caf413929a2e7e7dd6 for pr-145463 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flkitching%2Frlpi" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/lkitching/rlpi [INFO] finished tweaking git repo https://github.com/lkitching/rlpi [INFO] tweaked toml for git repo https://github.com/lkitching/rlpi written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/lkitching/rlpi on toolchain c6f1a85c8f06c93ddc6200caf413929a2e7e7dd6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c6f1a85c8f06c93ddc6200caf413929a2e7e7dd6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/lkitching/rlpi already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c6f1a85c8f06c93ddc6200caf413929a2e7e7dd6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded hermit-abi v0.1.16 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+c6f1a85c8f06c93ddc6200caf413929a2e7e7dd6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4756843e4b4e8b7e3386ff484cc619ce77063b573455f9a09f4ba80902d72d4e [INFO] running `Command { std: "docker" "start" "-a" "4756843e4b4e8b7e3386ff484cc619ce77063b573455f9a09f4ba80902d72d4e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4756843e4b4e8b7e3386ff484cc619ce77063b573455f9a09f4ba80902d72d4e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4756843e4b4e8b7e3386ff484cc619ce77063b573455f9a09f4ba80902d72d4e", kill_on_drop: false }` [INFO] [stdout] 4756843e4b4e8b7e3386ff484cc619ce77063b573455f9a09f4ba80902d72d4e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+c6f1a85c8f06c93ddc6200caf413929a2e7e7dd6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 47cc865219472a8800b29f5b733f289af604264b185f5406ea3e2ca1de2ae716 [INFO] running `Command { std: "docker" "start" "-a" "47cc865219472a8800b29f5b733f289af604264b185f5406ea3e2ca1de2ae716", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling libc v0.2.102 [INFO] [stderr] Compiling memchr v2.4.1 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Checking unicode-width v0.1.8 [INFO] [stderr] Checking ansi_term v0.11.0 [INFO] [stderr] Checking regex-syntax v0.6.25 [INFO] [stderr] Checking strsim v0.8.0 [INFO] [stderr] Checking vec_map v0.8.2 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling num-integer v0.1.44 [INFO] [stderr] Compiling memoffset v0.6.4 [INFO] [stderr] Checking aho-corasick v0.7.18 [INFO] [stderr] Checking time v0.1.44 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking clap v2.33.3 [INFO] [stderr] Checking chrono v0.4.19 [INFO] [stderr] Checking regex v1.5.4 [INFO] [stderr] Checking rlpi v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/ctype.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/fcntl.rs:28:1 [INFO] [stdout] | [INFO] [stdout] 28 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/sys/time.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/unistd.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/time.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/libgen.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/stdio.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/stdlib.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/mqueue.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/inet.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/mod.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/signals/sig_receiver.rs:65:29 [INFO] [stdout] | [INFO] [stdout] 65 | let cb = sig_handler as extern fn(c_int) as *mut c_void as sighandler_t; [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/signals/nonreentrant.rs:40:27 [INFO] [stdout] | [INFO] [stdout] 40 | sa_sigaction: handler as extern fn(c_int) as *const c_void as sighandler_t, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/ctype.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/fcntl.rs:28:1 [INFO] [stdout] | [INFO] [stdout] 28 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/sys/time.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/unistd.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/time.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/libgen.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/stdio.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/stdlib.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/mqueue.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/inet.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/libc/mod.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/signals/sig_receiver.rs:65:29 [INFO] [stdout] | [INFO] [stdout] 65 | let cb = sig_handler as extern fn(c_int) as *mut c_void as sighandler_t; [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/signals/nonreentrant.rs:40:27 [INFO] [stdout] | [INFO] [stdout] 40 | sa_sigaction: handler as extern fn(c_int) as *const c_void as sighandler_t, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/threads/thread_util.rs:40:25 [INFO] [stdout] | [INFO] [stdout] 37 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 40 | to_result(s, || unsafe { result.assume_init() }, "pthread_join") [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/threads/thread_util.rs:40:25 [INFO] [stdout] | [INFO] [stdout] 37 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 40 | to_result(s, || unsafe { result.assume_init() }, "pthread_join") [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `address` is never read [INFO] [stdout] --> src/sockets/inet_sockets.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 90 | pub struct PassiveSocket { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 91 | socket_desc: c_int, [INFO] [stdout] 92 | address: addrinfo [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/strerror.rs:17:13 [INFO] [stdout] | [INFO] [stdout] 17 | MSG_BUF.clear(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/strerror.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | MSG_BUF.insert_str(0, err_msg); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/threads/strerror.rs:21:14 [INFO] [stdout] | [INFO] [stdout] 21 | unsafe { &MSG_BUF } [INFO] [stdout] | ^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 21 | unsafe { &raw const MSG_BUF } [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `address` is never read [INFO] [stdout] --> src/sockets/inet_sockets.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 90 | pub struct PassiveSocket { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 91 | socket_desc: c_int, [INFO] [stdout] 92 | address: addrinfo [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/strerror.rs:17:13 [INFO] [stdout] | [INFO] [stdout] 17 | MSG_BUF.clear(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/strerror.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | MSG_BUF.insert_str(0, err_msg); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/threads/strerror.rs:21:14 [INFO] [stdout] | [INFO] [stdout] 21 | unsafe { &MSG_BUF } [INFO] [stdout] | ^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] help: use `&raw const` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 21 | unsafe { &raw const MSG_BUF } [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/signals/t_sigsuspend.rs:43:34 [INFO] [stdout] | [INFO] [stdout] 43 | sa_sigaction: handler as extern fn(c_int) as *const c_void as sighandler_t, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/signals/intquit.rs:26:30 [INFO] [stdout] | [INFO] [stdout] 26 | let cb = (sig_handler as extern fn(c_int)) as *mut c_void as sighandler_t; [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/signals/t_sigsuspend.rs:43:34 [INFO] [stdout] | [INFO] [stdout] 43 | sa_sigaction: handler as extern fn(c_int) as *const c_void as sighandler_t, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `close` [INFO] [stdout] --> src/sockets/us_xfr_cl.rs:6:41 [INFO] [stdout] | [INFO] [stdout] 6 | STDIN_FILENO, write, size_t, close, exit, EXIT_SUCCESS}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_incr_mutex.rs:14:36 [INFO] [stdout] | [INFO] [stdout] 14 | or_die(mutex_lock(unsafe { &mut MUTEX })); [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 14 | or_die(mutex_lock(unsafe { &raw mut MUTEX })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_incr_mutex.rs:19:38 [INFO] [stdout] | [INFO] [stdout] 19 | or_die(mutex_unlock(unsafe { &mut MUTEX })) [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 19 | or_die(mutex_unlock(unsafe { &raw mut MUTEX })) [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_incr_mutex.rs:14:36 [INFO] [stdout] | [INFO] [stdout] 14 | or_die(mutex_lock(unsafe { &mut MUTEX })); [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 14 | or_die(mutex_lock(unsafe { &raw mut MUTEX })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_incr_mutex.rs:19:38 [INFO] [stdout] | [INFO] [stdout] 19 | or_die(mutex_unlock(unsafe { &mut MUTEX })) [INFO] [stdout] | ^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 19 | or_die(mutex_unlock(unsafe { &raw mut MUTEX })) [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:37:32 [INFO] [stdout] | [INFO] [stdout] 37 | or_die(mutex_lock(unsafe { &mut THREAD_MUTEX })); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 37 | or_die(mutex_lock(unsafe { &raw mut THREAD_MUTEX })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:42:34 [INFO] [stdout] | [INFO] [stdout] 42 | or_die(mutex_unlock(unsafe { &mut THREAD_MUTEX })); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 42 | or_die(mutex_unlock(unsafe { &raw mut THREAD_MUTEX })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:45:33 [INFO] [stdout] | [INFO] [stdout] 45 | or_die(cond_signal(unsafe { &mut THREAD_DIED })); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 45 | or_die(cond_signal(unsafe { &raw mut THREAD_DIED })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:65:18 [INFO] [stdout] | [INFO] [stdout] 65 | unsafe { THREADS.push(info); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:77:36 [INFO] [stdout] | [INFO] [stdout] 77 | or_die(mutex_lock(unsafe { &mut THREAD_MUTEX })); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 77 | or_die(mutex_lock(unsafe { &raw mut THREAD_MUTEX })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:80:39 [INFO] [stdout] | [INFO] [stdout] 80 | or_die(cond_wait(unsafe { &mut THREAD_DIED }, unsafe { &mut THREAD_MUTEX })); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 80 | or_die(cond_wait(unsafe { &raw mut THREAD_DIED }, unsafe { &mut THREAD_MUTEX })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:80:68 [INFO] [stdout] | [INFO] [stdout] 80 | or_die(cond_wait(unsafe { &mut THREAD_DIED }, unsafe { &mut THREAD_MUTEX })); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 80 | or_die(cond_wait(unsafe { &mut THREAD_DIED }, unsafe { &raw mut THREAD_MUTEX })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:94:38 [INFO] [stdout] | [INFO] [stdout] 94 | or_die(mutex_unlock(unsafe { &mut THREAD_MUTEX })); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 94 | or_die(mutex_unlock(unsafe { &raw mut THREAD_MUTEX })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/psem/thread_incr_psem.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | let mut td = &mut(*tdp); [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: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/signals/t_sigaltstack.rs:52:34 [INFO] [stdout] | [INFO] [stdout] 52 | sa_sigaction: handler as extern fn(c_int) as *const c_void as sighandler_t, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function cannot return without recursing [INFO] [stdout] --> src/signals/t_sigaltstack.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | fn overflow_stack(call_num: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing [INFO] [stdout] ... [INFO] [stdout] 25 | overflow_stack(call_num + 1); [INFO] [stdout] | ---------------------------- recursive call site [INFO] [stdout] | [INFO] [stdout] = help: a `loop` may express intention better if this is on purpose [INFO] [stdout] = note: `#[warn(unconditional_recursion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `read` [INFO] [stdout] --> src/sockets/is_seqnum_sv.rs:9:54 [INFO] [stdout] | [INFO] [stdout] 9 | NI_MAXHOST, getnameinfo, sockaddr, write, read}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fatal` [INFO] [stdout] --> src/sockets/i6d_ucase_sv.rs:8:39 [INFO] [stdout] | [INFO] [stdout] 8 | use rlpi::error_functions::{err_exit, fatal}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `sockaddr_in6` does not permit being left uninitialized [INFO] [stdout] --> src/sockets/i6d_ucase_sv.rs:20:36 [INFO] [stdout] | [INFO] [stdout] 20 | let mut sv_addr = unsafe { MaybeUninit::::uninit().assume_init() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fatal` [INFO] [stdout] --> src/sockets/i6d_ucase_sv.rs:8:39 [INFO] [stdout] | [INFO] [stdout] 8 | use rlpi::error_functions::{err_exit, fatal}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `sockaddr_in6` does not permit being left uninitialized [INFO] [stdout] --> src/sockets/i6d_ucase_sv.rs:20:36 [INFO] [stdout] | [INFO] [stdout] 20 | let mut sv_addr = unsafe { MaybeUninit::::uninit().assume_init() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:37:32 [INFO] [stdout] | [INFO] [stdout] 37 | or_die(mutex_lock(unsafe { &mut THREAD_MUTEX })); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 37 | or_die(mutex_lock(unsafe { &raw mut THREAD_MUTEX })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:42:34 [INFO] [stdout] | [INFO] [stdout] 42 | or_die(mutex_unlock(unsafe { &mut THREAD_MUTEX })); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 42 | or_die(mutex_unlock(unsafe { &raw mut THREAD_MUTEX })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:45:33 [INFO] [stdout] | [INFO] [stdout] 45 | or_die(cond_signal(unsafe { &mut THREAD_DIED })); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 45 | or_die(cond_signal(unsafe { &raw mut THREAD_DIED })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:65:18 [INFO] [stdout] | [INFO] [stdout] 65 | unsafe { THREADS.push(info); } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:77:36 [INFO] [stdout] | [INFO] [stdout] 77 | or_die(mutex_lock(unsafe { &mut THREAD_MUTEX })); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 77 | or_die(mutex_lock(unsafe { &raw mut THREAD_MUTEX })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:80:39 [INFO] [stdout] | [INFO] [stdout] 80 | or_die(cond_wait(unsafe { &mut THREAD_DIED }, unsafe { &mut THREAD_MUTEX })); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 80 | or_die(cond_wait(unsafe { &raw mut THREAD_DIED }, unsafe { &mut THREAD_MUTEX })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:80:68 [INFO] [stdout] | [INFO] [stdout] 80 | or_die(cond_wait(unsafe { &mut THREAD_DIED }, unsafe { &mut THREAD_MUTEX })); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 80 | or_die(cond_wait(unsafe { &mut THREAD_DIED }, unsafe { &raw mut THREAD_MUTEX })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/threads/thread_multijoin.rs:94:38 [INFO] [stdout] | [INFO] [stdout] 94 | or_die(mutex_unlock(unsafe { &mut THREAD_MUTEX })); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 94 | or_die(mutex_unlock(unsafe { &raw mut THREAD_MUTEX })); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/threads/thread_cancel.rs:27:18 [INFO] [stdout] | [INFO] [stdout] 27 | if result == unsafe { PTHREAD_CANCELED } { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/signals/ouch.rs:13:30 [INFO] [stdout] | [INFO] [stdout] 13 | let cb = (sig_handler as extern fn(c_int)) as *mut c_void as sighandler_t; [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/threads/thread_cancel.rs:27:18 [INFO] [stdout] | [INFO] [stdout] 27 | if result == unsafe { PTHREAD_CANCELED } { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/signals/ouch.rs:13:30 [INFO] [stdout] | [INFO] [stdout] 13 | let cb = (sig_handler as extern fn(c_int)) as *mut c_void as sighandler_t; [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `close` [INFO] [stdout] --> src/sockets/us_xfr_cl.rs:6:41 [INFO] [stdout] | [INFO] [stdout] 6 | STDIN_FILENO, write, size_t, close, exit, EXIT_SUCCESS}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `read` [INFO] [stdout] --> src/sockets/is_seqnum_sv.rs:9:54 [INFO] [stdout] | [INFO] [stdout] 9 | NI_MAXHOST, getnameinfo, sockaddr, write, read}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/signals/t_sigaltstack.rs:52:34 [INFO] [stdout] | [INFO] [stdout] 52 | sa_sigaction: handler as extern fn(c_int) as *const c_void as sighandler_t, [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function cannot return without recursing [INFO] [stdout] --> src/signals/t_sigaltstack.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | fn overflow_stack(call_num: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing [INFO] [stdout] ... [INFO] [stdout] 25 | overflow_stack(call_num + 1); [INFO] [stdout] | ---------------------------- recursive call site [INFO] [stdout] | [INFO] [stdout] = help: a `loop` may express intention better if this is on purpose [INFO] [stdout] = note: `#[warn(unconditional_recursion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/signals/intquit.rs:26:30 [INFO] [stdout] | [INFO] [stdout] 26 | let cb = (sig_handler as extern fn(c_int)) as *mut c_void as sighandler_t; [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/psem/thread_incr_psem.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | let mut td = &mut(*tdp); [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] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.21s [INFO] running `Command { std: "docker" "inspect" "47cc865219472a8800b29f5b733f289af604264b185f5406ea3e2ca1de2ae716", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "47cc865219472a8800b29f5b733f289af604264b185f5406ea3e2ca1de2ae716", kill_on_drop: false }` [INFO] [stdout] 47cc865219472a8800b29f5b733f289af604264b185f5406ea3e2ca1de2ae716