[INFO] fetching crate sharded_mutex 2.1.0...
[INFO] building sharded_mutex-2.1.0 against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237-1
[INFO] extracting crate sharded_mutex 2.1.0 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate sharded_mutex 2.1.0
[INFO] finished tweaking crates.io crate sharded_mutex 2.1.0
[INFO] tweaked toml for crates.io crate sharded_mutex 2.1.0 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate sharded_mutex 2.1.0 on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 22 packages to latest compatible versions
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded assoc_threadlocal v0.0.1
[INFO] [stderr]   Downloaded mutants v0.0.3
[INFO] [stderr]   Downloaded assoc_static v1.0.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0881535feafb0aca76071645a824437d1de04aa0aec3f348c6048be34508eb7f
[INFO] running `Command { std: "docker" "start" "-a" "0881535feafb0aca76071645a824437d1de04aa0aec3f348c6048be34508eb7f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0881535feafb0aca76071645a824437d1de04aa0aec3f348c6048be34508eb7f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0881535feafb0aca76071645a824437d1de04aa0aec3f348c6048be34508eb7f", kill_on_drop: false }`
[INFO] [stdout] 0881535feafb0aca76071645a824437d1de04aa0aec3f348c6048be34508eb7f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2f620828aab78e435825992e97d89dfe8500020f632d4149a86a7da0af8528a0
[INFO] running `Command { std: "docker" "start" "-a" "2f620828aab78e435825992e97d89dfe8500020f632d4149a86a7da0af8528a0", kill_on_drop: false }`
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling assoc_static v1.0.0
[INFO] [stderr]    Compiling assoc_threadlocal v0.0.1
[INFO] [stderr]    Compiling parking_lot v0.12.4
[INFO] [stderr]    Compiling sharded_mutex v2.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:247:17
[INFO] [stdout]     |
[INFO] [stdout] 247 |     pub fn lock(&self) -> ShardedMutexGuard<T, TAG> {
[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] 247 |     pub fn lock(&self) -> ShardedMutexGuard<'_, T, TAG> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:257:21
[INFO] [stdout]     |
[INFO] [stdout] 257 |     pub fn try_lock(&self) -> Option<ShardedMutexGuard<T, TAG>> {
[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] 257 |     pub fn try_lock(&self) -> Option<ShardedMutexGuard<'_, T, TAG>> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:265:25
[INFO] [stdout]     |
[INFO] [stdout] 265 |     pub fn try_lock_for(&self, timeout: Duration) -> Option<ShardedMutexGuard<T, TAG>> {
[INFO] [stdout]     |                         ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden 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] 265 |     pub fn try_lock_for(&self, timeout: Duration) -> Option<ShardedMutexGuard<'_, T, TAG>> {
[INFO] [stdout]     |                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:280:49
[INFO] [stdout]     |
[INFO] [stdout] 280 |     pub fn multi_lock<const N: usize>(objects: [&Self; N]) -> [ShardedMutexGuard<T, TAG>; N] {
[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] 280 |     pub fn multi_lock<const N: usize>(objects: [&Self; N]) -> [ShardedMutexGuard<'_, T, TAG>; N] {
[INFO] [stdout]     |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:318:19
[INFO] [stdout]     |
[INFO] [stdout] 318 |         objects: [&Self; N],
[INFO] [stdout]     |                   ^^^^^ the lifetime is elided here
[INFO] [stdout] 319 |     ) -> Option<[ShardedMutexGuard<T, TAG>; N]> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden 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] 319 |     ) -> Option<[ShardedMutexGuard<'_, T, TAG>; N]> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:482:17
[INFO] [stdout]     |
[INFO] [stdout] 480 |         new: &'a ShardedMutex<U, UTAG>,
[INFO] [stdout]     |               -- the lifetime is named here
[INFO] [stdout] 481 |         timeout: Duration,
[INFO] [stdout] 482 |     ) -> Result<ShardedMutexGuard<U, UTAG>, ShardedMutexGuard<T, TAG>>
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 482 |     ) -> Result<ShardedMutexGuard<'a, U, UTAG>, ShardedMutexGuard<'a, T, TAG>>
[INFO] [stdout]     |                                   +++                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.66s
[INFO] running `Command { std: "docker" "inspect" "2f620828aab78e435825992e97d89dfe8500020f632d4149a86a7da0af8528a0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2f620828aab78e435825992e97d89dfe8500020f632d4149a86a7da0af8528a0", kill_on_drop: false }`
[INFO] [stdout] 2f620828aab78e435825992e97d89dfe8500020f632d4149a86a7da0af8528a0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e388677e196402fc5b5dd96c986ad32fb539d818f8dd2f1e950c309a0c1485e3
[INFO] running `Command { std: "docker" "start" "-a" "e388677e196402fc5b5dd96c986ad32fb539d818f8dd2f1e950c309a0c1485e3", kill_on_drop: false }`
[INFO] [stderr]    Compiling mutants v0.0.3
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:247:17
[INFO] [stdout]     |
[INFO] [stdout] 247 |     pub fn lock(&self) -> ShardedMutexGuard<T, TAG> {
[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] 247 |     pub fn lock(&self) -> ShardedMutexGuard<'_, T, TAG> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:257:21
[INFO] [stdout]     |
[INFO] [stdout] 257 |     pub fn try_lock(&self) -> Option<ShardedMutexGuard<T, TAG>> {
[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] 257 |     pub fn try_lock(&self) -> Option<ShardedMutexGuard<'_, T, TAG>> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:265:25
[INFO] [stdout]     |
[INFO] [stdout] 265 |     pub fn try_lock_for(&self, timeout: Duration) -> Option<ShardedMutexGuard<T, TAG>> {
[INFO] [stdout]     |                         ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden 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] 265 |     pub fn try_lock_for(&self, timeout: Duration) -> Option<ShardedMutexGuard<'_, T, TAG>> {
[INFO] [stdout]     |                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:280:49
[INFO] [stdout]     |
[INFO] [stdout] 280 |     pub fn multi_lock<const N: usize>(objects: [&Self; N]) -> [ShardedMutexGuard<T, TAG>; N] {
[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] 280 |     pub fn multi_lock<const N: usize>(objects: [&Self; N]) -> [ShardedMutexGuard<'_, T, TAG>; N] {
[INFO] [stdout]     |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:318:19
[INFO] [stdout]     |
[INFO] [stdout] 318 |         objects: [&Self; N],
[INFO] [stdout]     |                   ^^^^^ the lifetime is elided here
[INFO] [stdout] 319 |     ) -> Option<[ShardedMutexGuard<T, TAG>; N]> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden 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] 319 |     ) -> Option<[ShardedMutexGuard<'_, T, TAG>; N]> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:482:17
[INFO] [stdout]     |
[INFO] [stdout] 480 |         new: &'a ShardedMutex<U, UTAG>,
[INFO] [stdout]     |               -- the lifetime is named here
[INFO] [stdout] 481 |         timeout: Duration,
[INFO] [stdout] 482 |     ) -> Result<ShardedMutexGuard<U, UTAG>, ShardedMutexGuard<T, TAG>>
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 482 |     ) -> Result<ShardedMutexGuard<'a, U, UTAG>, ShardedMutexGuard<'a, T, TAG>>
[INFO] [stdout]     |                                   +++                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling sharded_mutex v2.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:247:17
[INFO] [stdout]     |
[INFO] [stdout] 247 |     pub fn lock(&self) -> ShardedMutexGuard<T, TAG> {
[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] 247 |     pub fn lock(&self) -> ShardedMutexGuard<'_, T, TAG> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:257:21
[INFO] [stdout]     |
[INFO] [stdout] 257 |     pub fn try_lock(&self) -> Option<ShardedMutexGuard<T, TAG>> {
[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] 257 |     pub fn try_lock(&self) -> Option<ShardedMutexGuard<'_, T, TAG>> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:265:25
[INFO] [stdout]     |
[INFO] [stdout] 265 |     pub fn try_lock_for(&self, timeout: Duration) -> Option<ShardedMutexGuard<T, TAG>> {
[INFO] [stdout]     |                         ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden 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] 265 |     pub fn try_lock_for(&self, timeout: Duration) -> Option<ShardedMutexGuard<'_, T, TAG>> {
[INFO] [stdout]     |                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:280:49
[INFO] [stdout]     |
[INFO] [stdout] 280 |     pub fn multi_lock<const N: usize>(objects: [&Self; N]) -> [ShardedMutexGuard<T, TAG>; N] {
[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] 280 |     pub fn multi_lock<const N: usize>(objects: [&Self; N]) -> [ShardedMutexGuard<'_, T, TAG>; N] {
[INFO] [stdout]     |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:318:19
[INFO] [stdout]     |
[INFO] [stdout] 318 |         objects: [&Self; N],
[INFO] [stdout]     |                   ^^^^^ the lifetime is elided here
[INFO] [stdout] 319 |     ) -> Option<[ShardedMutexGuard<T, TAG>; N]> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden 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] 319 |     ) -> Option<[ShardedMutexGuard<'_, T, TAG>; N]> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:482:17
[INFO] [stdout]     |
[INFO] [stdout] 480 |         new: &'a ShardedMutex<U, UTAG>,
[INFO] [stdout]     |               -- the lifetime is named here
[INFO] [stdout] 481 |         timeout: Duration,
[INFO] [stdout] 482 |     ) -> Result<ShardedMutexGuard<U, UTAG>, ShardedMutexGuard<T, TAG>>
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 482 |     ) -> Result<ShardedMutexGuard<'a, U, UTAG>, ShardedMutexGuard<'a, T, TAG>>
[INFO] [stdout]     |                                   +++                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for the crate
[INFO] [stdout]   --> tests/integration.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout]  1 | / use sharded_mutex::*;
[INFO] [stdout]  2 | |
[INFO] [stdout]  3 | | #[test]
[INFO] [stdout]  4 | | fn simple_i32() {
[INFO] [stdout] ...  |
[INFO] [stdout] 80 | |     assert_eq!(y.lock().0, 234);
[INFO] [stdout] 81 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W missing-docs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.04s
[INFO] running `Command { std: "docker" "inspect" "e388677e196402fc5b5dd96c986ad32fb539d818f8dd2f1e950c309a0c1485e3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e388677e196402fc5b5dd96c986ad32fb539d818f8dd2f1e950c309a0c1485e3", kill_on_drop: false }`
[INFO] [stdout] e388677e196402fc5b5dd96c986ad32fb539d818f8dd2f1e950c309a0c1485e3
