[INFO] fetching crate rx509 0.2.1... [INFO] checking rx509-0.2.1 against master#cf38b8e663f15db10ce49d7bbce02c99fc3dbc0c for pr-143170 [INFO] extracting crate rx509 0.2.1 into /workspace/builds/worker-4-tc1/source [INFO] started tweaking crates.io crate rx509 0.2.1 [INFO] finished tweaking crates.io crate rx509 0.2.1 [INFO] tweaked toml for crates.io crate rx509 0.2.1 written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate rx509 0.2.1 on toolchain cf38b8e663f15db10ce49d7bbce02c99fc3dbc0c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cf38b8e663f15db10ce49d7bbce02c99fc3dbc0c" "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" "+cf38b8e663f15db10ce49d7bbce02c99fc3dbc0c" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cf38b8e663f15db10ce49d7bbce02c99fc3dbc0c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+cf38b8e663f15db10ce49d7bbce02c99fc3dbc0c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 13d10d73b6ab73b54a9d9b83b89235491699964045bf2f55ee54e40c39463774 [INFO] running `Command { std: "docker" "start" "-a" "13d10d73b6ab73b54a9d9b83b89235491699964045bf2f55ee54e40c39463774", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "13d10d73b6ab73b54a9d9b83b89235491699964045bf2f55ee54e40c39463774", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "13d10d73b6ab73b54a9d9b83b89235491699964045bf2f55ee54e40c39463774", kill_on_drop: false }` [INFO] [stdout] 13d10d73b6ab73b54a9d9b83b89235491699964045bf2f55ee54e40c39463774 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+cf38b8e663f15db10ce49d7bbce02c99fc3dbc0c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ea87afb30d8772eb5021e45a4aad756b60cad36bcd4bb162e93c1f8be90b414f [INFO] running `Command { std: "docker" "start" "-a" "ea87afb30d8772eb5021e45a4aad756b60cad36bcd4bb162e93c1f8be90b414f", kill_on_drop: false }` [INFO] [stderr] Checking rx509 v0.2.1 (/opt/rustwide/workdir) [INFO] [stdout] error: couldn't read `src/der/../../../certs/512b-rsa-example-cert.der`: No such file or directory (os error 2) [INFO] [stdout] --> src/der/parse_all.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | include_bytes!("../../../certs/512b-rsa-example-cert.der"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read `src/der/../../../certs/ed25519-example-cert.der`: No such file or directory (os error 2) [INFO] [stdout] --> src/der/parse_all.rs:76:13 [INFO] [stdout] | [INFO] [stdout] 76 | include_bytes!("../../../certs/ed25519-example-cert.der"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read `src/x509/../../../certs/512b-rsa-example-cert.der`: No such file or directory (os error 2) [INFO] [stdout] --> src/x509/tests.rs:5:24 [INFO] [stdout] | [INFO] [stdout] 5 | Certificate::parse(include_bytes!("../../../certs/512b-rsa-example-cert.der")).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read `src/x509/../../../certs/cert_with_generalized_time.der`: No such file or directory (os error 2) [INFO] [stdout] --> src/x509/tests.rs:10:24 [INFO] [stdout] | [INFO] [stdout] 10 | Certificate::parse(include_bytes!( [INFO] [stdout] | ________________________^ [INFO] [stdout] 11 | | "../../../certs/cert_with_generalized_time.der" [INFO] [stdout] 12 | | )) [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read `src/x509/../../../certs/ed25519-example-cert.der`: No such file or directory (os error 2) [INFO] [stdout] --> src/x509/tests.rs:18:24 [INFO] [stdout] | [INFO] [stdout] 18 | Certificate::parse(include_bytes!("../../../certs/ed25519-example-cert.der")).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read `src/x509/../../../certs/google_root_cert.cer`: No such file or directory (os error 2) [INFO] [stdout] --> src/x509/tests.rs:23:24 [INFO] [stdout] | [INFO] [stdout] 23 | Certificate::parse(include_bytes!("../../../certs/google_root_cert.cer")).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/der/types.rs:58:24 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn new(bytes: &'a [u8]) -> ASNInteger { [INFO] [stdout] | ^^ ---------- the lifetime gets resolved as `'a` [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 consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 58 | pub fn new(bytes: &'a [u8]) -> ASNInteger<'a> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/der/parser.rs:10:24 [INFO] [stdout] | [INFO] [stdout] 10 | fn parse_seq(contents: &[u8]) -> ASNResult { [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] 10 | fn parse_seq(contents: &[u8]) -> ASNResult<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/der/parser.rs:14:24 [INFO] [stdout] | [INFO] [stdout] 14 | fn parse_set(contents: &[u8]) -> ASNResult { [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] 14 | fn parse_set(contents: &[u8]) -> ASNResult<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/der/parser.rs:18:25 [INFO] [stdout] | [INFO] [stdout] 18 | fn parse_null(contents: &[u8]) -> ASNResult { [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] 18 | fn parse_null(contents: &[u8]) -> ASNResult<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/der/parser.rs:26:28 [INFO] [stdout] | [INFO] [stdout] 26 | fn parse_boolean(contents: &[u8]) -> ASNResult { [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] 26 | fn parse_boolean(contents: &[u8]) -> ASNResult<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/der/parser.rs:35:28 [INFO] [stdout] | [INFO] [stdout] 35 | fn parse_integer(contents: &[u8]) -> ASNResult { [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] 35 | fn parse_integer(contents: &[u8]) -> ASNResult<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/der/parser.rs:49:29 [INFO] [stdout] | [INFO] [stdout] 49 | fn parse_utc_time(contents: &[u8]) -> ASNResult { [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] 49 | fn parse_utc_time(contents: &[u8]) -> ASNResult<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/der/parser.rs:53:37 [INFO] [stdout] | [INFO] [stdout] 53 | fn parse_generalized_time(contents: &[u8]) -> ASNResult { [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] 53 | fn parse_generalized_time(contents: &[u8]) -> ASNResult<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/der/parser.rs:94:25 [INFO] [stdout] | [INFO] [stdout] 94 | fn parse_time(contents: &[u8], time_type: TimeType) -> ASNResult { [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] 94 | fn parse_time(contents: &[u8], time_type: TimeType) -> ASNResult<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/der/parser.rs:141:51 [INFO] [stdout] | [INFO] [stdout] 141 | fn parse_string ASNType>(contents: &[u8], create: T) -> ASNResult { [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] 141 | fn parse_string ASNType>(contents: &[u8], create: T) -> ASNResult<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/der/parser.rs:148:31 [INFO] [stdout] | [INFO] [stdout] 148 | fn parse_bit_string(contents: &[u8]) -> ASNResult { [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] 148 | fn parse_bit_string(contents: &[u8]) -> ASNResult<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/der/parser.rs:164:38 [INFO] [stdout] | [INFO] [stdout] 164 | fn parse_object_identifier(contents: &[u8]) -> ASNResult { [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] 164 | fn parse_object_identifier(contents: &[u8]) -> ASNResult<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/der/parser.rs:338:31 [INFO] [stdout] | [INFO] [stdout] 338 | pub(crate) fn new(input: &'a [u8]) -> Parser { [INFO] [stdout] | ^^ ------ the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 338 | pub(crate) fn new(input: &'a [u8]) -> Parser<'a> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/der/parser.rs:344:49 [INFO] [stdout] | [INFO] [stdout] 344 | pub(crate) fn unwrap_outer_sequence(input: &'a [u8]) -> Result { [INFO] [stdout] | ^^ ------ the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 344 | pub(crate) fn unwrap_outer_sequence(input: &'a [u8]) -> Result, ASNErrorVariant> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/x509/mod.rs:19:24 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn new(bytes: &'a [u8], value: T) -> Constructed { [INFO] [stdout] | ^^ -------------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 19 | pub fn new(bytes: &'a [u8], value: T) -> Constructed<'a, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/x509/mod.rs:320:18 [INFO] [stdout] | [INFO] [stdout] 320 | pub fn parse(&self) -> Result { [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] 320 | pub fn parse(&self) -> Result, ASNError> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/x509/mod.rs:351:21 [INFO] [stdout] | [INFO] [stdout] 351 | fn parse(input: &[u8]) -> Result { [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] 351 | fn parse(input: &[u8]) -> Result, ASNErrorVariant> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/x509/mod.rs:369:25 [INFO] [stdout] | [INFO] [stdout] 369 | pub fn parse(input: &[u8]) -> Result { [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] 369 | pub fn parse(input: &[u8]) -> Result, ASNError> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/x509/mod.rs:396:21 [INFO] [stdout] | [INFO] [stdout] 396 | fn parse(input: &[u8]) -> Result { [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] 396 | fn parse(input: &[u8]) -> Result, ASNErrorVariant> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/x509/mod.rs:442:21 [INFO] [stdout] | [INFO] [stdout] 442 | fn parse(input: &[u8]) -> Result, ASNErrorVariant> { [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] 442 | fn parse(input: &[u8]) -> Result>, ASNErrorVariant> { [INFO] [stdout] | +++ ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/x509/ext.rs:45:26 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn parse(input: &'a [u8]) -> Result { [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 45 | pub fn parse(input: &'a [u8]) -> Result, ASNError> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/x509/ext.rs:126:21 [INFO] [stdout] | [INFO] [stdout] 126 | fn parse(input: &[u8]) -> Result { [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] 126 | fn parse(input: &[u8]) -> Result, ASNErrorVariant> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/x509/ext.rs:282:21 [INFO] [stdout] | [INFO] [stdout] 282 | fn parse(input: &[u8]) -> Result { [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] 282 | fn parse(input: &[u8]) -> Result, ASNErrorVariant> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `rx509` (lib test) due to 6 previous errors [INFO] running `Command { std: "docker" "inspect" "ea87afb30d8772eb5021e45a4aad756b60cad36bcd4bb162e93c1f8be90b414f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ea87afb30d8772eb5021e45a4aad756b60cad36bcd4bb162e93c1f8be90b414f", kill_on_drop: false }` [INFO] [stdout] ea87afb30d8772eb5021e45a4aad756b60cad36bcd4bb162e93c1f8be90b414f