[INFO] fetching crate trie-generic 1.1.8...
[INFO] testing trie-generic-1.1.8 against master#ec6f9a5b4413f74386267ef8efc93712c2ce6db6 for pr-155739-1
[INFO] extracting crate trie-generic 1.1.8 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate trie-generic 1.1.8
[INFO] finished tweaking crates.io crate trie-generic 1.1.8
[INFO] tweaked toml for crates.io crate trie-generic 1.1.8 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate trie-generic 1.1.8 on toolchain ec6f9a5b4413f74386267ef8efc93712c2ce6db6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate trie-generic 1.1.8 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" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[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" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 24b20cb0a80dc0547b3aa5c3fec076205af694fabd0b4537b49c009266f653aa
[INFO] running `Command { std: "docker" "start" "-a" "24b20cb0a80dc0547b3aa5c3fec076205af694fabd0b4537b49c009266f653aa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "24b20cb0a80dc0547b3aa5c3fec076205af694fabd0b4537b49c009266f653aa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "24b20cb0a80dc0547b3aa5c3fec076205af694fabd0b4537b49c009266f653aa", kill_on_drop: false }`
[INFO] [stdout] 24b20cb0a80dc0547b3aa5c3fec076205af694fabd0b4537b49c009266f653aa
[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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c3f397b5b0623d965f1b424982caa9492c68b068e6975bed59d975a5a3f36037
[INFO] running `Command { std: "docker" "start" "-a" "c3f397b5b0623d965f1b424982caa9492c68b068e6975bed59d975a5a3f36037", kill_on_drop: false }`
[INFO] [stderr]    Compiling trie-generic v1.1.8 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `LongestPrefFlags` is never constructed
[INFO] [stdout]   --> src/trie.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct LongestPrefFlags {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `LongestPrefResult` is never used
[INFO] [stdout]   --> src/trie.rs:39:6
[INFO] [stdout]    |
[INFO] [stdout] 39 | type LongestPrefResult = Option<(Vec<char>, LongestPrefFlags)>;
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KeyNotFound` is never constructed
[INFO] [stdout]   --> src/trie.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct KeyNotFound;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/trie.rs:82:8
[INFO] [stdout]     |
[INFO] [stdout]  81 | impl<'a, T: Display + Debug> TNode<'a, T> {
[INFO] [stdout]     | ----------------------------------------- methods in this implementation
[INFO] [stdout]  82 |     fn to_leaf(&mut self) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     fn to_empty(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     fn is_childless(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     fn is_empty(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     fn content(&self) -> &Option<T> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 349 |     fn remove(&mut self, str_left: &'a str, remove_subtree: bool) -> bool {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |     fn remove_fn(&mut self, str_left: &'a str, remove_subtree: bool) -> (bool, bool) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trie.rs:146:16
[INFO] [stdout]     |
[INFO] [stdout] 146 |     pub fn add(&mut self, s: &str, cont: &'a Option<T>) -> Result<&TNode<T>, KeyExists> {
[INFO] [stdout]     |                ^^^^^^^^^                                          ^^^^^^^^^
[INFO] [stdout]     |                |                                                  ||
[INFO] [stdout]     |                |                                                  |the same lifetime is hidden here
[INFO] [stdout]     |                the lifetime is elided here                        the same 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] 146 |     pub fn add(&mut self, s: &str, cont: &'a Option<T>) -> Result<&TNode<'_, T>, KeyExists> {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trie.rs:201:17
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn find(&self, s: &str, must_be_terminal: bool) -> Option<&TNode<T>> {
[INFO] [stdout]     |                 ^^^^^                                             ^^^^^^^^^
[INFO] [stdout]     |                 |                                                 ||
[INFO] [stdout]     |                 |                                                 |the same lifetime is hidden here
[INFO] [stdout]     |                 the lifetime is elided here                       the same 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] 201 |     pub fn find(&self, s: &str, must_be_terminal: bool) -> Option<&TNode<'_, T>> {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trie.rs:226:9
[INFO] [stdout]     |
[INFO] [stdout] 226 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 231 |     ) -> FindResults<T> {
[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] 231 |     ) -> FindResults<'_, T> {
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.32s
[INFO] running `Command { std: "docker" "inspect" "c3f397b5b0623d965f1b424982caa9492c68b068e6975bed59d975a5a3f36037", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c3f397b5b0623d965f1b424982caa9492c68b068e6975bed59d975a5a3f36037", kill_on_drop: false }`
[INFO] [stdout] c3f397b5b0623d965f1b424982caa9492c68b068e6975bed59d975a5a3f36037
[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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 14bf5cf618056233bcaf06a808c74295413f4f09985348989f16e6281fd24e0d
[INFO] running `Command { std: "docker" "start" "-a" "14bf5cf618056233bcaf06a808c74295413f4f09985348989f16e6281fd24e0d", kill_on_drop: false }`
[INFO] [stdout] warning: struct `LongestPrefFlags` is never constructed
[INFO] [stdout]   --> src/trie.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct LongestPrefFlags {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling trie-generic v1.1.8 (/opt/rustwide/workdir)
[INFO] [stdout] warning: type alias `LongestPrefResult` is never used
[INFO] [stdout]   --> src/trie.rs:39:6
[INFO] [stdout]    |
[INFO] [stdout] 39 | type LongestPrefResult = Option<(Vec<char>, LongestPrefFlags)>;
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KeyNotFound` is never constructed
[INFO] [stdout]   --> src/trie.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct KeyNotFound;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/trie.rs:82:8
[INFO] [stdout]     |
[INFO] [stdout]  81 | impl<'a, T: Display + Debug> TNode<'a, T> {
[INFO] [stdout]     | ----------------------------------------- methods in this implementation
[INFO] [stdout]  82 |     fn to_leaf(&mut self) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     fn to_empty(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     fn is_childless(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     fn is_empty(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     fn content(&self) -> &Option<T> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 349 |     fn remove(&mut self, str_left: &'a str, remove_subtree: bool) -> bool {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |     fn remove_fn(&mut self, str_left: &'a str, remove_subtree: bool) -> (bool, bool) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trie.rs:146:16
[INFO] [stdout]     |
[INFO] [stdout] 146 |     pub fn add(&mut self, s: &str, cont: &'a Option<T>) -> Result<&TNode<T>, KeyExists> {
[INFO] [stdout]     |                ^^^^^^^^^                                          ^^^^^^^^^
[INFO] [stdout]     |                |                                                  ||
[INFO] [stdout]     |                |                                                  |the same lifetime is hidden here
[INFO] [stdout]     |                the lifetime is elided here                        the same 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] 146 |     pub fn add(&mut self, s: &str, cont: &'a Option<T>) -> Result<&TNode<'_, T>, KeyExists> {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trie.rs:201:17
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn find(&self, s: &str, must_be_terminal: bool) -> Option<&TNode<T>> {
[INFO] [stdout]     |                 ^^^^^                                             ^^^^^^^^^
[INFO] [stdout]     |                 |                                                 ||
[INFO] [stdout]     |                 |                                                 |the same lifetime is hidden here
[INFO] [stdout]     |                 the lifetime is elided here                       the same 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] 201 |     pub fn find(&self, s: &str, must_be_terminal: bool) -> Option<&TNode<'_, T>> {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trie.rs:226:9
[INFO] [stdout]     |
[INFO] [stdout] 226 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 231 |     ) -> FindResults<T> {
[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] 231 |     ) -> FindResults<'_, T> {
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LongestPrefFlags` is never constructed
[INFO] [stdout]   --> src/trie.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct LongestPrefFlags {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `LongestPrefResult` is never used
[INFO] [stdout]   --> src/trie.rs:39:6
[INFO] [stdout]    |
[INFO] [stdout] 39 | type LongestPrefResult = Option<(Vec<char>, LongestPrefFlags)>;
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KeyNotFound` is never constructed
[INFO] [stdout]   --> src/trie.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct KeyNotFound;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_empty` is never used
[INFO] [stdout]   --> src/trie.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 81 | impl<'a, T: Display + Debug> TNode<'a, T> {
[INFO] [stdout]    | ----------------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 95 |     fn to_empty(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trie.rs:146:16
[INFO] [stdout]     |
[INFO] [stdout] 146 |     pub fn add(&mut self, s: &str, cont: &'a Option<T>) -> Result<&TNode<T>, KeyExists> {
[INFO] [stdout]     |                ^^^^^^^^^                                          ^^^^^^^^^
[INFO] [stdout]     |                |                                                  ||
[INFO] [stdout]     |                |                                                  |the same lifetime is hidden here
[INFO] [stdout]     |                the lifetime is elided here                        the same 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] 146 |     pub fn add(&mut self, s: &str, cont: &'a Option<T>) -> Result<&TNode<'_, T>, KeyExists> {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trie.rs:201:17
[INFO] [stdout]     |
[INFO] [stdout] 201 |     pub fn find(&self, s: &str, must_be_terminal: bool) -> Option<&TNode<T>> {
[INFO] [stdout]     |                 ^^^^^                                             ^^^^^^^^^
[INFO] [stdout]     |                 |                                                 ||
[INFO] [stdout]     |                 |                                                 |the same lifetime is hidden here
[INFO] [stdout]     |                 the lifetime is elided here                       the same 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] 201 |     pub fn find(&self, s: &str, must_be_terminal: bool) -> Option<&TNode<'_, T>> {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trie.rs:226:9
[INFO] [stdout]     |
[INFO] [stdout] 226 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 231 |     ) -> FindResults<T> {
[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] 231 |     ) -> FindResults<'_, T> {
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.97s
[INFO] running `Command { std: "docker" "inspect" "14bf5cf618056233bcaf06a808c74295413f4f09985348989f16e6281fd24e0d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "14bf5cf618056233bcaf06a808c74295413f4f09985348989f16e6281fd24e0d", kill_on_drop: false }`
[INFO] [stdout] 14bf5cf618056233bcaf06a808c74295413f4f09985348989f16e6281fd24e0d
[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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 10b28c4de4ad3383070210aae61ca96a9640665675345d09fbc75e9cbc8fdabd
[INFO] running `Command { std: "docker" "start" "-a" "10b28c4de4ad3383070210aae61ca96a9640665675345d09fbc75e9cbc8fdabd", kill_on_drop: false }`
[INFO] [stderr] warning: struct `LongestPrefFlags` is never constructed
[INFO] [stderr]   --> src/trie.rs:24:12
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub struct LongestPrefFlags {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `LongestPrefResult` is never used
[INFO] [stderr]   --> src/trie.rs:39:6
[INFO] [stderr]    |
[INFO] [stderr] 39 | type LongestPrefResult = Option<(Vec<char>, LongestPrefFlags)>;
[INFO] [stderr]    |      ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `KeyNotFound` is never constructed
[INFO] [stderr]   --> src/trie.rs:73:12
[INFO] [stderr]    |
[INFO] [stderr] 73 | pub struct KeyNotFound;
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]    --> src/trie.rs:82:8
[INFO] [stderr]     |
[INFO] [stderr]  81 | impl<'a, T: Display + Debug> TNode<'a, T> {
[INFO] [stderr]     | ----------------------------------------- methods in this implementation
[INFO] [stderr]  82 |     fn to_leaf(&mut self) {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  95 |     fn to_empty(&mut self) {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 122 |     fn is_childless(&self) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 130 |     fn is_empty(&self) -> bool {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 138 |     fn content(&self) -> &Option<T> {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 349 |     fn remove(&mut self, str_left: &'a str, remove_subtree: bool) -> bool {
[INFO] [stderr]     |        ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 353 |     fn remove_fn(&mut self, str_left: &'a str, remove_subtree: bool) -> (bool, bool) {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trie.rs:146:16
[INFO] [stderr]     |
[INFO] [stderr] 146 |     pub fn add(&mut self, s: &str, cont: &'a Option<T>) -> Result<&TNode<T>, KeyExists> {
[INFO] [stderr]     |                ^^^^^^^^^                                          ^^^^^^^^^
[INFO] [stderr]     |                |                                                  ||
[INFO] [stderr]     |                |                                                  |the same lifetime is hidden here
[INFO] [stderr]     |                the lifetime is elided here                        the same 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] 146 |     pub fn add(&mut self, s: &str, cont: &'a Option<T>) -> Result<&TNode<'_, T>, KeyExists> {
[INFO] [stderr]     |                                                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trie.rs:201:17
[INFO] [stderr]     |
[INFO] [stderr] 201 |     pub fn find(&self, s: &str, must_be_terminal: bool) -> Option<&TNode<T>> {
[INFO] [stderr]     |                 ^^^^^                                             ^^^^^^^^^
[INFO] [stderr]     |                 |                                                 ||
[INFO] [stderr]     |                 |                                                 |the same lifetime is hidden here
[INFO] [stderr]     |                 the lifetime is elided here                       the same 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] 201 |     pub fn find(&self, s: &str, must_be_terminal: bool) -> Option<&TNode<'_, T>> {
[INFO] [stderr]     |                                                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trie.rs:226:9
[INFO] [stderr]     |
[INFO] [stderr] 226 |         &self,
[INFO] [stderr]     |         ^^^^^ the lifetime is elided here
[INFO] [stderr] ...
[INFO] [stderr] 231 |     ) -> FindResults<T> {
[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] 231 |     ) -> FindResults<'_, T> {
[INFO] [stderr]     |                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: `trie-generic` (lib) generated 7 warnings (run `cargo fix --lib -p trie-generic` to apply 3 suggestions)
[INFO] [stderr] warning: method `to_empty` is never used
[INFO] [stderr]   --> src/trie.rs:95:8
[INFO] [stderr]    |
[INFO] [stderr] 81 | impl<'a, T: Display + Debug> TNode<'a, T> {
[INFO] [stderr]    | ----------------------------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 95 |     fn to_empty(&mut self) {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `trie-generic` (lib test) generated 7 warnings (6 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/trie_generic-e9ae8ec2a2c6bf1c)
[INFO] [stdout] 
[INFO] [stdout] running 16 tests
[INFO] [stdout] test trie::tests::add_single_char_string ... ok
[INFO] [stdout] test trie::tests::add_to_empty_trie ... ok
[INFO] [stdout] test trie::tests::contains_key ... ok
[INFO] [stdout] test trie::tests::find ... ok
[INFO] [stdout] test trie::tests::find_terminal ... ok
[INFO] [stdout] test trie::tests::find_terminal_fail ... ok
[INFO] [stdout] test trie::tests::longest_prefix_fail ... ok
[INFO] [stdout] test trie::tests::longest_prefix ... ok
[INFO] [stdout] test trie::tests::longest_prefix_no_full_match ... ok
[INFO] [stdout] test trie::tests::longest_prefix_terminal ... ok
[INFO] [stdout] test trie::tests::pretty_print ... ok
[INFO] [stdout] test trie::tests::remove ... ok
[INFO] [stdout] test trie::tests::remove_non_existing ... ok
[INFO] [stdout] test trie::tests::remove_non_terminal ... ok
[INFO] [stdout] test trie::tests::show_content ... ok
[INFO] [stdout] test trie::tests::remove_subtree ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests trie_generic
[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" "10b28c4de4ad3383070210aae61ca96a9640665675345d09fbc75e9cbc8fdabd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "10b28c4de4ad3383070210aae61ca96a9640665675345d09fbc75e9cbc8fdabd", kill_on_drop: false }`
[INFO] [stdout] 10b28c4de4ad3383070210aae61ca96a9640665675345d09fbc75e9cbc8fdabd
