[INFO] fetching crate spacebattleship 0.1.0...
[INFO] testing spacebattleship-0.1.0 against 1.95.0 for beta-1.96-2
[INFO] extracting crate spacebattleship 0.1.0 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate spacebattleship 0.1.0
[INFO] finished tweaking crates.io crate spacebattleship 0.1.0
[INFO] tweaked toml for crates.io crate spacebattleship 0.1.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate spacebattleship 0.1.0 on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "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" "+1.95.0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 21 packages to latest compatible versions
[INFO] [stderr]       Adding enumflags2 v0.6.4 (available: v0.7.12)
[INFO] [stderr]       Adding rand v0.7.3 (available: v0.10.1)
[INFO] [stderr]       Adding thiserror v1.0.69 (available: v2.0.18)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded enumflags2_derive v0.6.4
[INFO] [stderr]   Downloaded enumflags2 v0.6.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6391af3237a8c1c5313811e38f7382834d44391e61d228e88386a21cc09de851
[INFO] running `Command { std: "docker" "start" "-a" "6391af3237a8c1c5313811e38f7382834d44391e61d228e88386a21cc09de851", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6391af3237a8c1c5313811e38f7382834d44391e61d228e88386a21cc09de851", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6391af3237a8c1c5313811e38f7382834d44391e61d228e88386a21cc09de851", kill_on_drop: false }`
[INFO] [stdout] 6391af3237a8c1c5313811e38f7382834d44391e61d228e88386a21cc09de851
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2a9351785f0d6d010fc953bd06c5e8021404cb34dc1b20dd38556d8dad5012b1
[INFO] running `Command { std: "docker" "start" "-a" "2a9351785f0d6d010fc953bd06c5e8021404cb34dc1b20dd38556d8dad5012b1", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling enumflags2_derive v0.6.4
[INFO] [stderr]    Compiling enumflags2 v0.6.4
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling spacebattleship v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board.rs:174:23
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipRef<I, D>> {
[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] 174 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipRef<'_, I, D>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board.rs:182:32
[INFO] [stdout]     |
[INFO] [stdout] 182 |     pub fn get_ship<Q: ?Sized>(&self, ship: &Q) -> Option<ShipRef<I, D>>
[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] 182 |     pub fn get_ship<Q: ?Sized>(&self, ship: &Q) -> Option<ShipRef<'_, I, D>>
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board.rs:196:22
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub fn get_coord(&self, coord: D::Coordinate) -> Option<CellRef<I, D>> {
[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] 196 |     pub fn get_coord(&self, coord: D::Coordinate) -> Option<CellRef<'_, I, D>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/board/dimensions.rs:50:18
[INFO] [stdout]    |
[INFO] [stdout] 50 |     fn neighbors(&self, coord: Self::Coordinate) -> NeighborIter<Self::NeighborIterState> {
[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] 50 |     fn neighbors(&self, coord: Self::Coordinate) -> NeighborIter<'_, Self::NeighborIterState> {
[INFO] [stdout]    |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:77:17
[INFO] [stdout]     |
[INFO] [stdout]  77 |                 &self,
[INFO] [stdout]     |                 ^^^^^ the lifetime is elided here
[INFO] [stdout]  78 |                 coord: D::Coordinate,
[INFO] [stdout]  79 |             ) -> ProjectIter<D, S::ProjectIterState> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout] ...
[INFO] [stdout] 113 | ship_entry_shared!(ShipEntry);
[INFO] [stdout]     | ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `ship_entry_shared` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout]  79 |             ) -> ProjectIter<'_, D, S::ProjectIterState> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:77:17
[INFO] [stdout]     |
[INFO] [stdout]  77 |                 &self,
[INFO] [stdout]     |                 ^^^^^ the lifetime is elided here
[INFO] [stdout]  78 |                 coord: D::Coordinate,
[INFO] [stdout]  79 |             ) -> ProjectIter<D, S::ProjectIterState> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout] ...
[INFO] [stdout] 114 | ship_entry_shared!(ShipEntryMut);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `ship_entry_shared` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout]  79 |             ) -> ProjectIter<'_, D, S::ProjectIterState> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:245:23
[INFO] [stdout]     |
[INFO] [stdout] 245 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipEntry<I, D, S>> {
[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] 245 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipEntry<'_, I, D, S>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:258:9
[INFO] [stdout]     |
[INFO] [stdout] 258 |         &mut self,
[INFO] [stdout]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 261 |     ) -> Result<ShipEntryMut<I, D, S>, AddShipError<I, S>> {
[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] 261 |     ) -> Result<ShipEntryMut<'_, I, D, S>, AddShipError<I, S>> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:279:21
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn get_ship(&self, id: I) -> Option<ShipEntry<I, D, S>> {
[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] 279 |     pub fn get_ship(&self, id: I) -> Option<ShipEntry<'_, I, D, S>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:287:25
[INFO] [stdout]     |
[INFO] [stdout] 287 |     pub fn get_ship_mut(&mut self, id: I) -> Option<ShipEntryMut<I, D, S>> {
[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] 287 |     pub fn get_ship_mut(&mut self, id: I) -> Option<ShipEntryMut<'_, I, D, S>> {
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/game/simple.rs:407:22
[INFO] [stdout]     |
[INFO] [stdout] 407 |     pub fn get_coord(&self, player: Player, coord: Coordinate) -> Option<CellRef> {
[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] 407 |     pub fn get_coord(&self, player: Player, coord: Coordinate) -> Option<CellRef<'_>> {
[INFO] [stdout]     |                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/game/simple.rs:412:21
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub fn get_ship(&self, player: Player, ship: Ship) -> ShipRef {
[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] 412 |     pub fn get_ship(&self, player: Player, ship: Ship) -> ShipRef<'_> {
[INFO] [stdout]     |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/ships.rs:43:10
[INFO] [stdout]    |
[INFO] [stdout] 40 |         &'a self,
[INFO] [stdout]    |          -- the lifetime is named here
[INFO] [stdout] 41 |         coord: D::Coordinate,
[INFO] [stdout] 42 |         dim: &'a D,
[INFO] [stdout]    |               -- the lifetime is named here
[INFO] [stdout] 43 |     ) -> ProjectIter<D, Self::ProjectIterState> {
[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] 43 |     ) -> ProjectIter<'a, D, Self::ProjectIterState> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.19s
[INFO] running `Command { std: "docker" "inspect" "2a9351785f0d6d010fc953bd06c5e8021404cb34dc1b20dd38556d8dad5012b1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2a9351785f0d6d010fc953bd06c5e8021404cb34dc1b20dd38556d8dad5012b1", kill_on_drop: false }`
[INFO] [stdout] 2a9351785f0d6d010fc953bd06c5e8021404cb34dc1b20dd38556d8dad5012b1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c9ea6c6da8f1f6d7b03883ce9bf48145acb7825e87ef58bf2083cbaa6d3c1ba2
[INFO] running `Command { std: "docker" "start" "-a" "c9ea6c6da8f1f6d7b03883ce9bf48145acb7825e87ef58bf2083cbaa6d3c1ba2", kill_on_drop: false }`
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board.rs:174:23
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipRef<I, D>> {
[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] 174 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipRef<'_, I, D>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling spacebattleship v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board.rs:182:32
[INFO] [stdout]     |
[INFO] [stdout] 182 |     pub fn get_ship<Q: ?Sized>(&self, ship: &Q) -> Option<ShipRef<I, D>>
[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] 182 |     pub fn get_ship<Q: ?Sized>(&self, ship: &Q) -> Option<ShipRef<'_, I, D>>
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board.rs:196:22
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub fn get_coord(&self, coord: D::Coordinate) -> Option<CellRef<I, D>> {
[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] 196 |     pub fn get_coord(&self, coord: D::Coordinate) -> Option<CellRef<'_, I, D>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/board/dimensions.rs:50:18
[INFO] [stdout]    |
[INFO] [stdout] 50 |     fn neighbors(&self, coord: Self::Coordinate) -> NeighborIter<Self::NeighborIterState> {
[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] 50 |     fn neighbors(&self, coord: Self::Coordinate) -> NeighborIter<'_, Self::NeighborIterState> {
[INFO] [stdout]    |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:77:17
[INFO] [stdout]     |
[INFO] [stdout]  77 |                 &self,
[INFO] [stdout]     |                 ^^^^^ the lifetime is elided here
[INFO] [stdout]  78 |                 coord: D::Coordinate,
[INFO] [stdout]  79 |             ) -> ProjectIter<D, S::ProjectIterState> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout] ...
[INFO] [stdout] 113 | ship_entry_shared!(ShipEntry);
[INFO] [stdout]     | ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `ship_entry_shared` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout]  79 |             ) -> ProjectIter<'_, D, S::ProjectIterState> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:77:17
[INFO] [stdout]     |
[INFO] [stdout]  77 |                 &self,
[INFO] [stdout]     |                 ^^^^^ the lifetime is elided here
[INFO] [stdout]  78 |                 coord: D::Coordinate,
[INFO] [stdout]  79 |             ) -> ProjectIter<D, S::ProjectIterState> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout] ...
[INFO] [stdout] 114 | ship_entry_shared!(ShipEntryMut);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `ship_entry_shared` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout]  79 |             ) -> ProjectIter<'_, D, S::ProjectIterState> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:245:23
[INFO] [stdout]     |
[INFO] [stdout] 245 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipEntry<I, D, S>> {
[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] 245 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipEntry<'_, I, D, S>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:258:9
[INFO] [stdout]     |
[INFO] [stdout] 258 |         &mut self,
[INFO] [stdout]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 261 |     ) -> Result<ShipEntryMut<I, D, S>, AddShipError<I, S>> {
[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] 261 |     ) -> Result<ShipEntryMut<'_, I, D, S>, AddShipError<I, S>> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:279:21
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn get_ship(&self, id: I) -> Option<ShipEntry<I, D, S>> {
[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] 279 |     pub fn get_ship(&self, id: I) -> Option<ShipEntry<'_, I, D, S>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:287:25
[INFO] [stdout]     |
[INFO] [stdout] 287 |     pub fn get_ship_mut(&mut self, id: I) -> Option<ShipEntryMut<I, D, S>> {
[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] 287 |     pub fn get_ship_mut(&mut self, id: I) -> Option<ShipEntryMut<'_, I, D, S>> {
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/game/simple.rs:407:22
[INFO] [stdout]     |
[INFO] [stdout] 407 |     pub fn get_coord(&self, player: Player, coord: Coordinate) -> Option<CellRef> {
[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] 407 |     pub fn get_coord(&self, player: Player, coord: Coordinate) -> Option<CellRef<'_>> {
[INFO] [stdout]     |                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/game/simple.rs:412:21
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub fn get_ship(&self, player: Player, ship: Ship) -> ShipRef {
[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] 412 |     pub fn get_ship(&self, player: Player, ship: Ship) -> ShipRef<'_> {
[INFO] [stdout]     |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/ships.rs:43:10
[INFO] [stdout]    |
[INFO] [stdout] 40 |         &'a self,
[INFO] [stdout]    |          -- the lifetime is named here
[INFO] [stdout] 41 |         coord: D::Coordinate,
[INFO] [stdout] 42 |         dim: &'a D,
[INFO] [stdout]    |               -- the lifetime is named here
[INFO] [stdout] 43 |     ) -> ProjectIter<D, Self::ProjectIterState> {
[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] 43 |     ) -> ProjectIter<'a, D, Self::ProjectIterState> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board.rs:174:23
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipRef<I, D>> {
[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] 174 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipRef<'_, I, D>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board.rs:182:32
[INFO] [stdout]     |
[INFO] [stdout] 182 |     pub fn get_ship<Q: ?Sized>(&self, ship: &Q) -> Option<ShipRef<I, D>>
[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] 182 |     pub fn get_ship<Q: ?Sized>(&self, ship: &Q) -> Option<ShipRef<'_, I, D>>
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board.rs:196:22
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub fn get_coord(&self, coord: D::Coordinate) -> Option<CellRef<I, D>> {
[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] 196 |     pub fn get_coord(&self, coord: D::Coordinate) -> Option<CellRef<'_, I, D>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/board/dimensions.rs:50:18
[INFO] [stdout]    |
[INFO] [stdout] 50 |     fn neighbors(&self, coord: Self::Coordinate) -> NeighborIter<Self::NeighborIterState> {
[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] 50 |     fn neighbors(&self, coord: Self::Coordinate) -> NeighborIter<'_, Self::NeighborIterState> {
[INFO] [stdout]    |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:77:17
[INFO] [stdout]     |
[INFO] [stdout]  77 |                 &self,
[INFO] [stdout]     |                 ^^^^^ the lifetime is elided here
[INFO] [stdout]  78 |                 coord: D::Coordinate,
[INFO] [stdout]  79 |             ) -> ProjectIter<D, S::ProjectIterState> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout] ...
[INFO] [stdout] 113 | ship_entry_shared!(ShipEntry);
[INFO] [stdout]     | ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `ship_entry_shared` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout]  79 |             ) -> ProjectIter<'_, D, S::ProjectIterState> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:77:17
[INFO] [stdout]     |
[INFO] [stdout]  77 |                 &self,
[INFO] [stdout]     |                 ^^^^^ the lifetime is elided here
[INFO] [stdout]  78 |                 coord: D::Coordinate,
[INFO] [stdout]  79 |             ) -> ProjectIter<D, S::ProjectIterState> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout] ...
[INFO] [stdout] 114 | ship_entry_shared!(ShipEntryMut);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `ship_entry_shared` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout]  79 |             ) -> ProjectIter<'_, D, S::ProjectIterState> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:245:23
[INFO] [stdout]     |
[INFO] [stdout] 245 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipEntry<I, D, S>> {
[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] 245 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipEntry<'_, I, D, S>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:258:9
[INFO] [stdout]     |
[INFO] [stdout] 258 |         &mut self,
[INFO] [stdout]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 261 |     ) -> Result<ShipEntryMut<I, D, S>, AddShipError<I, S>> {
[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] 261 |     ) -> Result<ShipEntryMut<'_, I, D, S>, AddShipError<I, S>> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:279:21
[INFO] [stdout]     |
[INFO] [stdout] 279 |     pub fn get_ship(&self, id: I) -> Option<ShipEntry<I, D, S>> {
[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] 279 |     pub fn get_ship(&self, id: I) -> Option<ShipEntry<'_, I, D, S>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/board/setup.rs:287:25
[INFO] [stdout]     |
[INFO] [stdout] 287 |     pub fn get_ship_mut(&mut self, id: I) -> Option<ShipEntryMut<I, D, S>> {
[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] 287 |     pub fn get_ship_mut(&mut self, id: I) -> Option<ShipEntryMut<'_, I, D, S>> {
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/game/simple.rs:407:22
[INFO] [stdout]     |
[INFO] [stdout] 407 |     pub fn get_coord(&self, player: Player, coord: Coordinate) -> Option<CellRef> {
[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] 407 |     pub fn get_coord(&self, player: Player, coord: Coordinate) -> Option<CellRef<'_>> {
[INFO] [stdout]     |                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/game/simple.rs:412:21
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub fn get_ship(&self, player: Player, ship: Ship) -> ShipRef {
[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] 412 |     pub fn get_ship(&self, player: Player, ship: Ship) -> ShipRef<'_> {
[INFO] [stdout]     |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/ships.rs:43:10
[INFO] [stdout]    |
[INFO] [stdout] 40 |         &'a self,
[INFO] [stdout]    |          -- the lifetime is named here
[INFO] [stdout] 41 |         coord: D::Coordinate,
[INFO] [stdout] 42 |         dim: &'a D,
[INFO] [stdout]    |               -- the lifetime is named here
[INFO] [stdout] 43 |     ) -> ProjectIter<D, Self::ProjectIterState> {
[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] 43 |     ) -> ProjectIter<'a, D, Self::ProjectIterState> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.61s
[INFO] running `Command { std: "docker" "inspect" "c9ea6c6da8f1f6d7b03883ce9bf48145acb7825e87ef58bf2083cbaa6d3c1ba2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c9ea6c6da8f1f6d7b03883ce9bf48145acb7825e87ef58bf2083cbaa6d3c1ba2", kill_on_drop: false }`
[INFO] [stdout] c9ea6c6da8f1f6d7b03883ce9bf48145acb7825e87ef58bf2083cbaa6d3c1ba2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 0457a6e4ed54c7f832856feb75693f6ce83a83fc3a6dbbf6e4d36e56527c16f2
[INFO] running `Command { std: "docker" "start" "-a" "0457a6e4ed54c7f832856feb75693f6ce83a83fc3a6dbbf6e4d36e56527c16f2", kill_on_drop: false }`
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/board.rs:174:23
[INFO] [stderr]     |
[INFO] [stderr] 174 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipRef<I, D>> {
[INFO] [stderr]     |                       ^^^^^                          ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 174 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipRef<'_, I, D>> {
[INFO] [stderr]     |                                                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/board.rs:182:32
[INFO] [stderr]     |
[INFO] [stderr] 182 |     pub fn get_ship<Q: ?Sized>(&self, ship: &Q) -> Option<ShipRef<I, D>>
[INFO] [stderr]     |                                ^^^^^                      ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                |
[INFO] [stderr]     |                                the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 182 |     pub fn get_ship<Q: ?Sized>(&self, ship: &Q) -> Option<ShipRef<'_, I, D>>
[INFO] [stderr]     |                                                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/board.rs:196:22
[INFO] [stderr]     |
[INFO] [stderr] 196 |     pub fn get_coord(&self, coord: D::Coordinate) -> Option<CellRef<I, D>> {
[INFO] [stderr]     |                      ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 196 |     pub fn get_coord(&self, coord: D::Coordinate) -> Option<CellRef<'_, I, D>> {
[INFO] [stderr]     |                                                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/board/dimensions.rs:50:18
[INFO] [stderr]    |
[INFO] [stderr] 50 |     fn neighbors(&self, coord: Self::Coordinate) -> NeighborIter<Self::NeighborIterState> {
[INFO] [stderr]    |                  ^^^^^ the lifetime is elided here  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 50 |     fn neighbors(&self, coord: Self::Coordinate) -> NeighborIter<'_, Self::NeighborIterState> {
[INFO] [stderr]    |                                                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/board/setup.rs:77:17
[INFO] [stderr]     |
[INFO] [stderr]  77 |                 &self,
[INFO] [stderr]     |                 ^^^^^ the lifetime is elided here
[INFO] [stderr]  78 |                 coord: D::Coordinate,
[INFO] [stderr]  79 |             ) -> ProjectIter<D, S::ProjectIterState> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr] ...
[INFO] [stderr] 113 | ship_entry_shared!(ShipEntry);
[INFO] [stderr]     | ----------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: this warning originates in the macro `ship_entry_shared` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr]  79 |             ) -> ProjectIter<'_, D, S::ProjectIterState> {
[INFO] [stderr]     |                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/board/setup.rs:77:17
[INFO] [stderr]     |
[INFO] [stderr]  77 |                 &self,
[INFO] [stderr]     |                 ^^^^^ the lifetime is elided here
[INFO] [stderr]  78 |                 coord: D::Coordinate,
[INFO] [stderr]  79 |             ) -> ProjectIter<D, S::ProjectIterState> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr] ...
[INFO] [stderr] 114 | ship_entry_shared!(ShipEntryMut);
[INFO] [stderr]     | -------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: this warning originates in the macro `ship_entry_shared` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr]  79 |             ) -> ProjectIter<'_, D, S::ProjectIterState> {
[INFO] [stderr]     |                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/board/setup.rs:245:23
[INFO] [stderr]     |
[INFO] [stderr] 245 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipEntry<I, D, S>> {
[INFO] [stderr]     |                       ^^^^^                          ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 245 |     pub fn iter_ships(&self) -> impl Iterator<Item = ShipEntry<'_, I, D, S>> {
[INFO] [stderr]     |                                                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/board/setup.rs:258:9
[INFO] [stderr]     |
[INFO] [stderr] 258 |         &mut self,
[INFO] [stderr]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stderr] ...
[INFO] [stderr] 261 |     ) -> Result<ShipEntryMut<I, D, S>, AddShipError<I, S>> {
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 261 |     ) -> Result<ShipEntryMut<'_, I, D, S>, AddShipError<I, S>> {
[INFO] [stderr]     |                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/board/setup.rs:279:21
[INFO] [stderr]     |
[INFO] [stderr] 279 |     pub fn get_ship(&self, id: I) -> Option<ShipEntry<I, D, S>> {
[INFO] [stderr]     |                     ^^^^^                   ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 279 |     pub fn get_ship(&self, id: I) -> Option<ShipEntry<'_, I, D, S>> {
[INFO] [stderr]     |                                                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/board/setup.rs:287:25
[INFO] [stderr]     |
[INFO] [stderr] 287 |     pub fn get_ship_mut(&mut self, id: I) -> Option<ShipEntryMut<I, D, S>> {
[INFO] [stderr]     |                         ^^^^^^^^^                   ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 287 |     pub fn get_ship_mut(&mut self, id: I) -> Option<ShipEntryMut<'_, I, D, S>> {
[INFO] [stderr]     |                                                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/game/simple.rs:407:22
[INFO] [stderr]     |
[INFO] [stderr] 407 |     pub fn get_coord(&self, player: Player, coord: Coordinate) -> Option<CellRef> {
[INFO] [stderr]     |                      ^^^^^ the lifetime is elided here                   ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 407 |     pub fn get_coord(&self, player: Player, coord: Coordinate) -> Option<CellRef<'_>> {
[INFO] [stderr]     |                                                                                 ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/game/simple.rs:412:21
[INFO] [stderr]     |
[INFO] [stderr] 412 |     pub fn get_ship(&self, player: Player, ship: Ship) -> ShipRef {
[INFO] [stderr]     |                     ^^^^^ the lifetime is elided here     ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 412 |     pub fn get_ship(&self, player: Player, ship: Ship) -> ShipRef<'_> {
[INFO] [stderr]     |                                                                  ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/ships.rs:43:10
[INFO] [stderr]    |
[INFO] [stderr] 40 |         &'a self,
[INFO] [stderr]    |          -- the lifetime is named here
[INFO] [stderr] 41 |         coord: D::Coordinate,
[INFO] [stderr] 42 |         dim: &'a D,
[INFO] [stderr]    |               -- the lifetime is named here
[INFO] [stderr] 43 |     ) -> ProjectIter<D, Self::ProjectIterState> {
[INFO] [stderr]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 43 |     ) -> ProjectIter<'a, D, Self::ProjectIterState> {
[INFO] [stderr]    |                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: `spacebattleship` (lib) generated 13 warnings (run `cargo fix --lib -p spacebattleship` to apply 13 suggestions)
[INFO] [stderr] warning: `spacebattleship` (lib test) generated 13 warnings (13 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/spacebattleship-f0ea2054524776be)
[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] [stderr]    Doc-tests spacebattleship
[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" "0457a6e4ed54c7f832856feb75693f6ce83a83fc3a6dbbf6e4d36e56527c16f2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0457a6e4ed54c7f832856feb75693f6ce83a83fc3a6dbbf6e4d36e56527c16f2", kill_on_drop: false }`
[INFO] [stdout] 0457a6e4ed54c7f832856feb75693f6ce83a83fc3a6dbbf6e4d36e56527c16f2
