[INFO] cloning repository https://github.com/kongo2002/protots [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kongo2002/protots" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkongo2002%2Fprotots", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkongo2002%2Fprotots'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9982b634ab5c2d2e6d5b54dd1308ce3b47dece8b [INFO] testing kongo2002/protots against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkongo2002%2Fprotots" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/kongo2002/protots [INFO] finished tweaking git repo https://github.com/kongo2002/protots [INFO] tweaked toml for git repo https://github.com/kongo2002/protots written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/kongo2002/protots on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/kongo2002/protots 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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 612a7a03f4e0baddda92bd91022396d78f6f787e90e8524d1b60a90697ac4179 [INFO] running `Command { std: "docker" "start" "-a" "612a7a03f4e0baddda92bd91022396d78f6f787e90e8524d1b60a90697ac4179", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "612a7a03f4e0baddda92bd91022396d78f6f787e90e8524d1b60a90697ac4179", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "612a7a03f4e0baddda92bd91022396d78f6f787e90e8524d1b60a90697ac4179", kill_on_drop: false }` [INFO] [stdout] 612a7a03f4e0baddda92bd91022396d78f6f787e90e8524d1b60a90697ac4179 [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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6a017cea6868ba25c85f35a794312eccf0a0f820a59575a74932c0a4cdfef7c8 [INFO] running `Command { std: "docker" "start" "-a" "6a017cea6868ba25c85f35a794312eccf0a0f820a59575a74932c0a4cdfef7c8", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.67 [INFO] [stderr] Compiling thiserror v1.0.49 [INFO] [stderr] Compiling memchr v2.6.4 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling syn v2.0.37 [INFO] [stderr] Compiling thiserror-impl v1.0.49 [INFO] [stderr] Compiling protots v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: field `syntax` is never read [INFO] [stdout] --> src/parser.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct Proto { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 34 | pub file: String, [INFO] [stdout] 35 | pub syntax: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Proto` 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: field `idx` is never read [INFO] [stdout] --> src/parser.rs:50:11 [INFO] [stdout] | [INFO] [stdout] 50 | Idx { idx: Vec }, [INFO] [stdout] | --- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ReservedField` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/parser.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 51 | Name { name: Vec }, [INFO] [stdout] | ---- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ReservedField` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `idx` is never read [INFO] [stdout] --> src/parser.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 56 | Single { [INFO] [stdout] | ------ field in this variant [INFO] [stdout] ... [INFO] [stdout] 59 | idx: i32, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Field` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `idx` is never read [INFO] [stdout] --> src/parser.rs:66:9 [INFO] [stdout] | [INFO] [stdout] 62 | Map { [INFO] [stdout] | --- field in this variant [INFO] [stdout] ... [INFO] [stdout] 66 | idx: i32, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Field` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:74:14 [INFO] [stdout] | [INFO] [stdout] 74 | Reserved(ReservedField), [INFO] [stdout] | -------- ^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Field` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 74 - Reserved(ReservedField), [INFO] [stdout] 74 + Reserved(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/parser.rs:75:16 [INFO] [stdout] | [INFO] [stdout] 75 | Extensions(String, String), [INFO] [stdout] | ---------- ^^^^^^ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Field` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 75 - Extensions(String, String), [INFO] [stdout] 75 + Extensions((), ()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 76 | Option(Option), [INFO] [stdout] | ------ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Field` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 76 - Option(Option), [INFO] [stdout] 76 + Option(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name`, `request`, `stream_request`, `response`, and `stream_response` are never read [INFO] [stdout] --> src/parser.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 80 | pub struct Rpc { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] 81 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 82 | pub request: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 83 | pub stream_request: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 84 | pub response: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 85 | pub stream_response: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Rpc` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `idx` is never read [INFO] [stdout] --> src/parser.rs:91:16 [INFO] [stdout] | [INFO] [stdout] 91 | Reserved { idx: i32 }, [INFO] [stdout] | -------- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `EnumValue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/parser.rs:96:11 [INFO] [stdout] | [INFO] [stdout] 96 | Str { value: String }, [INFO] [stdout] | --- ^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `OptionValue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/parser.rs:97:16 [INFO] [stdout] | [INFO] [stdout] 97 | Constant { value: String }, [INFO] [stdout] | -------- ^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `OptionValue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/parser.rs:98:11 [INFO] [stdout] | [INFO] [stdout] 98 | Num { value: i32 }, [INFO] [stdout] | --- ^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `OptionValue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/parser.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 99 | Bool { value: bool }, [INFO] [stdout] | ---- ^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `OptionValue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:100:11 [INFO] [stdout] | [INFO] [stdout] 100 | Array(Vec), [INFO] [stdout] | ----- ^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `OptionValue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 100 - Array(Vec), [INFO] [stdout] 100 + Array(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `value` are never read [INFO] [stdout] --> src/parser.rs:118:9 [INFO] [stdout] | [INFO] [stdout] 117 | pub struct Option { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 118 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 119 | pub value: OptionValue, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Option` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:124:9 [INFO] [stdout] | [INFO] [stdout] 124 | Rpc(Rpc), [INFO] [stdout] | --- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ServiceNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 124 - Rpc(Rpc), [INFO] [stdout] 124 + Rpc(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:125:12 [INFO] [stdout] | [INFO] [stdout] 125 | Option(Option), [INFO] [stdout] | ------ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ServiceNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 125 - Option(Option), [INFO] [stdout] 125 + Option(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:132:12 [INFO] [stdout] | [INFO] [stdout] 132 | Option(Option), [INFO] [stdout] | ------ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Elem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 132 - Option(Option), [INFO] [stdout] 132 + Option(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/parser.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 133 | Import { [INFO] [stdout] | ------ field in this variant [INFO] [stdout] 134 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Elem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/parser.rs:137:9 [INFO] [stdout] | [INFO] [stdout] 136 | Package { [INFO] [stdout] | ------- field in this variant [INFO] [stdout] 137 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Elem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `fields` are never read [INFO] [stdout] --> src/parser.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 139 | Extend { [INFO] [stdout] | ------ fields in this variant [INFO] [stdout] 140 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 141 | fields: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Elem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `nodes` are never read [INFO] [stdout] --> src/parser.rs:144:9 [INFO] [stdout] | [INFO] [stdout] 143 | Service { [INFO] [stdout] | ------- fields in this variant [INFO] [stdout] 144 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 145 | nodes: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Elem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/parser.rs:149:18 [INFO] [stdout] | [INFO] [stdout] 149 | fn import(input: &str) -> ParserResult { [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] 149 | fn import(input: &str) -> ParserResult<'_, Elem> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/parser.rs:162:19 [INFO] [stdout] | [INFO] [stdout] 162 | fn package(input: &str) -> ParserResult { [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] 162 | fn package(input: &str) -> ParserResult<'_, Elem> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/parser.rs:175:28 [INFO] [stdout] | [INFO] [stdout] 175 | fn option_map_value(input: &str) -> ParserResult<&str> { [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | | | [INFO] [stdout] | | | the same lifetime is elided here [INFO] [stdout] | | the same lifetime is hidden 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] 175 | fn option_map_value(input: &str) -> ParserResult<'_, &str> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/parser.rs:184:40 [INFO] [stdout] | [INFO] [stdout] 184 | fn option_value<'a>(input: &'a str) -> ParserResult { [INFO] [stdout] | -- ^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is named here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 184 | fn option_value<'a>(input: &'a str) -> ParserResult<'a, OptionValue> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/parser.rs:227:23 [INFO] [stdout] | [INFO] [stdout] 227 | fn option_name(input: &str) -> ParserResult<&str> { [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | | | [INFO] [stdout] | | | the same lifetime is elided here [INFO] [stdout] | | the same lifetime is hidden 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] 227 | fn option_name(input: &str) -> ParserResult<'_, &str> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/parser.rs:235:18 [INFO] [stdout] | [INFO] [stdout] 235 | fn option(input: &str) -> ParserResult