[INFO] fetching crate genref 0.8.0...
[INFO] testing genref-0.8.0 against try#c2e32f1c9652b13ed99608599c1e855462f421f3 for pr-146098-7
[INFO] extracting crate genref 0.8.0 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate genref 0.8.0
[INFO] finished tweaking crates.io crate genref 0.8.0
[INFO] tweaked toml for crates.io crate genref 0.8.0 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate genref 0.8.0 on toolchain c2e32f1c9652b13ed99608599c1e855462f421f3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 11 packages to latest compatible versions
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fe63419abbac897b5b0023c532d6377c9320d79434f83db5abeb5ddda573f080
[INFO] running `Command { std: "docker" "start" "-a" "fe63419abbac897b5b0023c532d6377c9320d79434f83db5abeb5ddda573f080", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fe63419abbac897b5b0023c532d6377c9320d79434f83db5abeb5ddda573f080", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fe63419abbac897b5b0023c532d6377c9320d79434f83db5abeb5ddda573f080", kill_on_drop: false }`
[INFO] [stdout] fe63419abbac897b5b0023c532d6377c9320d79434f83db5abeb5ddda573f080
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 33cb6742c40744acac8851d6b839d679640d0d516b61cd76014e0429f548bda0
[INFO] running `Command { std: "docker" "start" "-a" "33cb6742c40744acac8851d6b839d679640d0d516b61cd76014e0429f548bda0", kill_on_drop: false }`
[INFO] [stderr]    Compiling genref v0.8.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `Generation` is never constructed
[INFO] [stdout]   --> src/global.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct Generation(&'static AtomicU32);
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get`, and `free` are never used
[INFO] [stdout]   --> src/global.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Generation
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 22 | {
[INFO] [stdout] 23 |     fn new() -> Self { FreeList::unfree().unwrap_or_else(FreshList::fresh) }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 24 |     fn get(&self) -> u32 { self.0.load(Ordering::Relaxed) }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 25 |
[INFO] [stdout] 26 |     fn free(this: Self)
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Lock` is never constructed
[INFO] [stdout]   --> src/global.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | struct Lock(parking_lot::RawRwLock);
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Reading` is never constructed
[INFO] [stdout]   --> src/global.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct Reading(());
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reading` is never used
[INFO] [stdout]   --> src/global.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn reading() -> Reading { Lock::reading() }
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_reading` is never used
[INFO] [stdout]   --> src/global.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub fn try_reading() -> Option<Reading> { Lock::try_reading() }
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Writing` is never constructed
[INFO] [stdout]   --> src/global.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct Writing(());
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `writing` is never used
[INFO] [stdout]   --> src/global.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub fn writing() -> Writing { Lock::writing() }
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_writing` is never used
[INFO] [stdout]   --> src/global.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn try_writing() -> Option<Writing> { Lock::try_writing() }
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new`, `reading`, `writing`, `try_reading`, and `try_writing` are never used
[INFO] [stdout]   --> src/global.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 65 | impl Lock
[INFO] [stdout]    | --------- associated functions in this implementation
[INFO] [stdout] 66 | {
[INFO] [stdout] 67 |     fn new() -> Self { Self(lock_api::RawRwLock::INIT) }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 68 |
[INFO] [stdout] 69 |     fn reading() -> Reading
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     fn writing() -> Writing
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     fn try_reading() -> Option<Reading>
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     fn try_writing() -> Option<Writing>
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `try_upgrade` is never used
[INFO] [stdout]    --> src/global.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl Reading
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] 101 | {
[INFO] [stdout] 102 |     fn try_upgrade(self) -> Result<Writing, Self>
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FreeList` is never constructed
[INFO] [stdout]    --> src/global.rs:148:8
[INFO] [stdout]     |
[INFO] [stdout] 148 | struct FreeList(Vec<Generation>);
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FreshList` is never constructed
[INFO] [stdout]    --> src/global.rs:149:8
[INFO] [stdout]     |
[INFO] [stdout] 149 | struct FreshList(usize, &'static [AtomicU32]);
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `free_`, `free`, `unfree_`, and `unfree` are never used
[INFO] [stdout]    --> src/global.rs:153:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | impl FreeList
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 152 | {
[INFO] [stdout] 153 |     fn new() -> Self { Self(Vec::with_capacity(32)) }
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 154 |
[INFO] [stdout] 155 |     fn free_(&mut self, gen: Generation) { self.0.push(gen) }
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 156 |     fn free(gen: Generation) { FREELIST.lock().free_(gen) }
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 157 |
[INFO] [stdout] 158 |     fn unfree_(&mut self) -> Option<Generation> { self.0.pop() }
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 159 |     fn unfree() -> Option<Generation> { FREELIST.lock().unfree_() }
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `INIT`, `new`, `fresh_`, `fresh`, `refresh`, and `more` are never used
[INFO] [stdout]    --> src/global.rs:164:11
[INFO] [stdout]     |
[INFO] [stdout] 162 | impl FreshList
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 163 | {
[INFO] [stdout] 164 |     const INIT: u32 = 1;
[INFO] [stdout]     |           ^^^^
[INFO] [stdout] 165 |     fn new() -> Self { Self(0, Self::more(32)) }
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 166 |
[INFO] [stdout] 167 |     fn fresh_(&mut self) -> Generation
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     fn fresh() -> Generation { FRESHLIST.lock().fresh_() }
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 177 |
[INFO] [stdout] 178 |     fn refresh(&mut self)
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     fn more(n: usize) -> &'static [AtomicU32]
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `DropLater` is never used
[INFO] [stdout]    --> src/global.rs:193:7
[INFO] [stdout]     |
[INFO] [stdout] 193 | trait DropLater: Send + Sync {}
[INFO] [stdout]     |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DropQueue` is never constructed
[INFO] [stdout]    --> src/global.rs:195:8
[INFO] [stdout]     |
[INFO] [stdout] 195 | struct DropQueue(Vec<Box<dyn DropLater>>);
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `clear_`, `clear`, `defer_`, and `defer` are never used
[INFO] [stdout]    --> src/global.rs:199:8
[INFO] [stdout]     |
[INFO] [stdout] 197 | impl DropQueue
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 198 | {
[INFO] [stdout] 199 |     fn new() -> Self { Self(Vec::with_capacity(32)) }
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 200 |
[INFO] [stdout] 201 |     fn clear_(&mut self, _wl: &mut Writing) -> impl Drop
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     fn clear(wl: &mut Writing) -> impl Drop { DROPQUEUE.lock().clear_(wl) }
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 208 |
[INFO] [stdout] 209 |     fn defer_(&mut self, val: Box<dyn DropLater>) { self.0.push(val) }
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 210 |     fn defer(val: Box<dyn DropLater>) { DROPQUEUE.lock().defer_(val) }
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Strong` is never constructed
[INFO] [stdout]    --> src/global.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub struct Strong<T: Sync + Send + 'static>
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Weak` is never constructed
[INFO] [stdout]    --> src/global.rs:231:12
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub struct Weak<T: Sync + Send + 'static>
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `alias`, `take`, `as_ref`, `as_mut`, and `map` are never used
[INFO] [stdout]    --> src/global.rs:255:12
[INFO] [stdout]     |
[INFO] [stdout] 253 | impl<T: Sync + Send + 'static> Strong<T>
[INFO] [stdout]     | ---------------------------------------- associated items in this implementation
[INFO] [stdout] 254 | {
[INFO] [stdout] 255 |     pub fn new(t: T) -> Self { Self::from(Box::new(t)) }
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 256 |
[INFO] [stdout] 257 |     pub fn alias(&self) -> Weak<T>
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 266 |     pub fn take(mut self, _wl: &mut Writing) -> Box<T>
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 274 |     pub fn as_ref(&self, _rl: &Reading) -> &T { &self.ptr }
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 275 |     pub fn as_mut(&mut self, _wl: &mut Writing) -> &mut T { &mut self.ptr }
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 276 |
[INFO] [stdout] 277 |     pub fn map<F, U>(&self, rl: &Reading, f: F) -> Weak<U>
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `dangling`, `is_valid`, `try_ref`, `try_mut`, and `try_map` are never used
[INFO] [stdout]    --> src/global.rs:303:12
[INFO] [stdout]     |
[INFO] [stdout] 301 | impl<T: Sync + Send + 'static> Weak<T>
[INFO] [stdout]     | -------------------------------------- associated items in this implementation
[INFO] [stdout] 302 | {
[INFO] [stdout] 303 |     pub fn dangling() -> Self
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 313 |     pub fn is_valid(&self) -> bool { self.genref == self.gen.get() }
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 314 |
[INFO] [stdout] 315 |     pub fn try_ref(&self, _rl: &Reading) -> Option<&T>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |     pub fn try_mut(&mut self, _wl: &mut Writing) -> Option<&mut T>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 333 |     pub fn try_map<F, U>(&self, rl: &Reading, f: F) -> Option<Weak<U>>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Ref` is never used
[INFO] [stdout]    --> src/global.rs:357:10
[INFO] [stdout]     |
[INFO] [stdout] 357 | pub enum Ref<T: Sync + Send + 'static>
[INFO] [stdout]     |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/global.rs:366:12
[INFO] [stdout]     |
[INFO] [stdout] 363 | impl<T: Sync + Send + 'static> Ref<T>
[INFO] [stdout]     | ------------------------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 366 |     pub fn new(t: T) -> Self { Self::Strong(Strong::new(t)) }
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 367 |
[INFO] [stdout] 368 |     pub fn try_as_ref(&self, rl: &Reading) -> Option<&T>
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 |     pub fn try_mut(&mut self, wl: &mut Writing) -> Option<&mut T>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |     pub fn try_map<F, U>(&self, rl: &Reading, f: F) -> Option<Ref<U>>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     pub fn is_weak(&self) -> bool
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn is_strong(&self) -> bool
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn is_valid(&self) -> bool
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/lib.rs:298:52
[INFO] [stdout]     |
[INFO] [stdout] 298 |             gen: Generation(NonNull::from(unsafe { &mut ZERO })),
[INFO] [stdout]     |                                                    ^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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] 298 |             gen: Generation(NonNull::from(unsafe { &raw mut ZERO })),
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.27s
[INFO] running `Command { std: "docker" "inspect" "33cb6742c40744acac8851d6b839d679640d0d516b61cd76014e0429f548bda0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "33cb6742c40744acac8851d6b839d679640d0d516b61cd76014e0429f548bda0", kill_on_drop: false }`
[INFO] [stdout] 33cb6742c40744acac8851d6b839d679640d0d516b61cd76014e0429f548bda0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5f32a2127b01ba76aaa08b68738c1e3d2e4987077060586398d5efa7e3e4abd1
[INFO] running `Command { std: "docker" "start" "-a" "5f32a2127b01ba76aaa08b68738c1e3d2e4987077060586398d5efa7e3e4abd1", kill_on_drop: false }`
[INFO] [stdout] warning: struct `Generation` is never constructed
[INFO] [stdout]   --> src/global.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct Generation(&'static AtomicU32);
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get`, and `free` are never used
[INFO] [stdout]   --> src/global.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Generation
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 22 | {
[INFO] [stdout] 23 |     fn new() -> Self { FreeList::unfree().unwrap_or_else(FreshList::fresh) }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 24 |     fn get(&self) -> u32 { self.0.load(Ordering::Relaxed) }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 25 |
[INFO] [stdout] 26 |     fn free(this: Self)
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Lock` is never constructed
[INFO] [stdout]   --> src/global.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | struct Lock(parking_lot::RawRwLock);
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Reading` is never constructed
[INFO] [stdout]   --> src/global.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct Reading(());
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reading` is never used
[INFO] [stdout]   --> src/global.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn reading() -> Reading { Lock::reading() }
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_reading` is never used
[INFO] [stdout]   --> src/global.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub fn try_reading() -> Option<Reading> { Lock::try_reading() }
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Writing` is never constructed
[INFO] [stdout]   --> src/global.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct Writing(());
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `writing` is never used
[INFO] [stdout]   --> src/global.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub fn writing() -> Writing { Lock::writing() }
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_writing` is never used
[INFO] [stdout]   --> src/global.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn try_writing() -> Option<Writing> { Lock::try_writing() }
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new`, `reading`, `writing`, `try_reading`, and `try_writing` are never used
[INFO] [stdout]   --> src/global.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 65 | impl Lock
[INFO] [stdout]    | --------- associated functions in this implementation
[INFO] [stdout] 66 | {
[INFO] [stdout] 67 |     fn new() -> Self { Self(lock_api::RawRwLock::INIT) }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 68 |
[INFO] [stdout] 69 |     fn reading() -> Reading
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     fn writing() -> Writing
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     fn try_reading() -> Option<Reading>
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     fn try_writing() -> Option<Writing>
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `try_upgrade` is never used
[INFO] [stdout]    --> src/global.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl Reading
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] 101 | {
[INFO] [stdout] 102 |     fn try_upgrade(self) -> Result<Writing, Self>
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FreeList` is never constructed
[INFO] [stdout]    --> src/global.rs:148:8
[INFO] [stdout]     |
[INFO] [stdout] 148 | struct FreeList(Vec<Generation>);
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FreshList` is never constructed
[INFO] [stdout]    --> src/global.rs:149:8
[INFO] [stdout]     |
[INFO] [stdout] 149 | struct FreshList(usize, &'static [AtomicU32]);
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `free_`, `free`, `unfree_`, and `unfree` are never used
[INFO] [stdout]    --> src/global.rs:153:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | impl FreeList
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 152 | {
[INFO] [stdout] 153 |     fn new() -> Self { Self(Vec::with_capacity(32)) }
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 154 |
[INFO] [stdout] 155 |     fn free_(&mut self, gen: Generation) { self.0.push(gen) }
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 156 |     fn free(gen: Generation) { FREELIST.lock().free_(gen) }
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 157 |
[INFO] [stdout] 158 |     fn unfree_(&mut self) -> Option<Generation> { self.0.pop() }
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 159 |     fn unfree() -> Option<Generation> { FREELIST.lock().unfree_() }
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `INIT`, `new`, `fresh_`, `fresh`, `refresh`, and `more` are never used
[INFO] [stdout]    --> src/global.rs:164:11
[INFO] [stdout]     |
[INFO] [stdout] 162 | impl FreshList
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 163 | {
[INFO] [stdout] 164 |     const INIT: u32 = 1;
[INFO] [stdout]     |           ^^^^
[INFO] [stdout] 165 |     fn new() -> Self { Self(0, Self::more(32)) }
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 166 |
[INFO] [stdout] 167 |     fn fresh_(&mut self) -> Generation
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     fn fresh() -> Generation { FRESHLIST.lock().fresh_() }
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 177 |
[INFO] [stdout] 178 |     fn refresh(&mut self)
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     fn more(n: usize) -> &'static [AtomicU32]
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `DropLater` is never used
[INFO] [stdout]    --> src/global.rs:193:7
[INFO] [stdout]     |
[INFO] [stdout] 193 | trait DropLater: Send + Sync {}
[INFO] [stdout]     |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DropQueue` is never constructed
[INFO] [stdout]    --> src/global.rs:195:8
[INFO] [stdout]     |
[INFO] [stdout] 195 | struct DropQueue(Vec<Box<dyn DropLater>>);
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `clear_`, `clear`, `defer_`, and `defer` are never used
[INFO] [stdout]    --> src/global.rs:199:8
[INFO] [stdout]     |
[INFO] [stdout] 197 | impl DropQueue
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 198 | {
[INFO] [stdout] 199 |     fn new() -> Self { Self(Vec::with_capacity(32)) }
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 200 |
[INFO] [stdout] 201 |     fn clear_(&mut self, _wl: &mut Writing) -> impl Drop
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     fn clear(wl: &mut Writing) -> impl Drop { DROPQUEUE.lock().clear_(wl) }
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 208 |
[INFO] [stdout] 209 |     fn defer_(&mut self, val: Box<dyn DropLater>) { self.0.push(val) }
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 210 |     fn defer(val: Box<dyn DropLater>) { DROPQUEUE.lock().defer_(val) }
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Strong` is never constructed
[INFO] [stdout]    --> src/global.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub struct Strong<T: Sync + Send + 'static>
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Weak` is never constructed
[INFO] [stdout]    --> src/global.rs:231:12
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub struct Weak<T: Sync + Send + 'static>
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `alias`, `take`, `as_ref`, `as_mut`, and `map` are never used
[INFO] [stdout]    --> src/global.rs:255:12
[INFO] [stdout]     |
[INFO] [stdout] 253 | impl<T: Sync + Send + 'static> Strong<T>
[INFO] [stdout]     | ---------------------------------------- associated items in this implementation
[INFO] [stdout] 254 | {
[INFO] [stdout] 255 |     pub fn new(t: T) -> Self { Self::from(Box::new(t)) }
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 256 |
[INFO] [stdout] 257 |     pub fn alias(&self) -> Weak<T>
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 266 |     pub fn take(mut self, _wl: &mut Writing) -> Box<T>
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 274 |     pub fn as_ref(&self, _rl: &Reading) -> &T { &self.ptr }
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 275 |     pub fn as_mut(&mut self, _wl: &mut Writing) -> &mut T { &mut self.ptr }
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 276 |
[INFO] [stdout] 277 |     pub fn map<F, U>(&self, rl: &Reading, f: F) -> Weak<U>
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `dangling`, `is_valid`, `try_ref`, `try_mut`, and `try_map` are never used
[INFO] [stdout]    --> src/global.rs:303:12
[INFO] [stdout]     |
[INFO] [stdout] 301 | impl<T: Sync + Send + 'static> Weak<T>
[INFO] [stdout]     | -------------------------------------- associated items in this implementation
[INFO] [stdout] 302 | {
[INFO] [stdout] 303 |     pub fn dangling() -> Self
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 313 |     pub fn is_valid(&self) -> bool { self.genref == self.gen.get() }
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 314 |
[INFO] [stdout] 315 |     pub fn try_ref(&self, _rl: &Reading) -> Option<&T>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |     pub fn try_mut(&mut self, _wl: &mut Writing) -> Option<&mut T>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 333 |     pub fn try_map<F, U>(&self, rl: &Reading, f: F) -> Option<Weak<U>>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling genref v0.8.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: enum `Ref` is never used
[INFO] [stdout]    --> src/global.rs:357:10
[INFO] [stdout]     |
[INFO] [stdout] 357 | pub enum Ref<T: Sync + Send + 'static>
[INFO] [stdout]     |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/global.rs:366:12
[INFO] [stdout]     |
[INFO] [stdout] 363 | impl<T: Sync + Send + 'static> Ref<T>
[INFO] [stdout]     | ------------------------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 366 |     pub fn new(t: T) -> Self { Self::Strong(Strong::new(t)) }
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 367 |
[INFO] [stdout] 368 |     pub fn try_as_ref(&self, rl: &Reading) -> Option<&T>
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 |     pub fn try_mut(&mut self, wl: &mut Writing) -> Option<&mut T>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |     pub fn try_map<F, U>(&self, rl: &Reading, f: F) -> Option<Ref<U>>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     pub fn is_weak(&self) -> bool
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn is_strong(&self) -> bool
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn is_valid(&self) -> bool
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/lib.rs:298:52
[INFO] [stdout]     |
[INFO] [stdout] 298 |             gen: Generation(NonNull::from(unsafe { &mut ZERO })),
[INFO] [stdout]     |                                                    ^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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] 298 |             gen: Generation(NonNull::from(unsafe { &raw mut ZERO })),
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Generation` is never constructed
[INFO] [stdout]   --> src/global.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct Generation(&'static AtomicU32);
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get`, and `free` are never used
[INFO] [stdout]   --> src/global.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Generation
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 22 | {
[INFO] [stdout] 23 |     fn new() -> Self { FreeList::unfree().unwrap_or_else(FreshList::fresh) }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 24 |     fn get(&self) -> u32 { self.0.load(Ordering::Relaxed) }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 25 |
[INFO] [stdout] 26 |     fn free(this: Self)
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Lock` is never constructed
[INFO] [stdout]   --> src/global.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | struct Lock(parking_lot::RawRwLock);
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Reading` is never constructed
[INFO] [stdout]   --> src/global.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct Reading(());
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reading` is never used
[INFO] [stdout]   --> src/global.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn reading() -> Reading { Lock::reading() }
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_reading` is never used
[INFO] [stdout]   --> src/global.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub fn try_reading() -> Option<Reading> { Lock::try_reading() }
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Writing` is never constructed
[INFO] [stdout]   --> src/global.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct Writing(());
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `writing` is never used
[INFO] [stdout]   --> src/global.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub fn writing() -> Writing { Lock::writing() }
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_writing` is never used
[INFO] [stdout]   --> src/global.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn try_writing() -> Option<Writing> { Lock::try_writing() }
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new`, `reading`, `writing`, `try_reading`, and `try_writing` are never used
[INFO] [stdout]   --> src/global.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 65 | impl Lock
[INFO] [stdout]    | --------- associated functions in this implementation
[INFO] [stdout] 66 | {
[INFO] [stdout] 67 |     fn new() -> Self { Self(lock_api::RawRwLock::INIT) }
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 68 |
[INFO] [stdout] 69 |     fn reading() -> Reading
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     fn writing() -> Writing
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     fn try_reading() -> Option<Reading>
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     fn try_writing() -> Option<Writing>
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `try_upgrade` is never used
[INFO] [stdout]    --> src/global.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl Reading
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] 101 | {
[INFO] [stdout] 102 |     fn try_upgrade(self) -> Result<Writing, Self>
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FreeList` is never constructed
[INFO] [stdout]    --> src/global.rs:148:8
[INFO] [stdout]     |
[INFO] [stdout] 148 | struct FreeList(Vec<Generation>);
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FreshList` is never constructed
[INFO] [stdout]    --> src/global.rs:149:8
[INFO] [stdout]     |
[INFO] [stdout] 149 | struct FreshList(usize, &'static [AtomicU32]);
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `free_`, `free`, `unfree_`, and `unfree` are never used
[INFO] [stdout]    --> src/global.rs:153:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | impl FreeList
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 152 | {
[INFO] [stdout] 153 |     fn new() -> Self { Self(Vec::with_capacity(32)) }
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 154 |
[INFO] [stdout] 155 |     fn free_(&mut self, gen: Generation) { self.0.push(gen) }
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 156 |     fn free(gen: Generation) { FREELIST.lock().free_(gen) }
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 157 |
[INFO] [stdout] 158 |     fn unfree_(&mut self) -> Option<Generation> { self.0.pop() }
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 159 |     fn unfree() -> Option<Generation> { FREELIST.lock().unfree_() }
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `INIT`, `new`, `fresh_`, `fresh`, `refresh`, and `more` are never used
[INFO] [stdout]    --> src/global.rs:164:11
[INFO] [stdout]     |
[INFO] [stdout] 162 | impl FreshList
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 163 | {
[INFO] [stdout] 164 |     const INIT: u32 = 1;
[INFO] [stdout]     |           ^^^^
[INFO] [stdout] 165 |     fn new() -> Self { Self(0, Self::more(32)) }
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 166 |
[INFO] [stdout] 167 |     fn fresh_(&mut self) -> Generation
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     fn fresh() -> Generation { FRESHLIST.lock().fresh_() }
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 177 |
[INFO] [stdout] 178 |     fn refresh(&mut self)
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     fn more(n: usize) -> &'static [AtomicU32]
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `DropLater` is never used
[INFO] [stdout]    --> src/global.rs:193:7
[INFO] [stdout]     |
[INFO] [stdout] 193 | trait DropLater: Send + Sync {}
[INFO] [stdout]     |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DropQueue` is never constructed
[INFO] [stdout]    --> src/global.rs:195:8
[INFO] [stdout]     |
[INFO] [stdout] 195 | struct DropQueue(Vec<Box<dyn DropLater>>);
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `clear_`, `clear`, `defer_`, and `defer` are never used
[INFO] [stdout]    --> src/global.rs:199:8
[INFO] [stdout]     |
[INFO] [stdout] 197 | impl DropQueue
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 198 | {
[INFO] [stdout] 199 |     fn new() -> Self { Self(Vec::with_capacity(32)) }
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 200 |
[INFO] [stdout] 201 |     fn clear_(&mut self, _wl: &mut Writing) -> impl Drop
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     fn clear(wl: &mut Writing) -> impl Drop { DROPQUEUE.lock().clear_(wl) }
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 208 |
[INFO] [stdout] 209 |     fn defer_(&mut self, val: Box<dyn DropLater>) { self.0.push(val) }
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 210 |     fn defer(val: Box<dyn DropLater>) { DROPQUEUE.lock().defer_(val) }
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Strong` is never constructed
[INFO] [stdout]    --> src/global.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub struct Strong<T: Sync + Send + 'static>
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Weak` is never constructed
[INFO] [stdout]    --> src/global.rs:231:12
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub struct Weak<T: Sync + Send + 'static>
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `alias`, `take`, `as_ref`, `as_mut`, and `map` are never used
[INFO] [stdout]    --> src/global.rs:255:12
[INFO] [stdout]     |
[INFO] [stdout] 253 | impl<T: Sync + Send + 'static> Strong<T>
[INFO] [stdout]     | ---------------------------------------- associated items in this implementation
[INFO] [stdout] 254 | {
[INFO] [stdout] 255 |     pub fn new(t: T) -> Self { Self::from(Box::new(t)) }
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 256 |
[INFO] [stdout] 257 |     pub fn alias(&self) -> Weak<T>
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 266 |     pub fn take(mut self, _wl: &mut Writing) -> Box<T>
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 274 |     pub fn as_ref(&self, _rl: &Reading) -> &T { &self.ptr }
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 275 |     pub fn as_mut(&mut self, _wl: &mut Writing) -> &mut T { &mut self.ptr }
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 276 |
[INFO] [stdout] 277 |     pub fn map<F, U>(&self, rl: &Reading, f: F) -> Weak<U>
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `dangling`, `is_valid`, `try_ref`, `try_mut`, and `try_map` are never used
[INFO] [stdout]    --> src/global.rs:303:12
[INFO] [stdout]     |
[INFO] [stdout] 301 | impl<T: Sync + Send + 'static> Weak<T>
[INFO] [stdout]     | -------------------------------------- associated items in this implementation
[INFO] [stdout] 302 | {
[INFO] [stdout] 303 |     pub fn dangling() -> Self
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 313 |     pub fn is_valid(&self) -> bool { self.genref == self.gen.get() }
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 314 |
[INFO] [stdout] 315 |     pub fn try_ref(&self, _rl: &Reading) -> Option<&T>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |     pub fn try_mut(&mut self, _wl: &mut Writing) -> Option<&mut T>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 333 |     pub fn try_map<F, U>(&self, rl: &Reading, f: F) -> Option<Weak<U>>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Ref` is never used
[INFO] [stdout]    --> src/global.rs:357:10
[INFO] [stdout]     |
[INFO] [stdout] 357 | pub enum Ref<T: Sync + Send + 'static>
[INFO] [stdout]     |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/global.rs:366:12
[INFO] [stdout]     |
[INFO] [stdout] 363 | impl<T: Sync + Send + 'static> Ref<T>
[INFO] [stdout]     | ------------------------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 366 |     pub fn new(t: T) -> Self { Self::Strong(Strong::new(t)) }
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 367 |
[INFO] [stdout] 368 |     pub fn try_as_ref(&self, rl: &Reading) -> Option<&T>
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 |     pub fn try_mut(&mut self, wl: &mut Writing) -> Option<&mut T>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |     pub fn try_map<F, U>(&self, rl: &Reading, f: F) -> Option<Ref<U>>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     pub fn is_weak(&self) -> bool
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn is_strong(&self) -> bool
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn is_valid(&self) -> bool
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/lib.rs:298:52
[INFO] [stdout]     |
[INFO] [stdout] 298 |             gen: Generation(NonNull::from(unsafe { &mut ZERO })),
[INFO] [stdout]     |                                                    ^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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] 298 |             gen: Generation(NonNull::from(unsafe { &raw mut ZERO })),
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.37s
[INFO] running `Command { std: "docker" "inspect" "5f32a2127b01ba76aaa08b68738c1e3d2e4987077060586398d5efa7e3e4abd1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5f32a2127b01ba76aaa08b68738c1e3d2e4987077060586398d5efa7e3e4abd1", kill_on_drop: false }`
[INFO] [stdout] 5f32a2127b01ba76aaa08b68738c1e3d2e4987077060586398d5efa7e3e4abd1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] e67b1c82996a36c68a6559cdfed8599b74444aa95f943f19968c946fb64a0b9b
[INFO] running `Command { std: "docker" "start" "-a" "e67b1c82996a36c68a6559cdfed8599b74444aa95f943f19968c946fb64a0b9b", kill_on_drop: false }`
[INFO] [stderr] warning: struct `Generation` is never constructed
[INFO] [stderr]   --> src/global.rs:19:8
[INFO] [stderr]    |
[INFO] [stderr] 19 | struct Generation(&'static AtomicU32);
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `get`, and `free` are never used
[INFO] [stderr]   --> src/global.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 21 | impl Generation
[INFO] [stderr]    | --------------- associated items in this implementation
[INFO] [stderr] 22 | {
[INFO] [stderr] 23 |     fn new() -> Self { FreeList::unfree().unwrap_or_else(FreshList::fresh) }
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 24 |     fn get(&self) -> u32 { self.0.load(Ordering::Relaxed) }
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 25 |
[INFO] [stderr] 26 |     fn free(this: Self)
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Lock` is never constructed
[INFO] [stderr]   --> src/global.rs:43:8
[INFO] [stderr]    |
[INFO] [stderr] 43 | struct Lock(parking_lot::RawRwLock);
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Reading` is never constructed
[INFO] [stderr]   --> src/global.rs:50:12
[INFO] [stderr]    |
[INFO] [stderr] 50 | pub struct Reading(());
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `reading` is never used
[INFO] [stderr]   --> src/global.rs:51:8
[INFO] [stderr]    |
[INFO] [stderr] 51 | pub fn reading() -> Reading { Lock::reading() }
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `try_reading` is never used
[INFO] [stderr]   --> src/global.rs:52:8
[INFO] [stderr]    |
[INFO] [stderr] 52 | pub fn try_reading() -> Option<Reading> { Lock::try_reading() }
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Writing` is never constructed
[INFO] [stderr]   --> src/global.rs:61:12
[INFO] [stderr]    |
[INFO] [stderr] 61 | pub struct Writing(());
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `writing` is never used
[INFO] [stderr]   --> src/global.rs:62:8
[INFO] [stderr]    |
[INFO] [stderr] 62 | pub fn writing() -> Writing { Lock::writing() }
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `try_writing` is never used
[INFO] [stderr]   --> src/global.rs:63:8
[INFO] [stderr]    |
[INFO] [stderr] 63 | pub fn try_writing() -> Option<Writing> { Lock::try_writing() }
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated functions `new`, `reading`, `writing`, `try_reading`, and `try_writing` are never used
[INFO] [stderr]   --> src/global.rs:67:8
[INFO] [stderr]    |
[INFO] [stderr] 65 | impl Lock
[INFO] [stderr]    | --------- associated functions in this implementation
[INFO] [stderr] 66 | {
[INFO] [stderr] 67 |     fn new() -> Self { Self(lock_api::RawRwLock::INIT) }
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 68 |
[INFO] [stderr] 69 |     fn reading() -> Reading
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 75 |     fn writing() -> Writing
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 81 |     fn try_reading() -> Option<Reading>
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 90 |     fn try_writing() -> Option<Writing>
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `try_upgrade` is never used
[INFO] [stderr]    --> src/global.rs:102:8
[INFO] [stderr]     |
[INFO] [stderr] 100 | impl Reading
[INFO] [stderr]     | ------------ method in this implementation
[INFO] [stderr] 101 | {
[INFO] [stderr] 102 |     fn try_upgrade(self) -> Result<Writing, Self>
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FreeList` is never constructed
[INFO] [stderr]    --> src/global.rs:148:8
[INFO] [stderr]     |
[INFO] [stderr] 148 | struct FreeList(Vec<Generation>);
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FreshList` is never constructed
[INFO] [stderr]    --> src/global.rs:149:8
[INFO] [stderr]     |
[INFO] [stderr] 149 | struct FreshList(usize, &'static [AtomicU32]);
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `free_`, `free`, `unfree_`, and `unfree` are never used
[INFO] [stderr]    --> src/global.rs:153:8
[INFO] [stderr]     |
[INFO] [stderr] 151 | impl FreeList
[INFO] [stderr]     | ------------- associated items in this implementation
[INFO] [stderr] 152 | {
[INFO] [stderr] 153 |     fn new() -> Self { Self(Vec::with_capacity(32)) }
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 154 |
[INFO] [stderr] 155 |     fn free_(&mut self, gen: Generation) { self.0.push(gen) }
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] 156 |     fn free(gen: Generation) { FREELIST.lock().free_(gen) }
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] 157 |
[INFO] [stderr] 158 |     fn unfree_(&mut self) -> Option<Generation> { self.0.pop() }
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] 159 |     fn unfree() -> Option<Generation> { FREELIST.lock().unfree_() }
[INFO] [stderr]     |        ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `INIT`, `new`, `fresh_`, `fresh`, `refresh`, and `more` are never used
[INFO] [stderr]    --> src/global.rs:164:11
[INFO] [stderr]     |
[INFO] [stderr] 162 | impl FreshList
[INFO] [stderr]     | -------------- associated items in this implementation
[INFO] [stderr] 163 | {
[INFO] [stderr] 164 |     const INIT: u32 = 1;
[INFO] [stderr]     |           ^^^^
[INFO] [stderr] 165 |     fn new() -> Self { Self(0, Self::more(32)) }
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 166 |
[INFO] [stderr] 167 |     fn fresh_(&mut self) -> Generation
[INFO] [stderr]     |        ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 176 |     fn fresh() -> Generation { FRESHLIST.lock().fresh_() }
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] 177 |
[INFO] [stderr] 178 |     fn refresh(&mut self)
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 184 |     fn more(n: usize) -> &'static [AtomicU32]
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `DropLater` is never used
[INFO] [stderr]    --> src/global.rs:193:7
[INFO] [stderr]     |
[INFO] [stderr] 193 | trait DropLater: Send + Sync {}
[INFO] [stderr]     |       ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DropQueue` is never constructed
[INFO] [stderr]    --> src/global.rs:195:8
[INFO] [stderr]     |
[INFO] [stderr] 195 | struct DropQueue(Vec<Box<dyn DropLater>>);
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `clear_`, `clear`, `defer_`, and `defer` are never used
[INFO] [stderr]    --> src/global.rs:199:8
[INFO] [stderr]     |
[INFO] [stderr] 197 | impl DropQueue
[INFO] [stderr]     | -------------- associated items in this implementation
[INFO] [stderr] 198 | {
[INFO] [stderr] 199 |     fn new() -> Self { Self(Vec::with_capacity(32)) }
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 200 |
[INFO] [stderr] 201 |     fn clear_(&mut self, _wl: &mut Writing) -> impl Drop
[INFO] [stderr]     |        ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 207 |     fn clear(wl: &mut Writing) -> impl Drop { DROPQUEUE.lock().clear_(wl) }
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] 208 |
[INFO] [stderr] 209 |     fn defer_(&mut self, val: Box<dyn DropLater>) { self.0.push(val) }
[INFO] [stderr]     |        ^^^^^^
[INFO] [stderr] 210 |     fn defer(val: Box<dyn DropLater>) { DROPQUEUE.lock().defer_(val) }
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Strong` is never constructed
[INFO] [stderr]    --> src/global.rs:221:12
[INFO] [stderr]     |
[INFO] [stderr] 221 | pub struct Strong<T: Sync + Send + 'static>
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Weak` is never constructed
[INFO] [stderr]    --> src/global.rs:231:12
[INFO] [stderr]     |
[INFO] [stderr] 231 | pub struct Weak<T: Sync + Send + 'static>
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `alias`, `take`, `as_ref`, `as_mut`, and `map` are never used
[INFO] [stderr]    --> src/global.rs:255:12
[INFO] [stderr]     |
[INFO] [stderr] 253 | impl<T: Sync + Send + 'static> Strong<T>
[INFO] [stderr]     | ---------------------------------------- associated items in this implementation
[INFO] [stderr] 254 | {
[INFO] [stderr] 255 |     pub fn new(t: T) -> Self { Self::from(Box::new(t)) }
[INFO] [stderr]     |            ^^^
[INFO] [stderr] 256 |
[INFO] [stderr] 257 |     pub fn alias(&self) -> Weak<T>
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 266 |     pub fn take(mut self, _wl: &mut Writing) -> Box<T>
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 274 |     pub fn as_ref(&self, _rl: &Reading) -> &T { &self.ptr }
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 275 |     pub fn as_mut(&mut self, _wl: &mut Writing) -> &mut T { &mut self.ptr }
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 276 |
[INFO] [stderr] 277 |     pub fn map<F, U>(&self, rl: &Reading, f: F) -> Weak<U>
[INFO] [stderr]     |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `dangling`, `is_valid`, `try_ref`, `try_mut`, and `try_map` are never used
[INFO] [stderr]    --> src/global.rs:303:12
[INFO] [stderr]     |
[INFO] [stderr] 301 | impl<T: Sync + Send + 'static> Weak<T>
[INFO] [stderr]     | -------------------------------------- associated items in this implementation
[INFO] [stderr] 302 | {
[INFO] [stderr] 303 |     pub fn dangling() -> Self
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 313 |     pub fn is_valid(&self) -> bool { self.genref == self.gen.get() }
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 314 |
[INFO] [stderr] 315 |     pub fn try_ref(&self, _rl: &Reading) -> Option<&T>
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 324 |     pub fn try_mut(&mut self, _wl: &mut Writing) -> Option<&mut T>
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 333 |     pub fn try_map<F, U>(&self, rl: &Reading, f: F) -> Option<Weak<U>>
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Ref` is never used
[INFO] [stderr]    --> src/global.rs:357:10
[INFO] [stderr]     |
[INFO] [stderr] 357 | pub enum Ref<T: Sync + Send + 'static>
[INFO] [stderr]     |          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/global.rs:366:12
[INFO] [stderr]     |
[INFO] [stderr] 363 | impl<T: Sync + Send + 'static> Ref<T>
[INFO] [stderr]     | ------------------------------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 366 |     pub fn new(t: T) -> Self { Self::Strong(Strong::new(t)) }
[INFO] [stderr]     |            ^^^
[INFO] [stderr] 367 |
[INFO] [stderr] 368 |     pub fn try_as_ref(&self, rl: &Reading) -> Option<&T>
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 376 |     pub fn try_mut(&mut self, wl: &mut Writing) -> Option<&mut T>
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 384 |     pub fn try_map<F, U>(&self, rl: &Reading, f: F) -> Option<Ref<U>>
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 395 |     pub fn is_weak(&self) -> bool
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 403 |     pub fn is_strong(&self) -> bool
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 411 |     pub fn is_valid(&self) -> bool
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/lib.rs:298:52
[INFO] [stderr]     |
[INFO] [stderr] 298 |             gen: Generation(NonNull::from(unsafe { &mut ZERO })),
[INFO] [stderr]     |                                                    ^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] help: use `&raw mut` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 298 |             gen: Generation(NonNull::from(unsafe { &raw mut ZERO })),
[INFO] [stderr]     |                                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: `genref` (lib) generated 25 warnings
[INFO] [stderr] warning: `genref` (lib test) generated 25 warnings (25 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/genref-563006ea6f9dadc5)
[INFO] [stdout] 
[INFO] [stdout] running 16 tests
[INFO] [stdout] test tests::drop_later_if_reading ... ok
[INFO] [stdout] test tests::drop_invalidates ... ok
[INFO] [stdout] test tests::many_readers ... ok
[INFO] [stdout] test tests::reading_excludes_writing ... ok
[INFO] [stdout] test tests::reading_invalid_weak_fails ... ok
[INFO] [stdout] test tests::strong_reading ... ok
[INFO] [stdout] test tests::writer_excludes_reading ... ok
[INFO] [stdout] test tests::weak_writing_weak_reading ... ok
[INFO] [stdout] test tests::strong_take ... ok
[INFO] [stdout] test tests::one_writer ... ok
[INFO] [stdout] test tests::weak_writing_strong_reading ... ok
[INFO] [stdout] test tests::strong_writing ... ok
[INFO] [stdout] test tests::writing_invalid_weak_fails ... ok
[INFO] [stdout] test tests::drop_later_if_writing ... ok
[INFO] [stdout] test tests::strong_writing_weak_reading ... ok
[INFO] [stdout] test tests::weak_reading ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests genref
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "e67b1c82996a36c68a6559cdfed8599b74444aa95f943f19968c946fb64a0b9b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e67b1c82996a36c68a6559cdfed8599b74444aa95f943f19968c946fb64a0b9b", kill_on_drop: false }`
[INFO] [stdout] e67b1c82996a36c68a6559cdfed8599b74444aa95f943f19968c946fb64a0b9b
