[INFO] fetching crate serde_json_merge 0.0.6...
[INFO] testing serde_json_merge-0.0.6 against beta-2026-04-21 for beta-1.96-2
[INFO] extracting crate serde_json_merge 0.0.6 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate serde_json_merge 0.0.6
[INFO] finished tweaking crates.io crate serde_json_merge 0.0.6
[INFO] tweaked toml for crates.io crate serde_json_merge 0.0.6 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate serde_json_merge 0.0.6 on toolchain beta-2026-04-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate serde_json_merge 0.0.6 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 891c23f6ed1524bbe6f8e948268096441e2dad9d77002ab3fd86653d50ddd311
[INFO] running `Command { std: "docker" "start" "-a" "891c23f6ed1524bbe6f8e948268096441e2dad9d77002ab3fd86653d50ddd311", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "891c23f6ed1524bbe6f8e948268096441e2dad9d77002ab3fd86653d50ddd311", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "891c23f6ed1524bbe6f8e948268096441e2dad9d77002ab3fd86653d50ddd311", kill_on_drop: false }`
[INFO] [stdout] 891c23f6ed1524bbe6f8e948268096441e2dad9d77002ab3fd86653d50ddd311
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=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" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d1b4583dc9456c8fa34fa0c9e0fce9b0174e04d6807fcedcf515bd42c71b41b6
[INFO] running `Command { std: "docker" "start" "-a" "d1b4583dc9456c8fa34fa0c9e0fce9b0174e04d6807fcedcf515bd42c71b41b6", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling hashbrown v0.15.3
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling indexmap v2.9.0
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling fancy-regex v0.14.0
[INFO] [stderr]    Compiling serde_json_merge v0.0.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> src/merge/union.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, and traits
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> src/merge/union.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, and traits
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn kind(&self) -> Kind;
[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] 18 |     fn kind(&self) -> Kind<'_>;
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn kind(&self) -> Kind {
[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] 74 |     fn kind(&self) -> Kind<'_> {
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn kind(&self) -> Kind {
[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] 81 |     fn kind(&self) -> Kind<'_> {
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn kind(&self) -> Kind {
[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] 88 |     fn kind(&self) -> Kind<'_> {
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn kind(&self) -> Kind {
[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] 99 |     fn kind(&self) -> Kind<'_> {
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/index.rs:226:17
[INFO] [stdout]     |
[INFO] [stdout] 226 |     pub fn iter(&self) -> std::slice::Iter<IndexRef> {
[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] 226 |     pub fn iter(&self) -> std::slice::Iter<'_, IndexRef> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:117:16
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn iter<T>(&self) -> KeyValueIter<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] 117 |     fn iter<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:121:18
[INFO] [stdout]     |
[INFO] [stdout] 121 |     fn mutate<T>(&mut self) -> KeyValueMutator<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] 121 |     fn mutate<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:125:26
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn iter_recursive<T>(&self) -> KeyValueIter<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] 125 |     fn iter_recursive<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:129:28
[INFO] [stdout]     |
[INFO] [stdout] 129 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<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] 129 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:135:16
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn iter<T>(&self) -> KeyValueIter<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] 135 |     fn iter<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:148:18
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn mutate<T>(&mut self) -> KeyValueMutator<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] 148 |     fn mutate<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:161:26
[INFO] [stdout]     |
[INFO] [stdout] 161 |     fn iter_recursive<T>(&self) -> KeyValueIter<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] 161 |     fn iter_recursive<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<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] 174 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.45s
[INFO] running `Command { std: "docker" "inspect" "d1b4583dc9456c8fa34fa0c9e0fce9b0174e04d6807fcedcf515bd42c71b41b6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d1b4583dc9456c8fa34fa0c9e0fce9b0174e04d6807fcedcf515bd42c71b41b6", kill_on_drop: false }`
[INFO] [stdout] d1b4583dc9456c8fa34fa0c9e0fce9b0174e04d6807fcedcf515bd42c71b41b6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=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" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5a0320da19e3646b2f80bb04b710703efc62ed88108b3e9efc25507f6b795f61
[INFO] running `Command { std: "docker" "start" "-a" "5a0320da19e3646b2f80bb04b710703efc62ed88108b3e9efc25507f6b795f61", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling half v2.6.0
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling clap_builder v4.5.38
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling yansi v1.0.1
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling diff v0.1.13
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling pretty_assertions v1.4.1
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling clap v4.5.38
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling serde_json_merge v0.0.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> src/merge/union.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, and traits
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> src/merge/union.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, and traits
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn kind(&self) -> Kind;
[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] 18 |     fn kind(&self) -> Kind<'_>;
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn kind(&self) -> Kind {
[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] 74 |     fn kind(&self) -> Kind<'_> {
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn kind(&self) -> Kind {
[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] 81 |     fn kind(&self) -> Kind<'_> {
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn kind(&self) -> Kind {
[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] 88 |     fn kind(&self) -> Kind<'_> {
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn kind(&self) -> Kind {
[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] 99 |     fn kind(&self) -> Kind<'_> {
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/index.rs:226:17
[INFO] [stdout]     |
[INFO] [stdout] 226 |     pub fn iter(&self) -> std::slice::Iter<IndexRef> {
[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] 226 |     pub fn iter(&self) -> std::slice::Iter<'_, IndexRef> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:117:16
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn iter<T>(&self) -> KeyValueIter<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] 117 |     fn iter<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:121:18
[INFO] [stdout]     |
[INFO] [stdout] 121 |     fn mutate<T>(&mut self) -> KeyValueMutator<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] 121 |     fn mutate<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:125:26
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn iter_recursive<T>(&self) -> KeyValueIter<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] 125 |     fn iter_recursive<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:129:28
[INFO] [stdout]     |
[INFO] [stdout] 129 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<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] 129 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:135:16
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn iter<T>(&self) -> KeyValueIter<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] 135 |     fn iter<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:148:18
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn mutate<T>(&mut self) -> KeyValueMutator<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] 148 |     fn mutate<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:161:26
[INFO] [stdout]     |
[INFO] [stdout] 161 |     fn iter_recursive<T>(&self) -> KeyValueIter<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] 161 |     fn iter_recursive<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<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] 174 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> src/merge/union.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, and traits
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> src/merge/union.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, and traits
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn kind(&self) -> Kind;
[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] 18 |     fn kind(&self) -> Kind<'_>;
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn kind(&self) -> Kind {
[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] 74 |     fn kind(&self) -> Kind<'_> {
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn kind(&self) -> Kind {
[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] 81 |     fn kind(&self) -> Kind<'_> {
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn kind(&self) -> Kind {
[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] 88 |     fn kind(&self) -> Kind<'_> {
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/index.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn kind(&self) -> Kind {
[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] 99 |     fn kind(&self) -> Kind<'_> {
[INFO] [stdout]    |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/index.rs:226:17
[INFO] [stdout]     |
[INFO] [stdout] 226 |     pub fn iter(&self) -> std::slice::Iter<IndexRef> {
[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] 226 |     pub fn iter(&self) -> std::slice::Iter<'_, IndexRef> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:117:16
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn iter<T>(&self) -> KeyValueIter<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] 117 |     fn iter<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:121:18
[INFO] [stdout]     |
[INFO] [stdout] 121 |     fn mutate<T>(&mut self) -> KeyValueMutator<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] 121 |     fn mutate<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:125:26
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn iter_recursive<T>(&self) -> KeyValueIter<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] 125 |     fn iter_recursive<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:129:28
[INFO] [stdout]     |
[INFO] [stdout] 129 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<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] 129 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:135:16
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn iter<T>(&self) -> KeyValueIter<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] 135 |     fn iter<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:148:18
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn mutate<T>(&mut self) -> KeyValueMutator<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] 148 |     fn mutate<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:161:26
[INFO] [stdout]     |
[INFO] [stdout] 161 |     fn iter_recursive<T>(&self) -> KeyValueIter<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] 161 |     fn iter_recursive<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/iter/mod.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<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] 174 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 23.29s
[INFO] running `Command { std: "docker" "inspect" "5a0320da19e3646b2f80bb04b710703efc62ed88108b3e9efc25507f6b795f61", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5a0320da19e3646b2f80bb04b710703efc62ed88108b3e9efc25507f6b795f61", kill_on_drop: false }`
[INFO] [stdout] 5a0320da19e3646b2f80bb04b710703efc62ed88108b3e9efc25507f6b795f61
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=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" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 310dd13a9ef0c82097d58baa9038541c8aa6a0ffe1b740a5a8d8e242e107a2dc
[INFO] running `Command { std: "docker" "start" "-a" "310dd13a9ef0c82097d58baa9038541c8aa6a0ffe1b740a5a8d8e242e107a2dc", kill_on_drop: false }`
[INFO] [stderr] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stderr]   --> src/merge/union.rs:52:5
[INFO] [stderr]    |
[INFO] [stderr] 52 |     #[must_use]
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, and traits
[INFO] [stderr]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stderr]   --> src/merge/union.rs:62:5
[INFO] [stderr]    |
[INFO] [stderr] 62 |     #[must_use]
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, and traits
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/index.rs:18:13
[INFO] [stderr]    |
[INFO] [stderr] 18 |     fn kind(&self) -> Kind;
[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] 18 |     fn kind(&self) -> Kind<'_>;
[INFO] [stderr]    |                           ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/index.rs:74:13
[INFO] [stderr]    |
[INFO] [stderr] 74 |     fn kind(&self) -> Kind {
[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] 74 |     fn kind(&self) -> Kind<'_> {
[INFO] [stderr]    |                           ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/index.rs:81:13
[INFO] [stderr]    |
[INFO] [stderr] 81 |     fn kind(&self) -> Kind {
[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] 81 |     fn kind(&self) -> Kind<'_> {
[INFO] [stderr]    |                           ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/index.rs:88:13
[INFO] [stderr]    |
[INFO] [stderr] 88 |     fn kind(&self) -> Kind {
[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] 88 |     fn kind(&self) -> Kind<'_> {
[INFO] [stderr]    |                           ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/index.rs:99:13
[INFO] [stderr]    |
[INFO] [stderr] 99 |     fn kind(&self) -> Kind {
[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] 99 |     fn kind(&self) -> Kind<'_> {
[INFO] [stderr]    |                           ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/index.rs:226:17
[INFO] [stderr]     |
[INFO] [stderr] 226 |     pub fn iter(&self) -> std::slice::Iter<IndexRef> {
[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] 226 |     pub fn iter(&self) -> std::slice::Iter<'_, IndexRef> {
[INFO] [stderr]     |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/iter/mod.rs:117:16
[INFO] [stderr]     |
[INFO] [stderr] 117 |     fn iter<T>(&self) -> KeyValueIter<T>
[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] 117 |     fn iter<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stderr]     |                                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/iter/mod.rs:121:18
[INFO] [stderr]     |
[INFO] [stderr] 121 |     fn mutate<T>(&mut self) -> KeyValueMutator<T>
[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] 121 |     fn mutate<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stderr]     |                                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/iter/mod.rs:125:26
[INFO] [stderr]     |
[INFO] [stderr] 125 |     fn iter_recursive<T>(&self) -> KeyValueIter<T>
[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] 125 |     fn iter_recursive<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stderr]     |                                                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/iter/mod.rs:129:28
[INFO] [stderr]     |
[INFO] [stderr] 129 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<T>
[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] 129 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stderr]     |                                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/iter/mod.rs:135:16
[INFO] [stderr]     |
[INFO] [stderr] 135 |     fn iter<T>(&self) -> KeyValueIter<T>
[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] 135 |     fn iter<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stderr]     |                                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/iter/mod.rs:148:18
[INFO] [stderr]     |
[INFO] [stderr] 148 |     fn mutate<T>(&mut self) -> KeyValueMutator<T>
[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] 148 |     fn mutate<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stderr]     |                                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/iter/mod.rs:161:26
[INFO] [stderr]     |
[INFO] [stderr] 161 |     fn iter_recursive<T>(&self) -> KeyValueIter<T>
[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] 161 |     fn iter_recursive<T>(&self) -> KeyValueIter<'_, T>
[INFO] [stderr]     |                                                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/iter/mod.rs:174:28
[INFO] [stderr]     |
[INFO] [stderr] 174 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<T>
[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] 174 |     fn mutate_recursive<T>(&mut self) -> KeyValueMutator<'_, T>
[INFO] [stderr]     |                                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: `serde_json_merge` (lib) generated 16 warnings (run `cargo fix --lib -p serde_json_merge` to apply 16 suggestions)
[INFO] [stderr] warning: `serde_json_merge` (lib test) generated 16 warnings (16 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.16s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/serde_json_merge-4f2c7167505f9878)
[INFO] [stdout] 
[INFO] [stdout] running 35 tests
[INFO] [stdout] test index::test::test_index_mut_value_by_path ... ok
[INFO] [stdout] test index::test::test_get_index_arguments ... ok
[INFO] [stdout] test index::test::test_index_partial_eq ... ok
[INFO] [stdout] test index::test::test_index_path_indexing ... ok
[INFO] [stdout] test index::test::test_index_path_ord ... ok
[INFO] [stdout] test index::test::test_complex_json_get_index_mut ... ok
[INFO] [stdout] test index::test::test_index_partial_ord ... ok
[INFO] [stdout] test index::test::test_get_path_iter_arguments ... ok
[INFO] [stdout] test index::test::test_index_path_slicing ... ok
[INFO] [stdout] test index::test::test_index_path_partial_eq ... ok
[INFO] [stdout] test index::test::test_index_try_as_array_index ... ok
[INFO] [stdout] test index::test::test_index_try_as_object_key ... ok
[INFO] [stdout] test index::test::test_is_integer ... ok
[INFO] [stdout] test index::test::test_value_str_string_equality ... ok
[INFO] [stdout] test index::test::test_index_value_by_path ... ok
[INFO] [stdout] test index::test::test_split_path_regex ... ok
[INFO] [stdout] test iter::dfs::test::non_terminal_value_array_iter_recursive_dfs_limit ... ok
[INFO] [stdout] test iter::dfs::test::non_terminal_value_array_iter_recursive_dfs_order ... ok
[INFO] [stdout] test index::test::test_index_path_to_string ... ok
[INFO] [stdout] test index::test::test_index_to_string ... ok
[INFO] [stdout] test iter::dfs::test::nonterminal_value_object_iter_mut_recursive_dfs_add_entries ... ok
[INFO] [stdout] test iter::dfs::test::nonterminal_value_object_iter_mut_recursive_dfs_order ... ok
[INFO] [stdout] test iter::dfs::test::nonterminal_value_object_iter_mut_recursive_dfs_remove_entries ... ok
[INFO] [stdout] test index::test::test_complex_json_get_index ... ok
[INFO] [stdout] test iter::dfs::test::nonterminal_value_object_iter_recursive_dfs_order ... ok
[INFO] [stdout] test iter::dfs::test::terminal_value_iter_recursive_dfs ... ok
[INFO] [stdout] test iter::test::nonterminal_value_iter ... ok
[INFO] [stdout] test iter::test::value_iter_recursive_dfs ... ok
[INFO] [stdout] test merge::test::merge_array_object ... ok
[INFO] [stdout] test merge::test::merge_array_string ... ok
[INFO] [stdout] test merge::test::merge_object ... ok
[INFO] [stdout] test merge::test::merge_string ... ok
[INFO] [stdout] test merge::union::test::union_recursive_complex ... ok
[INFO] [stdout] test index::test::test_index_kind ... ok
[INFO] [stdout] test merge::union::test::union_all_custom_func ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 35 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests serde_json_merge
[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" "310dd13a9ef0c82097d58baa9038541c8aa6a0ffe1b740a5a8d8e242e107a2dc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "310dd13a9ef0c82097d58baa9038541c8aa6a0ffe1b740a5a8d8e242e107a2dc", kill_on_drop: false }`
[INFO] [stdout] 310dd13a9ef0c82097d58baa9038541c8aa6a0ffe1b740a5a8d8e242e107a2dc
