[INFO] fetching crate orengine 0.7.0-alpha.1...
[INFO] building orengine-0.7.0-alpha.1 against try#d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 for pr-146237-1
[INFO] extracting crate orengine 0.7.0-alpha.1 into /workspace/builds/worker-5-tc2/source
[INFO] started tweaking crates.io crate orengine 0.7.0-alpha.1
[INFO] finished tweaking crates.io crate orengine 0.7.0-alpha.1
[INFO] tweaked toml for crates.io crate orengine 0.7.0-alpha.1 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate orengine 0.7.0-alpha.1 on toolchain d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "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" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 48 packages to latest compatible versions
[INFO] [stderr]       Adding nix v0.29.0 (available: v0.30.1)
[INFO] [stderr]       Adding socket2 v0.5.10 (available: v0.6.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2e4eebc2373a3d425f9fcf124100e79e03cfcbaaed600464f4422e286f360f00
[INFO] running `Command { std: "docker" "start" "-a" "2e4eebc2373a3d425f9fcf124100e79e03cfcbaaed600464f4422e286f360f00", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2e4eebc2373a3d425f9fcf124100e79e03cfcbaaed600464f4422e286f360f00", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2e4eebc2373a3d425f9fcf124100e79e03cfcbaaed600464f4422e286f360f00", kill_on_drop: false }`
[INFO] [stdout] 2e4eebc2373a3d425f9fcf124100e79e03cfcbaaed600464f4422e286f360f00
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 802658ccc4afe56ad430545f0d7127500bd0c86b1b4fd3715046c12580e3f2eb
[INFO] running `Command { std: "docker" "start" "-a" "802658ccc4afe56ad430545f0d7127500bd0c86b1b4fd3715046c12580e3f2eb", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]    Compiling io-uring v0.7.10
[INFO] [stderr]    Compiling bitflags v2.9.4
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling smallvec v2.0.0-alpha.11
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling crossbeam v0.8.4
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling core_affinity v0.8.3
[INFO] [stderr]    Compiling orengine-macros v4.0.0
[INFO] [stderr]    Compiling orengine v0.7.0-alpha.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/sync/mutexes/smart_shared.rs:202:35
[INFO] [stdout]     |
[INFO] [stdout] 202 |     pub fn try_lock_with_spinning(&self) -> Option<MutexGuard<T>> {
[INFO] [stdout]     |                                   ^^^^^            ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 202 |     pub fn try_lock_with_spinning(&self) -> Option<MutexGuard<'_, T>> {
[INFO] [stdout]     |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/io/buf/sendable_buffer.rs:53:39
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub fn slice<R: RangeBounds<u32>>(&self, range: R) -> SendableSlice {
[INFO] [stdout]    |                                       ^^^^^               ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub fn slice<R: RangeBounds<u32>>(&self, range: R) -> SendableSlice<'_> {
[INFO] [stdout]    |                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/io/buf/sendable_buffer.rs:87:43
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn slice_mut<R: RangeBounds<u32>>(&mut self, range: R) -> SendableSliceMut {
[INFO] [stdout]    |                                           ^^^^^^^^^               ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn slice_mut<R: RangeBounds<u32>>(&mut self, range: R) -> SendableSliceMut<'_> {
[INFO] [stdout]    |                                                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/local.rs:364:19
[INFO] [stdout]     |
[INFO] [stdout] 364 |     pub fn borrow(&self) -> LocalRef<T> {
[INFO] [stdout]     |                   ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 364 |     pub fn borrow(&self) -> LocalRef<'_, T> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/local.rs:395:23
[INFO] [stdout]     |
[INFO] [stdout] 395 |     pub fn borrow_mut(&self) -> LocalRefMut<T> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 395 |     pub fn borrow_mut(&self) -> LocalRefMut<'_, T> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/utils/never_wait_lock.rs:20:28
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub(crate) fn try_lock(&self) -> Option<SpinLockGuard<T>> {
[INFO] [stdout]    |                            ^^^^^            ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub(crate) fn try_lock(&self) -> Option<SpinLockGuard<'_, T>> {
[INFO] [stdout]    |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/utils/spin_lock.rs:133:17
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn lock(&self) -> SpinLockGuard<T> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn lock(&self) -> SpinLockGuard<'_, T> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/utils/spin_lock.rs:147:21
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn try_lock(&self) -> Option<SpinLockGuard<T>> {
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn try_lock(&self) -> Option<SpinLockGuard<'_, T>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/runtime/task/shared_task_list.rs:31:46
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub(crate) fn try_lock_and_return_as_vec(&self) -> Option<SpinLockGuard<Vec<Task>>> {
[INFO] [stdout]    |                                              ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub(crate) fn try_lock_and_return_as_vec(&self) -> Option<SpinLockGuard<'_, Vec<Task>>> {
[INFO] [stdout]    |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: transmuting an integer to a pointer creates a pointer without provenance
[INFO] [stdout]   --> src/runtime/task/task_data.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |                     std::mem::transmute::<i128, *mut dyn Future<Output = ()>>(tagged_ptr)
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is dangerous because dereferencing the resulting pointer is undefined behavior
[INFO] [stdout]    = note: exposed provenance semantics can be used to create a pointer based on some previously exposed provenance
[INFO] [stdout]    = help: if you truly mean to create a pointer without provenance, use `std::ptr::without_provenance_mut`
[INFO] [stdout]    = help: for more information about transmute, see <https://doc.rust-lang.org/std/mem/fn.transmute.html#transmutation-between-pointers-and-integers>
[INFO] [stdout]    = help: for more information about exposed provenance, see <https://doc.rust-lang.org/std/ptr/index.html#exposed-provenance>
[INFO] [stdout]    = note: `#[warn(integer_to_ptr_transmutes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: transmuting an integer to a pointer creates a pointer without provenance
[INFO] [stdout]   --> src/runtime/task/task_data.rs:63:17
[INFO] [stdout]    |
[INFO] [stdout] 63 | /                 std::mem::transmute::<i128, *mut dyn Future<Output = ()>>(
[INFO] [stdout] 64 | |                     future_tagged_ptr & TASK_MASK,
[INFO] [stdout] 65 | |                 )
[INFO] [stdout]    | |_________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is dangerous because dereferencing the resulting pointer is undefined behavior
[INFO] [stdout]    = note: exposed provenance semantics can be used to create a pointer based on some previously exposed provenance
[INFO] [stdout]    = help: if you truly mean to create a pointer without provenance, use `std::ptr::without_provenance_mut`
[INFO] [stdout]    = help: for more information about transmute, see <https://doc.rust-lang.org/std/mem/fn.transmute.html#transmutation-between-pointers-and-integers>
[INFO] [stdout]    = help: for more information about exposed provenance, see <https://doc.rust-lang.org/std/ptr/index.html#exposed-provenance>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: transmuting an integer to a pointer creates a pointer without provenance
[INFO] [stdout]    --> src/runtime/task/task_data.rs:108:21
[INFO] [stdout]     |
[INFO] [stdout] 108 |                     std::mem::transmute::<i128, *mut dyn Future<Output = ()>>(tagged_ptr)
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is dangerous because dereferencing the resulting pointer is undefined behavior
[INFO] [stdout]     = note: exposed provenance semantics can be used to create a pointer based on some previously exposed provenance
[INFO] [stdout]     = help: if you truly mean to create a pointer without provenance, use `std::ptr::without_provenance_mut`
[INFO] [stdout]     = help: for more information about transmute, see <https://doc.rust-lang.org/std/mem/fn.transmute.html#transmutation-between-pointers-and-integers>
[INFO] [stdout]     = help: for more information about exposed provenance, see <https://doc.rust-lang.org/std/ptr/index.html#exposed-provenance>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/sync/channels/shared.rs:649:14
[INFO] [stdout]     |
[INFO] [stdout] 649 |     fn split(&self) -> (Sender<T>, Receiver<T>) {
[INFO] [stdout]     |              ^^^^^      ^^^^^^^^^  ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |              |          |
[INFO] [stdout]     |              |          the same lifetime is hidden here
[INFO] [stdout]     |              the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 649 |     fn split(&self) -> (Sender<'_, T>, Receiver<'_, T>) {
[INFO] [stdout]     |                                +++              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.82s
[INFO] running `Command { std: "docker" "inspect" "802658ccc4afe56ad430545f0d7127500bd0c86b1b4fd3715046c12580e3f2eb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "802658ccc4afe56ad430545f0d7127500bd0c86b1b4fd3715046c12580e3f2eb", kill_on_drop: false }`
[INFO] [stdout] 802658ccc4afe56ad430545f0d7127500bd0c86b1b4fd3715046c12580e3f2eb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 87f012f144d200520db35034d8c5ec5cd37e1b89bb4742c121dd74bbe51be218
[INFO] running `Command { std: "docker" "start" "-a" "87f012f144d200520db35034d8c5ec5cd37e1b89bb4742c121dd74bbe51be218", kill_on_drop: false }`
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/sync/mutexes/smart_shared.rs:202:35
[INFO] [stdout]     |
[INFO] [stdout] 202 |     pub fn try_lock_with_spinning(&self) -> Option<MutexGuard<T>> {
[INFO] [stdout]     |                                   ^^^^^            ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 202 |     pub fn try_lock_with_spinning(&self) -> Option<MutexGuard<'_, T>> {
[INFO] [stdout]     |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/io/buf/sendable_buffer.rs:53:39
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub fn slice<R: RangeBounds<u32>>(&self, range: R) -> SendableSlice {
[INFO] [stdout]    |                                       ^^^^^               ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub fn slice<R: RangeBounds<u32>>(&self, range: R) -> SendableSlice<'_> {
[INFO] [stdout]    |                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/io/buf/sendable_buffer.rs:87:43
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn slice_mut<R: RangeBounds<u32>>(&mut self, range: R) -> SendableSliceMut {
[INFO] [stdout]    |                                           ^^^^^^^^^               ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn slice_mut<R: RangeBounds<u32>>(&mut self, range: R) -> SendableSliceMut<'_> {
[INFO] [stdout]    |                                                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/local.rs:364:19
[INFO] [stdout]     |
[INFO] [stdout] 364 |     pub fn borrow(&self) -> LocalRef<T> {
[INFO] [stdout]     |                   ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 364 |     pub fn borrow(&self) -> LocalRef<'_, T> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/local.rs:395:23
[INFO] [stdout]     |
[INFO] [stdout] 395 |     pub fn borrow_mut(&self) -> LocalRefMut<T> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 395 |     pub fn borrow_mut(&self) -> LocalRefMut<'_, T> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/utils/never_wait_lock.rs:20:28
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub(crate) fn try_lock(&self) -> Option<SpinLockGuard<T>> {
[INFO] [stdout]    |                            ^^^^^            ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub(crate) fn try_lock(&self) -> Option<SpinLockGuard<'_, T>> {
[INFO] [stdout]    |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/utils/spin_lock.rs:133:17
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn lock(&self) -> SpinLockGuard<T> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn lock(&self) -> SpinLockGuard<'_, T> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/utils/spin_lock.rs:147:21
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn try_lock(&self) -> Option<SpinLockGuard<T>> {
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn try_lock(&self) -> Option<SpinLockGuard<'_, T>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/runtime/task/shared_task_list.rs:31:46
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub(crate) fn try_lock_and_return_as_vec(&self) -> Option<SpinLockGuard<Vec<Task>>> {
[INFO] [stdout]    |                                              ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub(crate) fn try_lock_and_return_as_vec(&self) -> Option<SpinLockGuard<'_, Vec<Task>>> {
[INFO] [stdout]    |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: transmuting an integer to a pointer creates a pointer without provenance
[INFO] [stdout]   --> src/runtime/task/task_data.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |                     std::mem::transmute::<i128, *mut dyn Future<Output = ()>>(tagged_ptr)
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is dangerous because dereferencing the resulting pointer is undefined behavior
[INFO] [stdout]    = note: exposed provenance semantics can be used to create a pointer based on some previously exposed provenance
[INFO] [stdout]    = help: if you truly mean to create a pointer without provenance, use `std::ptr::without_provenance_mut`
[INFO] [stdout]    = help: for more information about transmute, see <https://doc.rust-lang.org/std/mem/fn.transmute.html#transmutation-between-pointers-and-integers>
[INFO] [stdout]    = help: for more information about exposed provenance, see <https://doc.rust-lang.org/std/ptr/index.html#exposed-provenance>
[INFO] [stdout]    = note: `#[warn(integer_to_ptr_transmutes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling orengine v0.7.0-alpha.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: transmuting an integer to a pointer creates a pointer without provenance
[INFO] [stdout]   --> src/runtime/task/task_data.rs:63:17
[INFO] [stdout]    |
[INFO] [stdout] 63 | /                 std::mem::transmute::<i128, *mut dyn Future<Output = ()>>(
[INFO] [stdout] 64 | |                     future_tagged_ptr & TASK_MASK,
[INFO] [stdout] 65 | |                 )
[INFO] [stdout]    | |_________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is dangerous because dereferencing the resulting pointer is undefined behavior
[INFO] [stdout]    = note: exposed provenance semantics can be used to create a pointer based on some previously exposed provenance
[INFO] [stdout]    = help: if you truly mean to create a pointer without provenance, use `std::ptr::without_provenance_mut`
[INFO] [stdout]    = help: for more information about transmute, see <https://doc.rust-lang.org/std/mem/fn.transmute.html#transmutation-between-pointers-and-integers>
[INFO] [stdout]    = help: for more information about exposed provenance, see <https://doc.rust-lang.org/std/ptr/index.html#exposed-provenance>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: transmuting an integer to a pointer creates a pointer without provenance
[INFO] [stdout]    --> src/runtime/task/task_data.rs:108:21
[INFO] [stdout]     |
[INFO] [stdout] 108 |                     std::mem::transmute::<i128, *mut dyn Future<Output = ()>>(tagged_ptr)
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is dangerous because dereferencing the resulting pointer is undefined behavior
[INFO] [stdout]     = note: exposed provenance semantics can be used to create a pointer based on some previously exposed provenance
[INFO] [stdout]     = help: if you truly mean to create a pointer without provenance, use `std::ptr::without_provenance_mut`
[INFO] [stdout]     = help: for more information about transmute, see <https://doc.rust-lang.org/std/mem/fn.transmute.html#transmutation-between-pointers-and-integers>
[INFO] [stdout]     = help: for more information about exposed provenance, see <https://doc.rust-lang.org/std/ptr/index.html#exposed-provenance>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/sync/channels/shared.rs:649:14
[INFO] [stdout]     |
[INFO] [stdout] 649 |     fn split(&self) -> (Sender<T>, Receiver<T>) {
[INFO] [stdout]     |              ^^^^^      ^^^^^^^^^  ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |              |          |
[INFO] [stdout]     |              |          the same lifetime is hidden here
[INFO] [stdout]     |              the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 649 |     fn split(&self) -> (Sender<'_, T>, Receiver<'_, T>) {
[INFO] [stdout]     |                                +++              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/io/buf/sendable_buffer.rs:53:39
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub fn slice<R: RangeBounds<u32>>(&self, range: R) -> SendableSlice {
[INFO] [stdout]    |                                       ^^^^^               ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub fn slice<R: RangeBounds<u32>>(&self, range: R) -> SendableSlice<'_> {
[INFO] [stdout]    |                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/io/buf/sendable_buffer.rs:87:43
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn slice_mut<R: RangeBounds<u32>>(&mut self, range: R) -> SendableSliceMut {
[INFO] [stdout]    |                                           ^^^^^^^^^               ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn slice_mut<R: RangeBounds<u32>>(&mut self, range: R) -> SendableSliceMut<'_> {
[INFO] [stdout]    |                                                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/runtime/task/shared_task_list.rs:31:46
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub(crate) fn try_lock_and_return_as_vec(&self) -> Option<SpinLockGuard<Vec<Task>>> {
[INFO] [stdout]    |                                              ^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub(crate) fn try_lock_and_return_as_vec(&self) -> Option<SpinLockGuard<'_, Vec<Task>>> {
[INFO] [stdout]    |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: transmuting an integer to a pointer creates a pointer without provenance
[INFO] [stdout]   --> src/runtime/task/task_data.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |                     std::mem::transmute::<i128, *mut dyn Future<Output = ()>>(tagged_ptr)
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is dangerous because dereferencing the resulting pointer is undefined behavior
[INFO] [stdout]    = note: exposed provenance semantics can be used to create a pointer based on some previously exposed provenance
[INFO] [stdout]    = help: if you truly mean to create a pointer without provenance, use `std::ptr::without_provenance_mut`
[INFO] [stdout]    = help: for more information about transmute, see <https://doc.rust-lang.org/std/mem/fn.transmute.html#transmutation-between-pointers-and-integers>
[INFO] [stdout]    = help: for more information about exposed provenance, see <https://doc.rust-lang.org/std/ptr/index.html#exposed-provenance>
[INFO] [stdout]    = note: `#[warn(integer_to_ptr_transmutes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: transmuting an integer to a pointer creates a pointer without provenance
[INFO] [stdout]   --> src/runtime/task/task_data.rs:63:17
[INFO] [stdout]    |
[INFO] [stdout] 63 | /                 std::mem::transmute::<i128, *mut dyn Future<Output = ()>>(
[INFO] [stdout] 64 | |                     future_tagged_ptr & TASK_MASK,
[INFO] [stdout] 65 | |                 )
[INFO] [stdout]    | |_________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is dangerous because dereferencing the resulting pointer is undefined behavior
[INFO] [stdout]    = note: exposed provenance semantics can be used to create a pointer based on some previously exposed provenance
[INFO] [stdout]    = help: if you truly mean to create a pointer without provenance, use `std::ptr::without_provenance_mut`
[INFO] [stdout]    = help: for more information about transmute, see <https://doc.rust-lang.org/std/mem/fn.transmute.html#transmutation-between-pointers-and-integers>
[INFO] [stdout]    = help: for more information about exposed provenance, see <https://doc.rust-lang.org/std/ptr/index.html#exposed-provenance>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: transmuting an integer to a pointer creates a pointer without provenance
[INFO] [stdout]    --> src/runtime/task/task_data.rs:108:21
[INFO] [stdout]     |
[INFO] [stdout] 108 |                     std::mem::transmute::<i128, *mut dyn Future<Output = ()>>(tagged_ptr)
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is dangerous because dereferencing the resulting pointer is undefined behavior
[INFO] [stdout]     = note: exposed provenance semantics can be used to create a pointer based on some previously exposed provenance
[INFO] [stdout]     = help: if you truly mean to create a pointer without provenance, use `std::ptr::without_provenance_mut`
[INFO] [stdout]     = help: for more information about transmute, see <https://doc.rust-lang.org/std/mem/fn.transmute.html#transmutation-between-pointers-and-integers>
[INFO] [stdout]     = help: for more information about exposed provenance, see <https://doc.rust-lang.org/std/ptr/index.html#exposed-provenance>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/sync/channels/shared.rs:649:14
[INFO] [stdout]     |
[INFO] [stdout] 649 |     fn split(&self) -> (Sender<T>, Receiver<T>) {
[INFO] [stdout]     |              ^^^^^      ^^^^^^^^^  ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |              |          |
[INFO] [stdout]     |              |          the same lifetime is hidden here
[INFO] [stdout]     |              the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 649 |     fn split(&self) -> (Sender<'_, T>, Receiver<'_, T>) {
[INFO] [stdout]     |                                +++              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/local.rs:364:19
[INFO] [stdout]     |
[INFO] [stdout] 364 |     pub fn borrow(&self) -> LocalRef<T> {
[INFO] [stdout]     |                   ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 364 |     pub fn borrow(&self) -> LocalRef<'_, T> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/local.rs:395:23
[INFO] [stdout]     |
[INFO] [stdout] 395 |     pub fn borrow_mut(&self) -> LocalRefMut<T> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 395 |     pub fn borrow_mut(&self) -> LocalRefMut<'_, T> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/utils/never_wait_lock.rs:20:28
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub(crate) fn try_lock(&self) -> Option<SpinLockGuard<T>> {
[INFO] [stdout]    |                            ^^^^^            ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub(crate) fn try_lock(&self) -> Option<SpinLockGuard<'_, T>> {
[INFO] [stdout]    |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/sync/mutexes/smart_shared.rs:202:35
[INFO] [stdout]     |
[INFO] [stdout] 202 |     pub fn try_lock_with_spinning(&self) -> Option<MutexGuard<T>> {
[INFO] [stdout]     |                                   ^^^^^            ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 202 |     pub fn try_lock_with_spinning(&self) -> Option<MutexGuard<'_, T>> {
[INFO] [stdout]     |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/utils/spin_lock.rs:133:17
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn lock(&self) -> SpinLockGuard<T> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn lock(&self) -> SpinLockGuard<'_, T> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/utils/spin_lock.rs:147:21
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn try_lock(&self) -> Option<SpinLockGuard<T>> {
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn try_lock(&self) -> Option<SpinLockGuard<'_, T>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 7.29s
[INFO] running `Command { std: "docker" "inspect" "87f012f144d200520db35034d8c5ec5cd37e1b89bb4742c121dd74bbe51be218", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "87f012f144d200520db35034d8c5ec5cd37e1b89bb4742c121dd74bbe51be218", kill_on_drop: false }`
[INFO] [stdout] 87f012f144d200520db35034d8c5ec5cd37e1b89bb4742c121dd74bbe51be218
