[INFO] cloning repository https://github.com/msft-mirror-aosp/platform.external.rust.crates.pest
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/msft-mirror-aosp/platform.external.rust.crates.pest" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmsft-mirror-aosp%2Fplatform.external.rust.crates.pest", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmsft-mirror-aosp%2Fplatform.external.rust.crates.pest'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d1543f99ea824298e08f28109504c302bf0e2e36
[INFO] building msft-mirror-aosp/platform.external.rust.crates.pest against try#d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 for pr-146237-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmsft-mirror-aosp%2Fplatform.external.rust.crates.pest" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/msft-mirror-aosp/platform.external.rust.crates.pest
[INFO] finished tweaking git repo https://github.com/msft-mirror-aosp/platform.external.rust.crates.pest
[INFO] tweaked toml for git repo https://github.com/msft-mirror-aosp/platform.external.rust.crates.pest written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/msft-mirror-aosp/platform.external.rust.crates.pest on toolchain d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/msft-mirror-aosp/platform.external.rust.crates.pest already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f24c2ca12eb3ad2cd59a00e41163d20069d7f121cc516e811ea3ed9050b11d29
[INFO] running `Command { std: "docker" "start" "-a" "f24c2ca12eb3ad2cd59a00e41163d20069d7f121cc516e811ea3ed9050b11d29", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f24c2ca12eb3ad2cd59a00e41163d20069d7f121cc516e811ea3ed9050b11d29", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f24c2ca12eb3ad2cd59a00e41163d20069d7f121cc516e811ea3ed9050b11d29", kill_on_drop: false }`
[INFO] [stdout] f24c2ca12eb3ad2cd59a00e41163d20069d7f121cc516e811ea3ed9050b11d29
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d0bde7c78f5aa20954857aa6755bc4ea84ddbf46dceddd95372baa5475359fb9
[INFO] running `Command { std: "docker" "start" "-a" "d0bde7c78f5aa20954857aa6755bc4ea84ddbf46dceddd95372baa5475359fb9", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling ucd-trie v0.1.2
[INFO] [stderr]    Compiling pest v2.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/parser.rs:17:30
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn parse(rule: R, input: &str) -> Result<Pairs<R>, Error<R>>;
[INFO] [stdout]    |                              ^^^^            ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn parse(rule: R, input: &str) -> Result<Pairs<'_, R>, Error<R>>;
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/position.rs:35:47
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub(crate) unsafe fn new_unchecked(input: &str, pos: usize) -> Position {
[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] 35 |     pub(crate) unsafe fn new_unchecked(input: &str, pos: usize) -> Position<'_> {
[INFO] [stdout]    |                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/position.rs:53:23
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub fn new(input: &str, pos: usize) -> Option<Position> {
[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] 53 |     pub fn new(input: &str, pos: usize) -> Option<Position<'_>> {
[INFO] [stdout]    |                                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/span.rs:40:47
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub(crate) unsafe fn new_unchecked(input: &str, start: usize, end: usize) -> Span {
[INFO] [stdout]    |                                               ^^^^ the lifetime is elided here   ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub(crate) unsafe fn new_unchecked(input: &str, start: usize, end: usize) -> Span<'_> {
[INFO] [stdout]    |                                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/span.rs:57:23
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn new(input: &str, start: usize, end: usize) -> Option<Span> {
[INFO] [stdout]    |                       ^^^^ the lifetime is elided here          ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn new(input: &str, start: usize, end: usize) -> Option<Span<'_>> {
[INFO] [stdout]    |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/span.rs:202:18
[INFO] [stdout]     |
[INFO] [stdout] 202 |     pub fn lines(&self) -> Lines {
[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] 202 |     pub fn lines(&self) -> Lines<'_> {
[INFO] [stdout]     |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/iterators/pair.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 |     input: &str,
[INFO] [stdout]    |            ^^^^ the lifetime is elided here
[INFO] [stdout] 50 |     start: usize,
[INFO] [stdout] 51 | ) -> Pair<R> {
[INFO] [stdout]    |      ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 51 | ) -> Pair<'_, R> {
[INFO] [stdout]    |           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/iterators/pairs.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 |     input: &str,
[INFO] [stdout]    |            ^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 43 | ) -> Pairs<R> {
[INFO] [stdout]    |      ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 43 | ) -> Pairs<'_, R> {
[INFO] [stdout]    |            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/iterators/tokens.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 38 |     input: &str,
[INFO] [stdout]    |            ^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 41 | ) -> Tokens<R> {
[INFO] [stdout]    |      ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 41 | ) -> Tokens<'_, R> {
[INFO] [stdout]    |             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/iterators/flat_pairs.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 |     input: &str,
[INFO] [stdout]    |            ^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 40 | ) -> FlatPairs<R> {
[INFO] [stdout]    |      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 40 | ) -> FlatPairs<'_, R> {
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.21s
[INFO] running `Command { std: "docker" "inspect" "d0bde7c78f5aa20954857aa6755bc4ea84ddbf46dceddd95372baa5475359fb9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d0bde7c78f5aa20954857aa6755bc4ea84ddbf46dceddd95372baa5475359fb9", kill_on_drop: false }`
[INFO] [stdout] d0bde7c78f5aa20954857aa6755bc4ea84ddbf46dceddd95372baa5475359fb9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 483dc67301fe3eb9f8e2899ee418e13d59654163f0cb552ef0e9e6d3fc769936
[INFO] running `Command { std: "docker" "start" "-a" "483dc67301fe3eb9f8e2899ee418e13d59654163f0cb552ef0e9e6d3fc769936", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/parser.rs:17:30
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn parse(rule: R, input: &str) -> Result<Pairs<R>, Error<R>>;
[INFO] [stdout]    |                              ^^^^            ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn parse(rule: R, input: &str) -> Result<Pairs<'_, R>, Error<R>>;
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/position.rs:35:47
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub(crate) unsafe fn new_unchecked(input: &str, pos: usize) -> Position {
[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] 35 |     pub(crate) unsafe fn new_unchecked(input: &str, pos: usize) -> Position<'_> {
[INFO] [stdout]    |                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/position.rs:53:23
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub fn new(input: &str, pos: usize) -> Option<Position> {
[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] 53 |     pub fn new(input: &str, pos: usize) -> Option<Position<'_>> {
[INFO] [stdout]    |                                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/span.rs:40:47
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub(crate) unsafe fn new_unchecked(input: &str, start: usize, end: usize) -> Span {
[INFO] [stdout]    |                                               ^^^^ the lifetime is elided here   ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub(crate) unsafe fn new_unchecked(input: &str, start: usize, end: usize) -> Span<'_> {
[INFO] [stdout]    |                                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/span.rs:57:23
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn new(input: &str, start: usize, end: usize) -> Option<Span> {
[INFO] [stdout]    |                       ^^^^ the lifetime is elided here          ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn new(input: &str, start: usize, end: usize) -> Option<Span<'_>> {
[INFO] [stdout]    |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/span.rs:202:18
[INFO] [stdout]     |
[INFO] [stdout] 202 |     pub fn lines(&self) -> Lines {
[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] 202 |     pub fn lines(&self) -> Lines<'_> {
[INFO] [stdout]     |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/iterators/pair.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 |     input: &str,
[INFO] [stdout]    |            ^^^^ the lifetime is elided here
[INFO] [stdout] 50 |     start: usize,
[INFO] [stdout] 51 | ) -> Pair<R> {
[INFO] [stdout]    |      ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 51 | ) -> Pair<'_, R> {
[INFO] [stdout]    |           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/iterators/pairs.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 |     input: &str,
[INFO] [stdout]    |            ^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 43 | ) -> Pairs<R> {
[INFO] [stdout]    |      ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 43 | ) -> Pairs<'_, R> {
[INFO] [stdout]    |            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/iterators/tokens.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 38 |     input: &str,
[INFO] [stdout]    |            ^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 41 | ) -> Tokens<R> {
[INFO] [stdout]    |      ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 41 | ) -> Tokens<'_, R> {
[INFO] [stdout]    |             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/iterators/flat_pairs.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 |     input: &str,
[INFO] [stdout]    |            ^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 40 | ) -> FlatPairs<R> {
[INFO] [stdout]    |      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 40 | ) -> FlatPairs<'_, R> {
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling pest v2.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> examples/parens.rs:20:33
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn parse(rule: Rule, input: &str) -> Result<Pairs<Rule>, Error<Rule>> {
[INFO] [stdout]    |                                 ^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn parse(rule: Rule, input: &str) -> Result<Pairs<'_, Rule>, Error<Rule>> {
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> examples/parens.rs:51:14
[INFO] [stdout]    |
[INFO] [stdout] 51 | struct Paren(Vec<Paren>);
[INFO] [stdout]    |        ----- ^^^^^^^^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `Paren` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[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]   --> tests/calculator.rs:35:33
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn parse(rule: Rule, input: &str) -> Result<Pairs<Rule>, Error<Rule>> {
[INFO] [stdout]    |                                 ^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn parse(rule: Rule, input: &str) -> Result<Pairs<'_, Rule>, Error<Rule>> {
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> tests/json.rs:41:33
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn parse(rule: Rule, input: &str) -> Result<Pairs<Rule>, Error<Rule>> {
[INFO] [stdout]    |                                 ^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn parse(rule: Rule, input: &str) -> Result<Pairs<'_, Rule>, Error<Rule>> {
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/macros.rs:232:33
[INFO] [stdout]     |
[INFO] [stdout] 232 |                                   format!("expected end of input, but found {:?}", rest)
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 366 | /         parses_to! {
[INFO] [stdout] 367 | |             parser: AbcParser,
[INFO] [stdout] 368 | |             input: "abcde",
[INFO] [stdout] 369 | |             rule: Rule::a,
[INFO] [stdout] ...   |
[INFO] [stdout] 376 | |         };
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `parses_to` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 232 -                                 format!("expected end of input, but found {:?}", rest)
[INFO] [stdout] 232 +                                 "expected end of input, but found {:?}", rest
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/iterators/pairs.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 |     input: &str,
[INFO] [stdout]    |            ^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 43 | ) -> Pairs<R> {
[INFO] [stdout]    |      ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 43 | ) -> Pairs<'_, R> {
[INFO] [stdout]    |            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/iterators/flat_pairs.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 |     input: &str,
[INFO] [stdout]    |            ^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 40 | ) -> FlatPairs<R> {
[INFO] [stdout]    |      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 40 | ) -> FlatPairs<'_, R> {
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/position.rs:35:47
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub(crate) unsafe fn new_unchecked(input: &str, pos: usize) -> Position {
[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] 35 |     pub(crate) unsafe fn new_unchecked(input: &str, pos: usize) -> Position<'_> {
[INFO] [stdout]    |                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/span.rs:40:47
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub(crate) unsafe fn new_unchecked(input: &str, start: usize, end: usize) -> Span {
[INFO] [stdout]    |                                               ^^^^ the lifetime is elided here   ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub(crate) unsafe fn new_unchecked(input: &str, start: usize, end: usize) -> Span<'_> {
[INFO] [stdout]    |                                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/position.rs:53:23
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub fn new(input: &str, pos: usize) -> Option<Position> {
[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] 53 |     pub fn new(input: &str, pos: usize) -> Option<Position<'_>> {
[INFO] [stdout]    |                                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/span.rs:57:23
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn new(input: &str, start: usize, end: usize) -> Option<Span> {
[INFO] [stdout]    |                       ^^^^ the lifetime is elided here          ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn new(input: &str, start: usize, end: usize) -> Option<Span<'_>> {
[INFO] [stdout]    |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/iterators/pair.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 |     input: &str,
[INFO] [stdout]    |            ^^^^ the lifetime is elided here
[INFO] [stdout] 50 |     start: usize,
[INFO] [stdout] 51 | ) -> Pair<R> {
[INFO] [stdout]    |      ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 51 | ) -> Pair<'_, R> {
[INFO] [stdout]    |           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/macros.rs:236:33
[INFO] [stdout]     |
[INFO] [stdout] 236 |                                   format!("expected end of input, but found {:?}", rest)
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 366 | /         parses_to! {
[INFO] [stdout] 367 | |             parser: AbcParser,
[INFO] [stdout] 368 | |             input: "abcde",
[INFO] [stdout] 369 | |             rule: Rule::a,
[INFO] [stdout] ...   |
[INFO] [stdout] 376 | |         };
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: this warning originates in the macro `parses_to` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 236 -                                 format!("expected end of input, but found {:?}", rest)
[INFO] [stdout] 236 +                                 "expected end of input, but found {:?}", rest
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/span.rs:202:18
[INFO] [stdout]     |
[INFO] [stdout] 202 |     pub fn lines(&self) -> Lines {
[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] 202 |     pub fn lines(&self) -> Lines<'_> {
[INFO] [stdout]     |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/macros.rs:232:33
[INFO] [stdout]     |
[INFO] [stdout] 232 |                                   format!("expected end of input, but found {:?}", rest)
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 382 | /         parses_to! {
[INFO] [stdout] 383 | |             parser: AbcParser,
[INFO] [stdout] 384 | |             input: "abcde",
[INFO] [stdout] 385 | |             rule: Rule::a,
[INFO] [stdout] ...   |
[INFO] [stdout] 391 | |         };
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: this warning originates in the macro `parses_to` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 232 -                                 format!("expected end of input, but found {:?}", rest)
[INFO] [stdout] 232 +                                 "expected end of input, but found {:?}", rest
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/iterators/tokens.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 38 |     input: &str,
[INFO] [stdout]    |            ^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 41 | ) -> Tokens<R> {
[INFO] [stdout]    |      ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 41 | ) -> Tokens<'_, R> {
[INFO] [stdout]    |             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/macros.rs:236:33
[INFO] [stdout]     |
[INFO] [stdout] 236 |                                   format!("expected end of input, but found {:?}", rest)
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 382 | /         parses_to! {
[INFO] [stdout] 383 | |             parser: AbcParser,
[INFO] [stdout] 384 | |             input: "abcde",
[INFO] [stdout] 385 | |             rule: Rule::a,
[INFO] [stdout] ...   |
[INFO] [stdout] 391 | |         };
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: this warning originates in the macro `parses_to` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 236 -                                 format!("expected end of input, but found {:?}", rest)
[INFO] [stdout] 236 +                                 "expected end of input, but found {:?}", rest
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/macros.rs:232:33
[INFO] [stdout]     |
[INFO] [stdout] 232 |                                   format!("expected end of input, but found {:?}", rest)
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 397 | /         parses_to! {
[INFO] [stdout] 398 | |             parser: AbcParser,
[INFO] [stdout] 399 | |             input: "abcde",
[INFO] [stdout] 400 | |             rule: Rule::a,
[INFO] [stdout] 401 | |             tokens: []
[INFO] [stdout] 402 | |         };
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: this warning originates in the macro `parses_to` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 232 -                                 format!("expected end of input, but found {:?}", rest)
[INFO] [stdout] 232 +                                 "expected end of input, but found {:?}", rest
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/macros.rs:236:33
[INFO] [stdout]     |
[INFO] [stdout] 236 |                                   format!("expected end of input, but found {:?}", rest)
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 397 | /         parses_to! {
[INFO] [stdout] 398 | |             parser: AbcParser,
[INFO] [stdout] 399 | |             input: "abcde",
[INFO] [stdout] 400 | |             rule: Rule::a,
[INFO] [stdout] 401 | |             tokens: []
[INFO] [stdout] 402 | |         };
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: this warning originates in the macro `parses_to` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 236 -                                 format!("expected end of input, but found {:?}", rest)
[INFO] [stdout] 236 +                                 "expected end of input, but found {:?}", rest
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/parser.rs:17:30
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn parse(rule: R, input: &str) -> Result<Pairs<R>, Error<R>>;
[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] 17 |     fn parse(rule: R, input: &str) -> Result<Pairs<'_, R>, Error<R>>;
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::cmp::Ord::cmp` that must be used
[INFO] [stdout]    --> src/position.rs:608:9
[INFO] [stdout]     |
[INFO] [stdout] 608 |         pos1.cmp(&pos2);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 608 |         let _ = pos1.cmp(&pos2);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.81s
[INFO] running `Command { std: "docker" "inspect" "483dc67301fe3eb9f8e2899ee418e13d59654163f0cb552ef0e9e6d3fc769936", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "483dc67301fe3eb9f8e2899ee418e13d59654163f0cb552ef0e9e6d3fc769936", kill_on_drop: false }`
[INFO] [stdout] 483dc67301fe3eb9f8e2899ee418e13d59654163f0cb552ef0e9e6d3fc769936
