[INFO] fetching crate treebender 0.1.1... [INFO] checking treebender-0.1.1 against try#998b6603a58e47f42ccce7a67943234e96b6839e for pr-143170 [INFO] extracting crate treebender 0.1.1 into /workspace/builds/worker-1-tc2/source [INFO] started tweaking crates.io crate treebender 0.1.1 [INFO] finished tweaking crates.io crate treebender 0.1.1 [INFO] tweaked toml for crates.io crate treebender 0.1.1 written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate treebender 0.1.1 on toolchain 998b6603a58e47f42ccce7a67943234e96b6839e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate treebender 0.1.1 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" "+998b6603a58e47f42ccce7a67943234e96b6839e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4911585594eccbf86262a2a2883bbc5c19e89611e39e145a84307fd241aef6e5 [INFO] running `Command { std: "docker" "start" "-a" "4911585594eccbf86262a2a2883bbc5c19e89611e39e145a84307fd241aef6e5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4911585594eccbf86262a2a2883bbc5c19e89611e39e145a84307fd241aef6e5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4911585594eccbf86262a2a2883bbc5c19e89611e39e145a84307fd241aef6e5", kill_on_drop: false }` [INFO] [stdout] 4911585594eccbf86262a2a2883bbc5c19e89611e39e145a84307fd241aef6e5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3bfe774c0d61adc98674357a8b285c1f64cfdfabcb5c0402d5164cadd4af174b [INFO] running `Command { std: "docker" "start" "-a" "3bfe774c0d61adc98674357a8b285c1f64cfdfabcb5c0402d5164cadd4af174b", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking regex-syntax v0.6.17 [INFO] [stderr] Checking thread_local v1.0.1 [INFO] [stderr] Checking aho-corasick v0.7.10 [INFO] [stderr] Checking regex v1.3.7 [INFO] [stderr] Checking treebender v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/featurestructure.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | fn borrow(&self) -> Ref { [INFO] [stdout] | ^^^^^ --------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 190 | fn borrow(&self) -> Ref<'_, Node> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/featurestructure.rs:194:17 [INFO] [stdout] | [INFO] [stdout] 194 | fn borrow_mut(&self) -> RefMut { [INFO] [stdout] | ^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 194 | fn borrow_mut(&self) -> RefMut<'_, Node> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:66:30 [INFO] [stdout] | [INFO] [stdout] 66 | fn optional_char(c: char, s: &str) -> Infallible> { [INFO] [stdout] | ^^^^ ------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 66 | fn optional_char(c: char, s: &str) -> Infallible<'_, Option> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:82:28 [INFO] [stdout] | [INFO] [stdout] 82 | fn needed_char(c: char, s: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ----------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 82 | fn needed_char(c: char, s: &str) -> ParseResult<'_, char> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:103:18 [INFO] [stdout] | [INFO] [stdout] 103 | fn parse_name(s: &str) -> ParseResult<&str> { [INFO] [stdout] | ^^^^ ----------------- [INFO] [stdout] | | | | [INFO] [stdout] | | | the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 103 | fn parse_name(s: &str) -> ParseResult<'_, &str> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:109:20 [INFO] [stdout] | [INFO] [stdout] 109 | fn parse_dotted(s: &str) -> ParseResult<&str> { [INFO] [stdout] | ^^^^ ----------------- [INFO] [stdout] | | | | [INFO] [stdout] | | | the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 109 | fn parse_dotted(s: &str) -> ParseResult<'_, &str> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:115:17 [INFO] [stdout] | [INFO] [stdout] 115 | fn parse_tag(s: &str) -> ParseResult> { [INFO] [stdout] | ^^^^ --------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 115 | fn parse_tag(s: &str) -> ParseResult<'_, Option> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:127:27 [INFO] [stdout] | [INFO] [stdout] 127 | fn parse_feature_value(s: &str) -> ParseResult<(Option, NodeRef)> { [INFO] [stdout] | ^^^^ -------------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 127 | fn parse_feature_value(s: &str) -> ParseResult<'_, (Option, NodeRef)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:146:21 [INFO] [stdout] | [INFO] [stdout] 146 | fn parse_feature(s: &str) -> ParseResult { [INFO] [stdout] | ^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 146 | fn parse_feature(s: &str) -> ParseResult<'_, Feature> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:165:30 [INFO] [stdout] | [INFO] [stdout] 165 | fn parse_featurestructure(s: &str) -> ParseResult> { [INFO] [stdout] | ^^^^ ------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 165 | fn parse_featurestructure(s: &str) -> ParseResult<'_, Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:179:24 [INFO] [stdout] | [INFO] [stdout] 179 | fn parse_production(s: &str) -> ParseResult<(Production, Vec)> { [INFO] [stdout] | ^^^^ --------------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 179 | fn parse_production(s: &str) -> ParseResult<'_, (Production, Vec)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:210:25 [INFO] [stdout] | [INFO] [stdout] 210 | fn parse_nonterminal(s: &str) -> ParseResult<(String, Vec)> { [INFO] [stdout] | ^^^^ ----------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 210 | fn parse_nonterminal(s: &str) -> ParseResult<'_, (String, Vec)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:220:18 [INFO] [stdout] | [INFO] [stdout] 220 | fn parse_rule(s: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ----------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 220 | fn parse_rule(s: &str) -> ParseResult<'_, Rule> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:288:19 [INFO] [stdout] | [INFO] [stdout] 288 | fn parse_rules(s: &str) -> ParseResult> { [INFO] [stdout] | ^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 288 | fn parse_rules(s: &str) -> ParseResult<'_, Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/featurestructure.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | fn borrow(&self) -> Ref { [INFO] [stdout] | ^^^^^ --------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 190 | fn borrow(&self) -> Ref<'_, Node> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/featurestructure.rs:194:17 [INFO] [stdout] | [INFO] [stdout] 194 | fn borrow_mut(&self) -> RefMut { [INFO] [stdout] | ^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 194 | fn borrow_mut(&self) -> RefMut<'_, Node> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:66:30 [INFO] [stdout] | [INFO] [stdout] 66 | fn optional_char(c: char, s: &str) -> Infallible> { [INFO] [stdout] | ^^^^ ------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 66 | fn optional_char(c: char, s: &str) -> Infallible<'_, Option> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:82:28 [INFO] [stdout] | [INFO] [stdout] 82 | fn needed_char(c: char, s: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ----------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 82 | fn needed_char(c: char, s: &str) -> ParseResult<'_, char> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:103:18 [INFO] [stdout] | [INFO] [stdout] 103 | fn parse_name(s: &str) -> ParseResult<&str> { [INFO] [stdout] | ^^^^ ----------------- [INFO] [stdout] | | | | [INFO] [stdout] | | | the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 103 | fn parse_name(s: &str) -> ParseResult<'_, &str> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:109:20 [INFO] [stdout] | [INFO] [stdout] 109 | fn parse_dotted(s: &str) -> ParseResult<&str> { [INFO] [stdout] | ^^^^ ----------------- [INFO] [stdout] | | | | [INFO] [stdout] | | | the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 109 | fn parse_dotted(s: &str) -> ParseResult<'_, &str> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:115:17 [INFO] [stdout] | [INFO] [stdout] 115 | fn parse_tag(s: &str) -> ParseResult> { [INFO] [stdout] | ^^^^ --------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 115 | fn parse_tag(s: &str) -> ParseResult<'_, Option> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:127:27 [INFO] [stdout] | [INFO] [stdout] 127 | fn parse_feature_value(s: &str) -> ParseResult<(Option, NodeRef)> { [INFO] [stdout] | ^^^^ -------------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 127 | fn parse_feature_value(s: &str) -> ParseResult<'_, (Option, NodeRef)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:146:21 [INFO] [stdout] | [INFO] [stdout] 146 | fn parse_feature(s: &str) -> ParseResult { [INFO] [stdout] | ^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 146 | fn parse_feature(s: &str) -> ParseResult<'_, Feature> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:165:30 [INFO] [stdout] | [INFO] [stdout] 165 | fn parse_featurestructure(s: &str) -> ParseResult> { [INFO] [stdout] | ^^^^ ------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 165 | fn parse_featurestructure(s: &str) -> ParseResult<'_, Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:179:24 [INFO] [stdout] | [INFO] [stdout] 179 | fn parse_production(s: &str) -> ParseResult<(Production, Vec)> { [INFO] [stdout] | ^^^^ --------------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 179 | fn parse_production(s: &str) -> ParseResult<'_, (Production, Vec)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:210:25 [INFO] [stdout] | [INFO] [stdout] 210 | fn parse_nonterminal(s: &str) -> ParseResult<(String, Vec)> { [INFO] [stdout] | ^^^^ ----------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 210 | fn parse_nonterminal(s: &str) -> ParseResult<'_, (String, Vec)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:220:18 [INFO] [stdout] | [INFO] [stdout] 220 | fn parse_rule(s: &str) -> ParseResult { [INFO] [stdout] | ^^^^ ----------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 220 | fn parse_rule(s: &str) -> ParseResult<'_, Rule> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse_grammar.rs:288:19 [INFO] [stdout] | [INFO] [stdout] 288 | fn parse_rules(s: &str) -> ParseResult> { [INFO] [stdout] | ^^^^ ---------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 288 | fn parse_rules(s: &str) -> ParseResult<'_, Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.98s [INFO] running `Command { std: "docker" "inspect" "3bfe774c0d61adc98674357a8b285c1f64cfdfabcb5c0402d5164cadd4af174b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3bfe774c0d61adc98674357a8b285c1f64cfdfabcb5c0402d5164cadd4af174b", kill_on_drop: false }` [INFO] [stdout] 3bfe774c0d61adc98674357a8b285c1f64cfdfabcb5c0402d5164cadd4af174b