[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 master#642c19bfc3a5c1de985bf5d0cc8207ac9d22708a for pr-148577 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flkitching%2Frlpi" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/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-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/lkitching/rlpi on toolchain 642c19bfc3a5c1de985bf5d0cc8207ac9d22708a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "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" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] bbd77786a087b4522b5b8d3a47c253893846ac184f59711326a666ae4b49e12e [INFO] running `Command { std: "docker" "start" "-a" "bbd77786a087b4522b5b8d3a47c253893846ac184f59711326a666ae4b49e12e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "bbd77786a087b4522b5b8d3a47c253893846ac184f59711326a666ae4b49e12e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bbd77786a087b4522b5b8d3a47c253893846ac184f59711326a666ae4b49e12e", kill_on_drop: false }` [INFO] [stdout] bbd77786a087b4522b5b8d3a47c253893846ac184f59711326a666ae4b49e12e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 33a199776e4cecf1424df56810dcdb63c6dbeb65bfeb80756a3bf1b13f03655f [INFO] running `Command { std: "docker" "start" "-a" "33a199776e4cecf1424df56810dcdb63c6dbeb65bfeb80756a3bf1b13f03655f", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.102 [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 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(rust_2024_compatibility)]`) 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: 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(rust_2024_compatibility)]`) 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: 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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: 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(rust_2024_compatibility)]`) 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: 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)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/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/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/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: 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(rust_2024_compatibility)]`) 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)]` (part of `#[warn(rust_2024_compatibility)]`) 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: `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: 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(rust_2024_compatibility)]`) 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: `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: `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)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/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: `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: 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)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.81s [INFO] running `Command { std: "docker" "inspect" "33a199776e4cecf1424df56810dcdb63c6dbeb65bfeb80756a3bf1b13f03655f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "33a199776e4cecf1424df56810dcdb63c6dbeb65bfeb80756a3bf1b13f03655f", kill_on_drop: false }` [INFO] [stdout] 33a199776e4cecf1424df56810dcdb63c6dbeb65bfeb80756a3bf1b13f03655f