[INFO] fetching crate oxidate 0.1.0...
[INFO] building oxidate-0.1.0 against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237-1
[INFO] extracting crate oxidate 0.1.0 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate oxidate 0.1.0
[INFO] finished tweaking crates.io crate oxidate 0.1.0
[INFO] tweaked toml for crates.io crate oxidate 0.1.0 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate oxidate 0.1.0 on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 56 packages to latest compatible versions
[INFO] [stderr]       Adding bigdecimal v0.3.1 (available: v0.4.8)
[INFO] [stderr]       Adding colored v2.2.0 (available: v3.0.0)
[INFO] [stderr]       Adding derive-new v0.5.9 (available: v0.7.0)
[INFO] [stderr]       Adding litrs v0.2.3 (available: v0.5.1)
[INFO] [stderr]       Adding mown v0.2.2 (available: v1.0.0)
[INFO] [stderr]       Adding proc-macro-crate v1.3.1 (available: v3.4.0)
[INFO] [stderr]       Adding sealed v0.3.0 (available: v0.6.0)
[INFO] [stderr]       Adding thiserror v1.0.69 (available: v2.0.16)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded proc-macro-error-attr v1.0.4
[INFO] [stderr]   Downloaded darling_macro v0.13.4
[INFO] [stderr]   Downloaded ident_case v1.0.1
[INFO] [stderr]   Downloaded macroscope-utils v0.1.1
[INFO] [stderr]   Downloaded lazy_static v1.5.0
[INFO] [stderr]   Downloaded autocfg v1.5.0
[INFO] [stderr]   Downloaded num-integer v0.1.46
[INFO] [stderr]   Downloaded num-traits v0.2.19
[INFO] [stderr]   Downloaded winnow v0.5.40
[INFO] [stderr]   Downloaded num-bigint v0.4.6
[INFO] [stderr]   Downloaded unicode-segmentation v1.12.0
[INFO] [stderr]   Downloaded toml_edit v0.19.15
[INFO] [stderr]   Downloaded colored v2.2.0
[INFO] [stderr]   Downloaded darling_core v0.13.4
[INFO] [stderr]   Downloaded bigdecimal v0.3.1
[INFO] [stderr]   Downloaded strsim v0.10.0
[INFO] [stderr]   Downloaded unicode-width v0.1.14
[INFO] [stderr]   Downloaded peekmore v1.3.0
[INFO] [stderr]   Downloaded derive-new v0.5.9
[INFO] [stderr]   Downloaded litrs v0.2.3
[INFO] [stderr]   Downloaded mown v0.2.2
[INFO] [stderr]   Downloaded darling v0.13.4
[INFO] [stderr]   Downloaded derive-syn-parse v0.1.5
[INFO] [stderr]   Downloaded proc_macro_roids v0.7.0
[INFO] [stderr]   Downloaded proc-macro-error v1.0.4
[INFO] [stderr]   Downloaded heck v0.3.3
[INFO] [stderr]   Downloaded sealed v0.3.0
[INFO] [stderr]   Downloaded paste v1.0.15
[INFO] [stderr]   Downloaded proc-macro-crate v1.3.1
[INFO] [stderr]   Downloaded version_check v0.9.5
[INFO] [stderr]   Downloaded pad v0.1.6
[INFO] [stderr]   Downloaded oxidate-macros v0.1.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b0be8809bea1d236464ec435ededcaec7e0b1064434098b3a27a2665aed48f14
[INFO] running `Command { std: "docker" "start" "-a" "b0be8809bea1d236464ec435ededcaec7e0b1064434098b3a27a2665aed48f14", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b0be8809bea1d236464ec435ededcaec7e0b1064434098b3a27a2665aed48f14", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b0be8809bea1d236464ec435ededcaec7e0b1064434098b3a27a2665aed48f14", kill_on_drop: false }`
[INFO] [stdout] b0be8809bea1d236464ec435ededcaec7e0b1064434098b3a27a2665aed48f14
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5a6cbe20e44c3e312c3acc8f7e1a601e0945553c37316c81bdb20794ef819cf3
[INFO] running `Command { std: "docker" "start" "-a" "5a6cbe20e44c3e312c3acc8f7e1a601e0945553c37316c81bdb20794ef819cf3", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling unicode-ident v1.0.19
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling hashbrown v0.16.0
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling winnow v0.5.40
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling peekmore v1.3.0
[INFO] [stderr]    Compiling unicode-width v0.1.14
[INFO] [stderr]    Compiling colored v2.2.0
[INFO] [stderr]    Compiling mown v0.2.2
[INFO] [stderr]    Compiling pad v0.1.6
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling indexmap v2.11.4
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling litrs v0.2.3
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling bigdecimal v0.3.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]    Compiling darling_core v0.13.4
[INFO] [stderr]    Compiling macroscope-utils v0.1.1
[INFO] [stderr]    Compiling proc_macro_roids v0.7.0
[INFO] [stderr]    Compiling derive-syn-parse v0.1.5
[INFO] [stderr]    Compiling derive-new v0.5.9
[INFO] [stderr]    Compiling sealed v0.3.0
[INFO] [stderr]    Compiling darling_macro v0.13.4
[INFO] [stderr]    Compiling darling v0.13.4
[INFO] [stderr]    Compiling oxidate-macros v0.1.0
[INFO] [stderr]    Compiling oxidate v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated method `colored::Colorize::reverse`: Users should use reversed instead
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:635:40
[INFO] [stdout]     |
[INFO] [stdout] 635 |                 " ATTEMPTED ".yellow().reverse(),
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `colored::Colorize::reverse`: Users should use reversed instead
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:637:58
[INFO] [stdout]     |
[INFO] [stdout] 637 |                 format!("{:?}", string).white().dimmed().reverse(),
[INFO] [stdout]     |                                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ToOxidateTokens` is never used
[INFO] [stdout]   --> src/traits.rs:31:18
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub(crate) trait ToOxidateTokens {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/lex/mod.rs:45:27
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn as_punctuation(&self, char: &str) -> Option<&Punctuation> {
[INFO] [stdout]    |                           ^^^^^                        ^^^^^^^^^^^^
[INFO] [stdout]    |                           |                            ||
[INFO] [stdout]    |                           |                            |the same lifetime is hidden here
[INFO] [stdout]    |                           |                            the same lifetime is elided here
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn as_punctuation(&self, char: &str) -> Option<&Punctuation<'_>> {
[INFO] [stdout]    |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/lex/mod.rs:52:20
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub fn as_word(&self, word: &str) -> Option<&Word> {
[INFO] [stdout]    |                    ^^^^^                        ^^^^^
[INFO] [stdout]    |                    |                            ||
[INFO] [stdout]    |                    |                            |the same lifetime is hidden here
[INFO] [stdout]    |                    |                            the same lifetime is elided here
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub fn as_word(&self, word: &str) -> Option<&Word<'_>> {
[INFO] [stdout]    |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/lex/literal/mod.rs:34:22
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub fn as_string(&self) -> Mown<str> {
[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] 34 |     pub fn as_string(&self) -> Mown<'_, str> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:396:14
[INFO] [stdout]     |
[INFO] [stdout] 396 |     fn value(&self) -> Mown<Self::Output>;
[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] 396 |     fn value(&self) -> Mown<'_, Self::Output>;
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:397:15
[INFO] [stdout]     |
[INFO] [stdout] 397 |     fn as_str(&self) -> Mown<str>;
[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] 397 |     fn as_str(&self) -> Mown<'_, str>;
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:429:15
[INFO] [stdout]     |
[INFO] [stdout] 429 |     fn suffix(&self) -> Mown<Self::Suffix>;
[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] 429 |     fn suffix(&self) -> Mown<'_, Self::Suffix>;
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:483:22
[INFO] [stdout]     |
[INFO] [stdout] 483 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 598 | / literal!(UnspannedLiteral::String(StringLiteral(StringLit)) {
[INFO] [stdout] 599 | |     value(string_lit) -> &str { string_lit.value() }
[INFO] [stdout] 600 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 483 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:487:23
[INFO] [stdout]     |
[INFO] [stdout] 487 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 598 | / literal!(UnspannedLiteral::String(StringLiteral(StringLit)) {
[INFO] [stdout] 599 | |     value(string_lit) -> &str { string_lit.value() }
[INFO] [stdout] 600 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 487 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:501:23
[INFO] [stdout]     |
[INFO] [stdout] 501 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 598 | / literal!(UnspannedLiteral::String(StringLiteral(StringLit)) {
[INFO] [stdout] 599 | |     value(string_lit) -> &str { string_lit.value() }
[INFO] [stdout] 600 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 501 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:483:22
[INFO] [stdout]     |
[INFO] [stdout] 483 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 602 | / literal!(UnspannedLiteral::ByteString(ByteStringLiteral(ByteStringLit)) {
[INFO] [stdout] 603 | |     value(byte_string_lit) -> &[u8] { byte_string_lit.value() }
[INFO] [stdout] 604 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 483 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:487:23
[INFO] [stdout]     |
[INFO] [stdout] 487 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 602 | / literal!(UnspannedLiteral::ByteString(ByteStringLiteral(ByteStringLit)) {
[INFO] [stdout] 603 | |     value(byte_string_lit) -> &[u8] { byte_string_lit.value() }
[INFO] [stdout] 604 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 487 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:501:23
[INFO] [stdout]     |
[INFO] [stdout] 501 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 602 | / literal!(UnspannedLiteral::ByteString(ByteStringLiteral(ByteStringLit)) {
[INFO] [stdout] 603 | |     value(byte_string_lit) -> &[u8] { byte_string_lit.value() }
[INFO] [stdout] 604 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 501 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:520:22
[INFO] [stdout]     |
[INFO] [stdout] 520 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 606 | / literal!(UnspannedLiteral::Byte(ByteLiteral(ByteLit)) {
[INFO] [stdout] 607 | |     value(byte_lit) -> u8 { byte_lit.value() }
[INFO] [stdout] 608 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 520 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:524:23
[INFO] [stdout]     |
[INFO] [stdout] 524 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 606 | / literal!(UnspannedLiteral::Byte(ByteLiteral(ByteLit)) {
[INFO] [stdout] 607 | |     value(byte_lit) -> u8 { byte_lit.value() }
[INFO] [stdout] 608 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 524 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:538:23
[INFO] [stdout]     |
[INFO] [stdout] 538 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 606 | / literal!(UnspannedLiteral::Byte(ByteLiteral(ByteLit)) {
[INFO] [stdout] 607 | |     value(byte_lit) -> u8 { byte_lit.value() }
[INFO] [stdout] 608 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 538 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:520:22
[INFO] [stdout]     |
[INFO] [stdout] 520 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 610 | / literal!(UnspannedLiteral::Char(CharLiteral(CharLit)) {
[INFO] [stdout] 611 | |     value(char_lit) -> char {
[INFO] [stdout] 612 | |         char_lit.value()
[INFO] [stdout] 613 | |     }
[INFO] [stdout] 614 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 520 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:524:23
[INFO] [stdout]     |
[INFO] [stdout] 524 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 610 | / literal!(UnspannedLiteral::Char(CharLiteral(CharLit)) {
[INFO] [stdout] 611 | |     value(char_lit) -> char {
[INFO] [stdout] 612 | |         char_lit.value()
[INFO] [stdout] 613 | |     }
[INFO] [stdout] 614 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 524 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:538:23
[INFO] [stdout]     |
[INFO] [stdout] 538 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 610 | / literal!(UnspannedLiteral::Char(CharLiteral(CharLit)) {
[INFO] [stdout] 611 | |     value(char_lit) -> char {
[INFO] [stdout] 612 | |         char_lit.value()
[INFO] [stdout] 613 | |     }
[INFO] [stdout] 614 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 538 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:520:22
[INFO] [stdout]     |
[INFO] [stdout] 520 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 616 | / literal!(UnspannedLiteral::Integer(IntegerLiteral(IntegerLit)) {
[INFO] [stdout] 617 | |     Suffix = AnyIntegerSuffix::Integer;
[INFO] [stdout] 618 | |     value(integer_lit) -> i128 {
[INFO] [stdout] 619 | |         integer_lit.value::<i128>().expect("UNEXPECTED: litrs::IntegerLit's value method should always support i128")
[INFO] [stdout] 620 | |     }
[INFO] [stdout] 621 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 520 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:524:23
[INFO] [stdout]     |
[INFO] [stdout] 524 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 616 | / literal!(UnspannedLiteral::Integer(IntegerLiteral(IntegerLit)) {
[INFO] [stdout] 617 | |     Suffix = AnyIntegerSuffix::Integer;
[INFO] [stdout] 618 | |     value(integer_lit) -> i128 {
[INFO] [stdout] 619 | |         integer_lit.value::<i128>().expect("UNEXPECTED: litrs::IntegerLit's value method should always support i128")
[INFO] [stdout] 620 | |     }
[INFO] [stdout] 621 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 524 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:538:23
[INFO] [stdout]     |
[INFO] [stdout] 538 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 616 | / literal!(UnspannedLiteral::Integer(IntegerLiteral(IntegerLit)) {
[INFO] [stdout] 617 | |     Suffix = AnyIntegerSuffix::Integer;
[INFO] [stdout] 618 | |     value(integer_lit) -> i128 {
[INFO] [stdout] 619 | |         integer_lit.value::<i128>().expect("UNEXPECTED: litrs::IntegerLit's value method should always support i128")
[INFO] [stdout] 620 | |     }
[INFO] [stdout] 621 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 538 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:520:22
[INFO] [stdout]     |
[INFO] [stdout] 520 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 623 | / literal!(UnspannedLiteral::Float(FloatLiteral(FloatLit)) {
[INFO] [stdout] 624 | |     Suffix = AnyFloatSuffix::Float;
[INFO] [stdout] 625 | |     value(float_lit) -> BigDecimal {
[INFO] [stdout] 626 | |         let string = float_lit.number_part().replace("_", "-");
[INFO] [stdout] ...   |
[INFO] [stdout] 643 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 520 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:524:23
[INFO] [stdout]     |
[INFO] [stdout] 524 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 623 | / literal!(UnspannedLiteral::Float(FloatLiteral(FloatLit)) {
[INFO] [stdout] 624 | |     Suffix = AnyFloatSuffix::Float;
[INFO] [stdout] 625 | |     value(float_lit) -> BigDecimal {
[INFO] [stdout] 626 | |         let string = float_lit.number_part().replace("_", "-");
[INFO] [stdout] ...   |
[INFO] [stdout] 643 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 524 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:538:23
[INFO] [stdout]     |
[INFO] [stdout] 538 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 623 | / literal!(UnspannedLiteral::Float(FloatLiteral(FloatLit)) {
[INFO] [stdout] 624 | |     Suffix = AnyFloatSuffix::Float;
[INFO] [stdout] 625 | |     value(float_lit) -> BigDecimal {
[INFO] [stdout] 626 | |         let string = float_lit.number_part().replace("_", "-");
[INFO] [stdout] ...   |
[INFO] [stdout] 643 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 538 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tokens.rs:67:27
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn as_punctuation(&self, char: &str) -> Option<&Punctuation> {
[INFO] [stdout]    |                           ^^^^^                        ^^^^^^^^^^^^
[INFO] [stdout]    |                           |                            ||
[INFO] [stdout]    |                           |                            |the same lifetime is hidden here
[INFO] [stdout]    |                           |                            the same lifetime is elided here
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn as_punctuation(&self, char: &str) -> Option<&Punctuation<'_>> {
[INFO] [stdout]    |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tokens.rs:74:20
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn as_word(&self, word: &str) -> Option<&Word> {
[INFO] [stdout]    |                    ^^^^^                        ^^^^^
[INFO] [stdout]    |                    |                            ||
[INFO] [stdout]    |                    |                            |the same lifetime is hidden here
[INFO] [stdout]    |                    |                            the same lifetime is elided here
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn as_word(&self, word: &str) -> Option<&Word<'_>> {
[INFO] [stdout]    |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tokens.rs:89:17
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn peek(&mut self) -> PeekedToken {
[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] 89 |     pub fn peek(&mut self) -> PeekedToken<'_> {
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.22s
[INFO] running `Command { std: "docker" "inspect" "5a6cbe20e44c3e312c3acc8f7e1a601e0945553c37316c81bdb20794ef819cf3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5a6cbe20e44c3e312c3acc8f7e1a601e0945553c37316c81bdb20794ef819cf3", kill_on_drop: false }`
[INFO] [stdout] 5a6cbe20e44c3e312c3acc8f7e1a601e0945553c37316c81bdb20794ef819cf3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 90f973261f5dad5cbade1f5fdfa6686e4c7d1df59d2432b9097b9fe66ebd7563
[INFO] running `Command { std: "docker" "start" "-a" "90f973261f5dad5cbade1f5fdfa6686e4c7d1df59d2432b9097b9fe66ebd7563", kill_on_drop: false }`
[INFO] [stdout] warning: use of deprecated method `colored::Colorize::reverse`: Users should use reversed instead
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:635:40
[INFO] [stdout]     |
[INFO] [stdout] 635 |                 " ATTEMPTED ".yellow().reverse(),
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `colored::Colorize::reverse`: Users should use reversed instead
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:637:58
[INFO] [stdout]     |
[INFO] [stdout] 637 |                 format!("{:?}", string).white().dimmed().reverse(),
[INFO] [stdout]     |                                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ToOxidateTokens` is never used
[INFO] [stdout]   --> src/traits.rs:31:18
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub(crate) trait ToOxidateTokens {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/lex/mod.rs:45:27
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn as_punctuation(&self, char: &str) -> Option<&Punctuation> {
[INFO] [stdout]    |                           ^^^^^                        ^^^^^^^^^^^^
[INFO] [stdout]    |                           |                            ||
[INFO] [stdout]    |                           |                            |the same lifetime is hidden here
[INFO] [stdout]    |                           |                            the same lifetime is elided here
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn as_punctuation(&self, char: &str) -> Option<&Punctuation<'_>> {
[INFO] [stdout]    |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/lex/mod.rs:52:20
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub fn as_word(&self, word: &str) -> Option<&Word> {
[INFO] [stdout]    |                    ^^^^^                        ^^^^^
[INFO] [stdout]    |                    |                            ||
[INFO] [stdout]    |                    |                            |the same lifetime is hidden here
[INFO] [stdout]    |                    |                            the same lifetime is elided here
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub fn as_word(&self, word: &str) -> Option<&Word<'_>> {
[INFO] [stdout]    |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/lex/literal/mod.rs:34:22
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub fn as_string(&self) -> Mown<str> {
[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] 34 |     pub fn as_string(&self) -> Mown<'_, str> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:396:14
[INFO] [stdout]     |
[INFO] [stdout] 396 |     fn value(&self) -> Mown<Self::Output>;
[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] 396 |     fn value(&self) -> Mown<'_, Self::Output>;
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:397:15
[INFO] [stdout]     |
[INFO] [stdout] 397 |     fn as_str(&self) -> Mown<str>;
[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] 397 |     fn as_str(&self) -> Mown<'_, str>;
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:429:15
[INFO] [stdout]     |
[INFO] [stdout] 429 |     fn suffix(&self) -> Mown<Self::Suffix>;
[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] 429 |     fn suffix(&self) -> Mown<'_, Self::Suffix>;
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:483:22
[INFO] [stdout]     |
[INFO] [stdout] 483 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 598 | / literal!(UnspannedLiteral::String(StringLiteral(StringLit)) {
[INFO] [stdout] 599 | |     value(string_lit) -> &str { string_lit.value() }
[INFO] [stdout] 600 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 483 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:487:23
[INFO] [stdout]     |
[INFO] [stdout] 487 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 598 | / literal!(UnspannedLiteral::String(StringLiteral(StringLit)) {
[INFO] [stdout] 599 | |     value(string_lit) -> &str { string_lit.value() }
[INFO] [stdout] 600 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 487 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:501:23
[INFO] [stdout]     |
[INFO] [stdout] 501 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 598 | / literal!(UnspannedLiteral::String(StringLiteral(StringLit)) {
[INFO] [stdout] 599 | |     value(string_lit) -> &str { string_lit.value() }
[INFO] [stdout] 600 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 501 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:483:22
[INFO] [stdout]     |
[INFO] [stdout] 483 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 602 | / literal!(UnspannedLiteral::ByteString(ByteStringLiteral(ByteStringLit)) {
[INFO] [stdout] 603 | |     value(byte_string_lit) -> &[u8] { byte_string_lit.value() }
[INFO] [stdout] 604 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 483 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:487:23
[INFO] [stdout]     |
[INFO] [stdout] 487 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 602 | / literal!(UnspannedLiteral::ByteString(ByteStringLiteral(ByteStringLit)) {
[INFO] [stdout] 603 | |     value(byte_string_lit) -> &[u8] { byte_string_lit.value() }
[INFO] [stdout] 604 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 487 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:501:23
[INFO] [stdout]     |
[INFO] [stdout] 501 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 602 | / literal!(UnspannedLiteral::ByteString(ByteStringLiteral(ByteStringLit)) {
[INFO] [stdout] 603 | |     value(byte_string_lit) -> &[u8] { byte_string_lit.value() }
[INFO] [stdout] 604 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 501 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:520:22
[INFO] [stdout]     |
[INFO] [stdout] 520 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 606 | / literal!(UnspannedLiteral::Byte(ByteLiteral(ByteLit)) {
[INFO] [stdout] 607 | |     value(byte_lit) -> u8 { byte_lit.value() }
[INFO] [stdout] 608 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 520 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:524:23
[INFO] [stdout]     |
[INFO] [stdout] 524 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 606 | / literal!(UnspannedLiteral::Byte(ByteLiteral(ByteLit)) {
[INFO] [stdout] 607 | |     value(byte_lit) -> u8 { byte_lit.value() }
[INFO] [stdout] 608 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 524 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:538:23
[INFO] [stdout]     |
[INFO] [stdout] 538 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 606 | / literal!(UnspannedLiteral::Byte(ByteLiteral(ByteLit)) {
[INFO] [stdout] 607 | |     value(byte_lit) -> u8 { byte_lit.value() }
[INFO] [stdout] 608 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 538 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:520:22
[INFO] [stdout]     |
[INFO] [stdout] 520 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 610 | / literal!(UnspannedLiteral::Char(CharLiteral(CharLit)) {
[INFO] [stdout] 611 | |     value(char_lit) -> char {
[INFO] [stdout] 612 | |         char_lit.value()
[INFO] [stdout] 613 | |     }
[INFO] [stdout] 614 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 520 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:524:23
[INFO] [stdout]     |
[INFO] [stdout] 524 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 610 | / literal!(UnspannedLiteral::Char(CharLiteral(CharLit)) {
[INFO] [stdout] 611 | |     value(char_lit) -> char {
[INFO] [stdout] 612 | |         char_lit.value()
[INFO] [stdout] 613 | |     }
[INFO] [stdout] 614 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 524 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:538:23
[INFO] [stdout]     |
[INFO] [stdout] 538 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 610 | / literal!(UnspannedLiteral::Char(CharLiteral(CharLit)) {
[INFO] [stdout] 611 | |     value(char_lit) -> char {
[INFO] [stdout] 612 | |         char_lit.value()
[INFO] [stdout] 613 | |     }
[INFO] [stdout] 614 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 538 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:520:22
[INFO] [stdout]     |
[INFO] [stdout] 520 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 616 | / literal!(UnspannedLiteral::Integer(IntegerLiteral(IntegerLit)) {
[INFO] [stdout] 617 | |     Suffix = AnyIntegerSuffix::Integer;
[INFO] [stdout] 618 | |     value(integer_lit) -> i128 {
[INFO] [stdout] 619 | |         integer_lit.value::<i128>().expect("UNEXPECTED: litrs::IntegerLit's value method should always support i128")
[INFO] [stdout] 620 | |     }
[INFO] [stdout] 621 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 520 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:524:23
[INFO] [stdout]     |
[INFO] [stdout] 524 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 616 | / literal!(UnspannedLiteral::Integer(IntegerLiteral(IntegerLit)) {
[INFO] [stdout] 617 | |     Suffix = AnyIntegerSuffix::Integer;
[INFO] [stdout] 618 | |     value(integer_lit) -> i128 {
[INFO] [stdout] 619 | |         integer_lit.value::<i128>().expect("UNEXPECTED: litrs::IntegerLit's value method should always support i128")
[INFO] [stdout] 620 | |     }
[INFO] [stdout] 621 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 524 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:538:23
[INFO] [stdout]     |
[INFO] [stdout] 538 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 616 | / literal!(UnspannedLiteral::Integer(IntegerLiteral(IntegerLit)) {
[INFO] [stdout] 617 | |     Suffix = AnyIntegerSuffix::Integer;
[INFO] [stdout] 618 | |     value(integer_lit) -> i128 {
[INFO] [stdout] 619 | |         integer_lit.value::<i128>().expect("UNEXPECTED: litrs::IntegerLit's value method should always support i128")
[INFO] [stdout] 620 | |     }
[INFO] [stdout] 621 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 538 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:520:22
[INFO] [stdout]     |
[INFO] [stdout] 520 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 623 | / literal!(UnspannedLiteral::Float(FloatLiteral(FloatLit)) {
[INFO] [stdout] 624 | |     Suffix = AnyFloatSuffix::Float;
[INFO] [stdout] 625 | |     value(float_lit) -> BigDecimal {
[INFO] [stdout] 626 | |         let string = float_lit.number_part().replace("_", "-");
[INFO] [stdout] ...   |
[INFO] [stdout] 643 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 520 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:524:23
[INFO] [stdout]     |
[INFO] [stdout] 524 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 623 | / literal!(UnspannedLiteral::Float(FloatLiteral(FloatLit)) {
[INFO] [stdout] 624 | |     Suffix = AnyFloatSuffix::Float;
[INFO] [stdout] 625 | |     value(float_lit) -> BigDecimal {
[INFO] [stdout] 626 | |         let string = float_lit.number_part().replace("_", "-");
[INFO] [stdout] ...   |
[INFO] [stdout] 643 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 524 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:538:23
[INFO] [stdout]     |
[INFO] [stdout] 538 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 623 | / literal!(UnspannedLiteral::Float(FloatLiteral(FloatLit)) {
[INFO] [stdout] 624 | |     Suffix = AnyFloatSuffix::Float;
[INFO] [stdout] 625 | |     value(float_lit) -> BigDecimal {
[INFO] [stdout] 626 | |         let string = float_lit.number_part().replace("_", "-");
[INFO] [stdout] ...   |
[INFO] [stdout] 643 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 538 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tokens.rs:67:27
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn as_punctuation(&self, char: &str) -> Option<&Punctuation> {
[INFO] [stdout]    |                           ^^^^^                        ^^^^^^^^^^^^
[INFO] [stdout]    |                           |                            ||
[INFO] [stdout]    |                           |                            |the same lifetime is hidden here
[INFO] [stdout]    |                           |                            the same lifetime is elided here
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn as_punctuation(&self, char: &str) -> Option<&Punctuation<'_>> {
[INFO] [stdout]    |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling oxidate v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tokens.rs:74:20
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn as_word(&self, word: &str) -> Option<&Word> {
[INFO] [stdout]    |                    ^^^^^                        ^^^^^
[INFO] [stdout]    |                    |                            ||
[INFO] [stdout]    |                    |                            |the same lifetime is hidden here
[INFO] [stdout]    |                    |                            the same lifetime is elided here
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn as_word(&self, word: &str) -> Option<&Word<'_>> {
[INFO] [stdout]    |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tokens.rs:89:17
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn peek(&mut self) -> PeekedToken {
[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] 89 |     pub fn peek(&mut self) -> PeekedToken<'_> {
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `colored::Colorize::reverse`: Users should use reversed instead
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:635:40
[INFO] [stdout]     |
[INFO] [stdout] 635 |                 " ATTEMPTED ".yellow().reverse(),
[INFO] [stdout]     |                                        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `colored::Colorize::reverse`: Users should use reversed instead
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:637:58
[INFO] [stdout]     |
[INFO] [stdout] 637 |                 format!("{:?}", string).white().dimmed().reverse(),
[INFO] [stdout]     |                                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ToOxidateTokens` is never used
[INFO] [stdout]   --> src/traits.rs:31:18
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub(crate) trait ToOxidateTokens {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/lex/mod.rs:45:27
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn as_punctuation(&self, char: &str) -> Option<&Punctuation> {
[INFO] [stdout]    |                           ^^^^^                        ^^^^^^^^^^^^
[INFO] [stdout]    |                           |                            ||
[INFO] [stdout]    |                           |                            |the same lifetime is hidden here
[INFO] [stdout]    |                           |                            the same lifetime is elided here
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn as_punctuation(&self, char: &str) -> Option<&Punctuation<'_>> {
[INFO] [stdout]    |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/lex/mod.rs:52:20
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub fn as_word(&self, word: &str) -> Option<&Word> {
[INFO] [stdout]    |                    ^^^^^                        ^^^^^
[INFO] [stdout]    |                    |                            ||
[INFO] [stdout]    |                    |                            |the same lifetime is hidden here
[INFO] [stdout]    |                    |                            the same lifetime is elided here
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub fn as_word(&self, word: &str) -> Option<&Word<'_>> {
[INFO] [stdout]    |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/lex/literal/mod.rs:34:22
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub fn as_string(&self) -> Mown<str> {
[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] 34 |     pub fn as_string(&self) -> Mown<'_, str> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:396:14
[INFO] [stdout]     |
[INFO] [stdout] 396 |     fn value(&self) -> Mown<Self::Output>;
[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] 396 |     fn value(&self) -> Mown<'_, Self::Output>;
[INFO] [stdout]     |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:397:15
[INFO] [stdout]     |
[INFO] [stdout] 397 |     fn as_str(&self) -> Mown<str>;
[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] 397 |     fn as_str(&self) -> Mown<'_, str>;
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:429:15
[INFO] [stdout]     |
[INFO] [stdout] 429 |     fn suffix(&self) -> Mown<Self::Suffix>;
[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] 429 |     fn suffix(&self) -> Mown<'_, Self::Suffix>;
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:483:22
[INFO] [stdout]     |
[INFO] [stdout] 483 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 598 | / literal!(UnspannedLiteral::String(StringLiteral(StringLit)) {
[INFO] [stdout] 599 | |     value(string_lit) -> &str { string_lit.value() }
[INFO] [stdout] 600 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 483 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:487:23
[INFO] [stdout]     |
[INFO] [stdout] 487 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 598 | / literal!(UnspannedLiteral::String(StringLiteral(StringLit)) {
[INFO] [stdout] 599 | |     value(string_lit) -> &str { string_lit.value() }
[INFO] [stdout] 600 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 487 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:501:23
[INFO] [stdout]     |
[INFO] [stdout] 501 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 598 | / literal!(UnspannedLiteral::String(StringLiteral(StringLit)) {
[INFO] [stdout] 599 | |     value(string_lit) -> &str { string_lit.value() }
[INFO] [stdout] 600 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 501 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:483:22
[INFO] [stdout]     |
[INFO] [stdout] 483 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 602 | / literal!(UnspannedLiteral::ByteString(ByteStringLiteral(ByteStringLit)) {
[INFO] [stdout] 603 | |     value(byte_string_lit) -> &[u8] { byte_string_lit.value() }
[INFO] [stdout] 604 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 483 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:487:23
[INFO] [stdout]     |
[INFO] [stdout] 487 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 602 | / literal!(UnspannedLiteral::ByteString(ByteStringLiteral(ByteStringLit)) {
[INFO] [stdout] 603 | |     value(byte_string_lit) -> &[u8] { byte_string_lit.value() }
[INFO] [stdout] 604 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 487 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:501:23
[INFO] [stdout]     |
[INFO] [stdout] 501 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 602 | / literal!(UnspannedLiteral::ByteString(ByteStringLiteral(ByteStringLit)) {
[INFO] [stdout] 603 | |     value(byte_string_lit) -> &[u8] { byte_string_lit.value() }
[INFO] [stdout] 604 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 501 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:520:22
[INFO] [stdout]     |
[INFO] [stdout] 520 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 606 | / literal!(UnspannedLiteral::Byte(ByteLiteral(ByteLit)) {
[INFO] [stdout] 607 | |     value(byte_lit) -> u8 { byte_lit.value() }
[INFO] [stdout] 608 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 520 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:524:23
[INFO] [stdout]     |
[INFO] [stdout] 524 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 606 | / literal!(UnspannedLiteral::Byte(ByteLiteral(ByteLit)) {
[INFO] [stdout] 607 | |     value(byte_lit) -> u8 { byte_lit.value() }
[INFO] [stdout] 608 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 524 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:538:23
[INFO] [stdout]     |
[INFO] [stdout] 538 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 606 | / literal!(UnspannedLiteral::Byte(ByteLiteral(ByteLit)) {
[INFO] [stdout] 607 | |     value(byte_lit) -> u8 { byte_lit.value() }
[INFO] [stdout] 608 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 538 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:520:22
[INFO] [stdout]     |
[INFO] [stdout] 520 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 610 | / literal!(UnspannedLiteral::Char(CharLiteral(CharLit)) {
[INFO] [stdout] 611 | |     value(char_lit) -> char {
[INFO] [stdout] 612 | |         char_lit.value()
[INFO] [stdout] 613 | |     }
[INFO] [stdout] 614 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 520 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:524:23
[INFO] [stdout]     |
[INFO] [stdout] 524 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 610 | / literal!(UnspannedLiteral::Char(CharLiteral(CharLit)) {
[INFO] [stdout] 611 | |     value(char_lit) -> char {
[INFO] [stdout] 612 | |         char_lit.value()
[INFO] [stdout] 613 | |     }
[INFO] [stdout] 614 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 524 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:538:23
[INFO] [stdout]     |
[INFO] [stdout] 538 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 610 | / literal!(UnspannedLiteral::Char(CharLiteral(CharLit)) {
[INFO] [stdout] 611 | |     value(char_lit) -> char {
[INFO] [stdout] 612 | |         char_lit.value()
[INFO] [stdout] 613 | |     }
[INFO] [stdout] 614 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 538 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:520:22
[INFO] [stdout]     |
[INFO] [stdout] 520 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 616 | / literal!(UnspannedLiteral::Integer(IntegerLiteral(IntegerLit)) {
[INFO] [stdout] 617 | |     Suffix = AnyIntegerSuffix::Integer;
[INFO] [stdout] 618 | |     value(integer_lit) -> i128 {
[INFO] [stdout] 619 | |         integer_lit.value::<i128>().expect("UNEXPECTED: litrs::IntegerLit's value method should always support i128")
[INFO] [stdout] 620 | |     }
[INFO] [stdout] 621 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 520 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:524:23
[INFO] [stdout]     |
[INFO] [stdout] 524 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 616 | / literal!(UnspannedLiteral::Integer(IntegerLiteral(IntegerLit)) {
[INFO] [stdout] 617 | |     Suffix = AnyIntegerSuffix::Integer;
[INFO] [stdout] 618 | |     value(integer_lit) -> i128 {
[INFO] [stdout] 619 | |         integer_lit.value::<i128>().expect("UNEXPECTED: litrs::IntegerLit's value method should always support i128")
[INFO] [stdout] 620 | |     }
[INFO] [stdout] 621 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 524 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:538:23
[INFO] [stdout]     |
[INFO] [stdout] 538 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 616 | / literal!(UnspannedLiteral::Integer(IntegerLiteral(IntegerLit)) {
[INFO] [stdout] 617 | |     Suffix = AnyIntegerSuffix::Integer;
[INFO] [stdout] 618 | |     value(integer_lit) -> i128 {
[INFO] [stdout] 619 | |         integer_lit.value::<i128>().expect("UNEXPECTED: litrs::IntegerLit's value method should always support i128")
[INFO] [stdout] 620 | |     }
[INFO] [stdout] 621 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 538 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:520:22
[INFO] [stdout]     |
[INFO] [stdout] 520 |               fn value(&self) -> Mown<$value_ty> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 623 | / literal!(UnspannedLiteral::Float(FloatLiteral(FloatLit)) {
[INFO] [stdout] 624 | |     Suffix = AnyFloatSuffix::Float;
[INFO] [stdout] 625 | |     value(float_lit) -> BigDecimal {
[INFO] [stdout] 626 | |         let string = float_lit.number_part().replace("_", "-");
[INFO] [stdout] ...   |
[INFO] [stdout] 643 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 520 |             fn value(&self) -> Mown<'_, $value_ty> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:524:23
[INFO] [stdout]     |
[INFO] [stdout] 524 |               fn as_str(&self) -> Mown<str> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 623 | / literal!(UnspannedLiteral::Float(FloatLiteral(FloatLit)) {
[INFO] [stdout] 624 | |     Suffix = AnyFloatSuffix::Float;
[INFO] [stdout] 625 | |     value(float_lit) -> BigDecimal {
[INFO] [stdout] 626 | |         let string = float_lit.number_part().replace("_", "-");
[INFO] [stdout] ...   |
[INFO] [stdout] 643 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 524 |             fn as_str(&self) -> Mown<'_, str> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lex/literal/literal_types.rs:538:23
[INFO] [stdout]     |
[INFO] [stdout] 538 |               fn suffix(&self) -> Mown<Self::Suffix> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 623 | / literal!(UnspannedLiteral::Float(FloatLiteral(FloatLit)) {
[INFO] [stdout] 624 | |     Suffix = AnyFloatSuffix::Float;
[INFO] [stdout] 625 | |     value(float_lit) -> BigDecimal {
[INFO] [stdout] 626 | |         let string = float_lit.number_part().replace("_", "-");
[INFO] [stdout] ...   |
[INFO] [stdout] 643 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: this warning originates in the macro `literal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 538 |             fn suffix(&self) -> Mown<'_, Self::Suffix> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tokens.rs:67:27
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn as_punctuation(&self, char: &str) -> Option<&Punctuation> {
[INFO] [stdout]    |                           ^^^^^                        ^^^^^^^^^^^^
[INFO] [stdout]    |                           |                            ||
[INFO] [stdout]    |                           |                            |the same lifetime is hidden here
[INFO] [stdout]    |                           |                            the same lifetime is elided here
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn as_punctuation(&self, char: &str) -> Option<&Punctuation<'_>> {
[INFO] [stdout]    |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tokens.rs:74:20
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn as_word(&self, word: &str) -> Option<&Word> {
[INFO] [stdout]    |                    ^^^^^                        ^^^^^
[INFO] [stdout]    |                    |                            ||
[INFO] [stdout]    |                    |                            |the same lifetime is hidden here
[INFO] [stdout]    |                    |                            the same lifetime is elided here
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn as_word(&self, word: &str) -> Option<&Word<'_>> {
[INFO] [stdout]    |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tokens.rs:89:17
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn peek(&mut self) -> PeekedToken {
[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] 89 |     pub fn peek(&mut self) -> PeekedToken<'_> {
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.60s
[INFO] running `Command { std: "docker" "inspect" "90f973261f5dad5cbade1f5fdfa6686e4c7d1df59d2432b9097b9fe66ebd7563", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "90f973261f5dad5cbade1f5fdfa6686e4c7d1df59d2432b9097b9fe66ebd7563", kill_on_drop: false }`
[INFO] [stdout] 90f973261f5dad5cbade1f5fdfa6686e4c7d1df59d2432b9097b9fe66ebd7563
