[INFO] cloning repository https://github.com/mikeleppane/rust-atomics-and-locks [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mikeleppane/rust-atomics-and-locks" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmikeleppane%2Frust-atomics-and-locks", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmikeleppane%2Frust-atomics-and-locks'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 491bce7c76ee7f029f4fde79bbef39e819a411f3 [INFO] testing mikeleppane/rust-atomics-and-locks against try#c066bf6804adc55193b71afdff6a56922f4a8689+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_in_2025-retry-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmikeleppane%2Frust-atomics-and-locks" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-1-tc2/source/.cargo/config.toml [INFO] started tweaking git repo https://github.com/mikeleppane/rust-atomics-and-locks [INFO] finished tweaking git repo https://github.com/mikeleppane/rust-atomics-and-locks [INFO] tweaked toml for git repo https://github.com/mikeleppane/rust-atomics-and-locks written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/mikeleppane/rust-atomics-and-locks on toolchain c066bf6804adc55193b71afdff6a56922f4a8689 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c066bf6804adc55193b71afdff6a56922f4a8689" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/mikeleppane/rust-atomics-and-locks 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" "+c066bf6804adc55193b71afdff6a56922f4a8689" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+c066bf6804adc55193b71afdff6a56922f4a8689" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0e77472f16725d34f0ffc7d5465cb7175ae70fc01f831a5a347c0b45d614b997 [INFO] running `Command { std: "docker" "start" "-a" "0e77472f16725d34f0ffc7d5465cb7175ae70fc01f831a5a347c0b45d614b997", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0e77472f16725d34f0ffc7d5465cb7175ae70fc01f831a5a347c0b45d614b997", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0e77472f16725d34f0ffc7d5465cb7175ae70fc01f831a5a347c0b45d614b997", kill_on_drop: false }` [INFO] [stdout] 0e77472f16725d34f0ffc7d5465cb7175ae70fc01f831a5a347c0b45d614b997 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+c066bf6804adc55193b71afdff6a56922f4a8689" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 26e7b0b04ab4fbd4290535a525152191fa56a3b3c833bae00b816ff6daceb701 [INFO] running `Command { std: "docker" "start" "-a" "26e7b0b04ab4fbd4290535a525152191fa56a3b3c833bae00b816ff6daceb701", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.140 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.17 [INFO] [stderr] Compiling diff v0.1.13 [INFO] [stderr] Compiling yansi v0.5.1 [INFO] [stderr] Compiling pretty_assertions v1.3.0 [INFO] [stderr] Compiling getrandom v0.2.8 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling atomics-and-locks v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/channels/channel.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/channels/channel.rs:136:9 [INFO] [stdout] | [INFO] [stdout] 136 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/channels/channel.rs:214:9 [INFO] [stdout] | [INFO] [stdout] 214 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/memory_ordering/memory.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread::current` [INFO] [stdout] --> src/memory_ordering/memory.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | use std::thread::current; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ArcData` is never constructed [INFO] [stdout] --> src/arc/reference_counting.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | struct ArcData { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Arc` is never constructed [INFO] [stdout] --> src/arc/reference_counting.rs:12:16 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct Arc { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `data`, and `get_mut` are never used [INFO] [stdout] --> src/arc/reference_counting.rs:21:16 [INFO] [stdout] | [INFO] [stdout] 20 | impl Arc { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 21 | pub fn new(data: T) -> Arc { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | fn data(&self) -> &ArcData { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn get_mut(arc: &mut Self) -> Option<&mut T> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ArcData` is never constructed [INFO] [stdout] --> src/arc/reference_counting.rs:116:12 [INFO] [stdout] | [INFO] [stdout] 116 | struct ArcData { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Arc` is never constructed [INFO] [stdout] --> src/arc/reference_counting.rs:125:16 [INFO] [stdout] | [INFO] [stdout] 125 | pub struct Arc { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Weak` is never constructed [INFO] [stdout] --> src/arc/reference_counting.rs:129:16 [INFO] [stdout] | [INFO] [stdout] 129 | pub struct Weak { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new`, `get_mut`, and `downgrade` are never used [INFO] [stdout] --> src/arc/reference_counting.rs:138:16 [INFO] [stdout] | [INFO] [stdout] 137 | impl Arc { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 138 | pub fn new(data: T) -> Arc { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn get_mut(arc: &mut Self) -> Option<&mut T> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub fn downgrade(arc: &Self) -> Weak { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `data` and `upgrade` are never used [INFO] [stdout] --> src/arc/reference_counting.rs:173:12 [INFO] [stdout] | [INFO] [stdout] 172 | impl Weak { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 173 | fn data(&self) -> &ArcData { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 177 | pub fn upgrade(&self) -> Option> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ArcData` is never constructed [INFO] [stdout] --> src/arc/reference_counting.rs:293:12 [INFO] [stdout] | [INFO] [stdout] 293 | struct ArcData { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Arc` is never constructed [INFO] [stdout] --> src/arc/reference_counting.rs:302:16 [INFO] [stdout] | [INFO] [stdout] 302 | pub struct Arc { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Weak` is never constructed [INFO] [stdout] --> src/arc/reference_counting.rs:310:16 [INFO] [stdout] | [INFO] [stdout] 310 | pub struct Weak { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `data` are never used [INFO] [stdout] --> src/arc/reference_counting.rs:319:16 [INFO] [stdout] | [INFO] [stdout] 318 | impl Arc { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 319 | pub fn new(data: T) -> Arc { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 329 | fn data(&self) -> &ArcData { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `data`, `upgrade`, and `get_mut` are never used [INFO] [stdout] --> src/arc/reference_counting.rs:345:12 [INFO] [stdout] | [INFO] [stdout] 344 | impl Weak { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 345 | fn data(&self) -> &ArcData { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 349 | pub fn upgrade(&self) -> Option> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 368 | pub fn get_mut(arc: &mut Self) -> Option<&mut T> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Channel` is never constructed [INFO] [stdout] --> src/channels/channel.rs:5:16 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Channel { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `send`, and `receive` are never used [INFO] [stdout] --> src/channels/channel.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 10 | impl Channel { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 11 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn send(&self, message: T) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn receive(&self) -> T { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Channel` is never constructed [INFO] [stdout] --> src/channels/channel.rs:40:16 [INFO] [stdout] | [INFO] [stdout] 40 | pub struct Channel { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `send`, `is_ready`, and `receive` are never used [INFO] [stdout] --> src/channels/channel.rs:49:22 [INFO] [stdout] | [INFO] [stdout] 48 | impl Channel { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 49 | pub const fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn send(&self, message: T) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | pub fn is_ready(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn receive(&self) -> T { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Sender` is never constructed [INFO] [stdout] --> src/channels/channel.rs:138:16 [INFO] [stdout] | [INFO] [stdout] 138 | pub struct Sender { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Receiver` is never constructed [INFO] [stdout] --> src/channels/channel.rs:142:16 [INFO] [stdout] | [INFO] [stdout] 142 | pub struct Receiver { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Channel` is never constructed [INFO] [stdout] --> src/channels/channel.rs:146:12 [INFO] [stdout] | [INFO] [stdout] 146 | struct Channel { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `channel` is never used [INFO] [stdout] --> src/channels/channel.rs:154:12 [INFO] [stdout] | [INFO] [stdout] 154 | pub fn channel() -> (Sender, Receiver) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `send` is never used [INFO] [stdout] --> src/channels/channel.rs:164:16 [INFO] [stdout] | [INFO] [stdout] 162 | impl Sender { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] 163 | /// This never panics. :) [INFO] [stdout] 164 | pub fn send(self, message: T) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_ready` and `receive` are never used [INFO] [stdout] --> src/channels/channel.rs:171:16 [INFO] [stdout] | [INFO] [stdout] 170 | impl Receiver { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] 171 | pub fn is_ready(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 174 | pub fn receive(self) -> T { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Channel` is never constructed [INFO] [stdout] --> src/channels/channel.rs:216:16 [INFO] [stdout] | [INFO] [stdout] 216 | pub struct Channel { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Sender` is never constructed [INFO] [stdout] --> src/channels/channel.rs:223:16 [INFO] [stdout] | [INFO] [stdout] 223 | pub struct Sender<'a, T> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Receiver` is never constructed [INFO] [stdout] --> src/channels/channel.rs:227:16 [INFO] [stdout] | [INFO] [stdout] 227 | pub struct Receiver<'a, T> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `split` are never used [INFO] [stdout] --> src/channels/channel.rs:232:22 [INFO] [stdout] | [INFO] [stdout] 231 | impl Channel { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 232 | pub const fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 238 | pub fn split(&mut self) -> (Sender, Receiver) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `send` is never used [INFO] [stdout] --> src/channels/channel.rs:245:16 [INFO] [stdout] | [INFO] [stdout] 244 | impl Sender<'_, T> { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] 245 | pub fn send(self, message: T) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_ready` and `receive` are never used [INFO] [stdout] --> src/channels/channel.rs:252:16 [INFO] [stdout] | [INFO] [stdout] 251 | impl Receiver<'_, T> { [INFO] [stdout] | ----------------------- methods in this implementation [INFO] [stdout] 252 | pub fn is_ready(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 256 | pub fn receive(self) -> T { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Guard` is never constructed [INFO] [stdout] --> src/spinning/spin_lock.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Guard<'a, T> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SpinLock` is never constructed [INFO] [stdout] --> src/spinning/spin_lock.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct SpinLock { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `lock`, and `unlock` are never used [INFO] [stdout] --> src/spinning/spin_lock.rs:41:18 [INFO] [stdout] | [INFO] [stdout] 40 | impl SpinLock { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 41 | pub const fn new(value: T) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn lock(&self) -> Guard { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub unsafe fn unlock(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/channels/channel.rs:238:22 [INFO] [stdout] | [INFO] [stdout] 238 | pub fn split(&mut self) -> (Sender, Receiver) { [INFO] [stdout] | ^^^^^^^^^ --------- ----------- the lifetimes get resolved as `'_` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 238 | pub fn split(&mut self) -> (Sender<'_, T>, Receiver<'_, T>) { [INFO] [stdout] | +++ +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/memory_ordering/memory.rs:14:22 [INFO] [stdout] | [INFO] [stdout] 14 | unsafe { DATA.push('!') }; [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 shared reference to mutable static [INFO] [stdout] --> src/memory_ordering/memory.rs:25:29 [INFO] [stdout] | [INFO] [stdout] 25 | unsafe { println!("{DATA}") } [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] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/memory_ordering/memory.rs:100:26 [INFO] [stdout] | [INFO] [stdout] 100 | unsafe { S.push('!') }; [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/memory_ordering/memory.rs:106:26 [INFO] [stdout] | [INFO] [stdout] 106 | unsafe { S.push('!') }; [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/memory_ordering/memory.rs:111:29 [INFO] [stdout] | [INFO] [stdout] 111 | unsafe { println!("{S}") } [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] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/spinning/spin_lock.rs:49:17 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn lock(&self) -> Guard { [INFO] [stdout] | ^^^^^ -------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 49 | pub fn lock(&self) -> Guard<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.92s [INFO] running `Command { std: "docker" "inspect" "26e7b0b04ab4fbd4290535a525152191fa56a3b3c833bae00b816ff6daceb701", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "26e7b0b04ab4fbd4290535a525152191fa56a3b3c833bae00b816ff6daceb701", kill_on_drop: false }` [INFO] [stdout] 26e7b0b04ab4fbd4290535a525152191fa56a3b3c833bae00b816ff6daceb701 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+c066bf6804adc55193b71afdff6a56922f4a8689" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] c4cdf47b1042d0ded32722c414f55e64ab7b70fc152f33315420fdcc6957bd06 [INFO] running `Command { std: "docker" "start" "-a" "c4cdf47b1042d0ded32722c414f55e64ab7b70fc152f33315420fdcc6957bd06", kill_on_drop: false }` [INFO] [stderr] Compiling atomics-and-locks v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: associated function `get_mut` is never used [INFO] [stdout] --> src/arc/reference_counting.rs:34:16 [INFO] [stdout] | [INFO] [stdout] 20 | impl Arc { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn get_mut(arc: &mut Self) -> Option<&mut T> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `get_mut` is never used [INFO] [stdout] --> src/arc/reference_counting.rs:150:16 [INFO] [stdout] | [INFO] [stdout] 137 | impl Arc { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn get_mut(arc: &mut Self) -> Option<&mut T> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ArcData` is never constructed [INFO] [stdout] --> src/arc/reference_counting.rs:293:12 [INFO] [stdout] | [INFO] [stdout] 293 | struct ArcData { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Arc` is never constructed [INFO] [stdout] --> src/arc/reference_counting.rs:302:16 [INFO] [stdout] | [INFO] [stdout] 302 | pub struct Arc { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Weak` is never constructed [INFO] [stdout] --> src/arc/reference_counting.rs:310:16 [INFO] [stdout] | [INFO] [stdout] 310 | pub struct Weak { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `data` are never used [INFO] [stdout] --> src/arc/reference_counting.rs:319:16 [INFO] [stdout] | [INFO] [stdout] 318 | impl Arc { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 319 | pub fn new(data: T) -> Arc { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 329 | fn data(&self) -> &ArcData { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `data`, `upgrade`, and `get_mut` are never used [INFO] [stdout] --> src/arc/reference_counting.rs:345:12 [INFO] [stdout] | [INFO] [stdout] 344 | impl Weak { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 345 | fn data(&self) -> &ArcData { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 349 | pub fn upgrade(&self) -> Option> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 368 | pub fn get_mut(arc: &mut Self) -> Option<&mut T> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Channel` is never constructed [INFO] [stdout] --> src/channels/channel.rs:5:16 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Channel { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `send`, and `receive` are never used [INFO] [stdout] --> src/channels/channel.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 10 | impl Channel { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 11 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn send(&self, message: T) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn receive(&self) -> T { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unlock` is never used [INFO] [stdout] --> src/spinning/spin_lock.rs:58:19 [INFO] [stdout] | [INFO] [stdout] 40 | impl SpinLock { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 58 | pub unsafe fn unlock(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/channels/channel.rs:238:22 [INFO] [stdout] | [INFO] [stdout] 238 | pub fn split(&mut self) -> (Sender, Receiver) { [INFO] [stdout] | ^^^^^^^^^ --------- ----------- the lifetimes get resolved as `'_` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 238 | pub fn split(&mut self) -> (Sender<'_, T>, Receiver<'_, T>) { [INFO] [stdout] | +++ +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/memory_ordering/memory.rs:14:22 [INFO] [stdout] | [INFO] [stdout] 14 | unsafe { DATA.push('!') }; [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 shared reference to mutable static [INFO] [stdout] --> src/memory_ordering/memory.rs:25:29 [INFO] [stdout] | [INFO] [stdout] 25 | unsafe { println!("{DATA}") } [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] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/memory_ordering/memory.rs:100:26 [INFO] [stdout] | [INFO] [stdout] 100 | unsafe { S.push('!') }; [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/memory_ordering/memory.rs:106:26 [INFO] [stdout] | [INFO] [stdout] 106 | unsafe { S.push('!') }; [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/memory_ordering/memory.rs:111:29 [INFO] [stdout] | [INFO] [stdout] 111 | unsafe { println!("{S}") } [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] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/spinning/spin_lock.rs:49:17 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn lock(&self) -> Guard { [INFO] [stdout] | ^^^^^ -------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 49 | pub fn lock(&self) -> Guard<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: linking with `cc` failed: exit status: 1 [INFO] [stdout] | [INFO] [stdout] = note: "cc" "-m64" "/lib/rustlib/x86_64-unknown-linux-musl/lib/self-contained/rcrt1.o" "/lib/rustlib/x86_64-unknown-linux-musl/lib/self-contained/crti.o" "/lib/rustlib/x86_64-unknown-linux-musl/lib/self-contained/crtbeginS.o" "/tmp/rustctTkcKn/symbols.o" "<4 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "/lib/rustlib/x86_64-unknown-linux-musl/lib/{libtest-*,libgetopts-*,libunicode_width-*,librustc_std_workspace_std-*}.rlib" "/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/{librand-8aa8ecbd0c217629.rlib,librand_chacha-5e381d1c02127330.rlib,libppv_lite86-742ade976f63ace4.rlib,librand_core-d470b8f41d9b06fb.rlib,libgetrandom-bd8c12d1834a9b1f.rlib,liblibc-e1036eac0d1d076d.rlib,libcfg_if-66d55f6b302e88c8.rlib}.rlib" "/lib/rustlib/x86_64-unknown-linux-musl/lib/{libstd-*,libpanic_unwind-*,libobject-*,libmemchr-*,libaddr2line-*,libgimli-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libminiz_oxide-*,libadler2-*,libunwind-*}.rlib" "-lunwind" "/lib/rustlib/x86_64-unknown-linux-musl/lib/{libcfg_if-*,liblibc-*}.rlib" "-lc" "/lib/rustlib/x86_64-unknown-linux-musl/lib/{librustc_std_workspace_core-*,liballoc-*,libcore-*,libcompiler_builtins-*}.rlib" "-L" "/tmp/rustctTkcKn/raw-dylibs" "-Wl,-Bdynamic" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-nostartfiles" "-L" "/lib/rustlib/x86_64-unknown-linux-musl/lib/self-contained" "-L" "/lib/rustlib/x86_64-unknown-linux-musl/lib" "-o" "/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/atomics_and_locks-fbe6cfbaa05b1e0b" "-Wl,--gc-sections" "-static-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs" "/lib/rustlib/x86_64-unknown-linux-musl/lib/self-contained/crtendS.o" "/lib/rustlib/x86_64-unknown-linux-musl/lib/self-contained/crtn.o" [INFO] [stdout] = note: some arguments are omitted. use `--verbose` to show all linker arguments [INFO] [stdout] = note: /usr/bin/ld: /opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/libgetrandom-bd8c12d1834a9b1f.rlib(getrandom-bd8c12d1834a9b1f.getrandom.dde0ef0b121b6953-cgu.0.rcgu.o): in function `getrandom::util_libc::open_readonly': [INFO] [stdout] /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.2.8/src/util_libc.rs:150:(.text._ZN9getrandom9util_libc13open_readonly17h73d21dbd16ba8366E+0xbc): undefined reference to `open64' [INFO] [stdout] collect2: error: ld returned 1 exit status [INFO] [stdout] [INFO] [stdout] = note: some `extern` functions couldn't be found; some native libraries may need to be installed or have their path specified [INFO] [stdout] = note: use the `-l` flag to specify native libraries to link [INFO] [stdout] = note: use the `cargo:rustc-link-lib` directive to specify the native libraries to link with Cargo (see https://doc.rust-lang.org/cargo/reference/build-scripts.html#rustc-link-lib) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `atomics-and-locks` (bin "atomics-and-locks" test) due to 1 previous error; 17 warnings emitted [INFO] running `Command { std: "docker" "inspect" "c4cdf47b1042d0ded32722c414f55e64ab7b70fc152f33315420fdcc6957bd06", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c4cdf47b1042d0ded32722c414f55e64ab7b70fc152f33315420fdcc6957bd06", kill_on_drop: false }` [INFO] [stdout] c4cdf47b1042d0ded32722c414f55e64ab7b70fc152f33315420fdcc6957bd06