[INFO] fetching crate wirefilter-engine 0.6.1... [INFO] testing wirefilter-engine-0.6.1 against try#b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b for pr-145330-1 [INFO] extracting crate wirefilter-engine 0.6.1 into /workspace/builds/worker-4-tc2/source [INFO] started tweaking crates.io crate wirefilter-engine 0.6.1 [INFO] finished tweaking crates.io crate wirefilter-engine 0.6.1 [INFO] tweaked toml for crates.io crate wirefilter-engine 0.6.1 written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate wirefilter-engine 0.6.1 on toolchain b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "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" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 80 packages to latest compatible versions [INFO] [stderr] Adding cfg-if v0.1.10 (available: v1.0.3) [INFO] [stderr] Adding cidr v0.1.1 (available: v0.3.1) [INFO] [stderr] Adding criterion v0.2.11 (available: v0.7.0) [INFO] [stderr] Adding indexmap v1.9.3 (available: v2.11.4) [INFO] [stderr] Adding indoc v0.3.6 (available: v2.0.6) [INFO] [stderr] Adding indoc-impl v0.3.6 (available: v0.3.7) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "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-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9442b92264249835f7e05c0535420e8d455a73101376ef5eaa3c85dfd6ac9b51 [INFO] running `Command { std: "docker" "start" "-a" "9442b92264249835f7e05c0535420e8d455a73101376ef5eaa3c85dfd6ac9b51", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9442b92264249835f7e05c0535420e8d455a73101376ef5eaa3c85dfd6ac9b51", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9442b92264249835f7e05c0535420e8d455a73101376ef5eaa3c85dfd6ac9b51", kill_on_drop: false }` [INFO] [stdout] 9442b92264249835f7e05c0535420e8d455a73101376ef5eaa3c85dfd6ac9b51 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9427652ffa16d3a8bf4df810c382ab2d9fcafd64f7e51885069edfd3de4d2cb8 [INFO] running `Command { std: "docker" "start" "-a" "9427652ffa16d3a8bf4df810c382ab2d9fcafd64f7e51885069edfd3de4d2cb8", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling object v0.37.3 [INFO] [stderr] Compiling bitstring v0.1.2 [INFO] [stderr] Compiling memmem v0.1.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Compiling failure_derive v0.1.8 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling backtrace v0.3.76 [INFO] [stderr] Compiling cidr v0.1.1 [INFO] [stderr] Compiling failure v0.1.8 [INFO] [stderr] Compiling wirefilter-engine v0.6.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lex.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_LexErrorKind` [INFO] [stdout] 9 | pub enum LexErrorKind { [INFO] [stdout] | ------------ `LexErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lex.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_LexErrorKind` [INFO] [stdout] 9 | pub enum LexErrorKind { [INFO] [stdout] | ------------ `LexErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/scheme.rs:81:28 [INFO] [stdout] | [INFO] [stdout] 81 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_UnknownFieldError` [INFO] [stdout] 82 | #[fail(display = "unknown field")] [INFO] [stdout] 83 | pub struct UnknownFieldError; [INFO] [stdout] | ----------------- `UnknownFieldError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/scheme.rs:81:28 [INFO] [stdout] | [INFO] [stdout] 81 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_UnknownFieldError` [INFO] [stdout] 82 | #[fail(display = "unknown field")] [INFO] [stdout] 83 | pub struct UnknownFieldError; [INFO] [stdout] | ----------------- `UnknownFieldError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/scheme.rs:86:28 [INFO] [stdout] | [INFO] [stdout] 86 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FieldRedefinitionError` [INFO] [stdout] 87 | #[fail(display = "attempt to redefine field {}", _0)] [INFO] [stdout] 88 | pub struct FieldRedefinitionError(String); [INFO] [stdout] | ---------------------- `FieldRedefinitionError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/scheme.rs:86:28 [INFO] [stdout] | [INFO] [stdout] 86 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FieldRedefinitionError` [INFO] [stdout] 87 | #[fail(display = "attempt to redefine field {}", _0)] [INFO] [stdout] 88 | pub struct FieldRedefinitionError(String); [INFO] [stdout] | ---------------------- `FieldRedefinitionError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/combined_expr.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / lex_enum!(#[derive(PartialOrd, Ord)] CombiningOp { [INFO] [stdout] 7 | | "or" | "||" => Or, [INFO] [stdout] 8 | | "xor" | "^^" => Xor, [INFO] [stdout] 9 | | "and" | "&&" => And, [INFO] [stdout] 10 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/field_expr.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | / lex_enum!(#[repr(u8)] OrderingOp { [INFO] [stdout] 20 | | "eq" | "==" => Equal = EQUAL, [INFO] [stdout] 21 | | "ne" | "!=" => NotEqual = LESS | GREATER, [INFO] [stdout] 22 | | "ge" | ">=" => GreaterThanEqual = GREATER | EQUAL, [INFO] [stdout] ... | [INFO] [stdout] 25 | | "lt" | "<" => LessThan = LESS, [INFO] [stdout] 26 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/field_expr.rs:48:1 [INFO] [stdout] | [INFO] [stdout] 48 | / lex_enum!(IntOp { [INFO] [stdout] 49 | | "&" | "bitwise_and" => BitwiseAnd, [INFO] [stdout] 50 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/field_expr.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / lex_enum!(BytesOp { [INFO] [stdout] 53 | | "contains" => Contains, [INFO] [stdout] 54 | | "~" | "matches" => Matches, [INFO] [stdout] 55 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/field_expr.rs:57:1 [INFO] [stdout] | [INFO] [stdout] 57 | / lex_enum!(ComparisonOp { [INFO] [stdout] 58 | | "in" => In, [INFO] [stdout] 59 | | OrderingOp => Ordering, [INFO] [stdout] 60 | | IntOp => Int, [INFO] [stdout] 61 | | BytesOp => Bytes, [INFO] [stdout] 62 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/simple_expr.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / lex_enum!(UnaryOp { [INFO] [stdout] 7 | | "not" | "!" => Not, [INFO] [stdout] 8 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/execution_context.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FieldValueTypeMismatchError` [INFO] [stdout] ... [INFO] [stdout] 12 | pub struct FieldValueTypeMismatchError { [INFO] [stdout] | --------------------------- `FieldValueTypeMismatchError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/execution_context.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FieldValueTypeMismatchError` [INFO] [stdout] ... [INFO] [stdout] 12 | pub struct FieldValueTypeMismatchError { [INFO] [stdout] | --------------------------- `FieldValueTypeMismatchError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/filter.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SchemeMismatchError` [INFO] [stdout] 8 | #[fail(display = "execution context doesn't match the scheme with which filter was parsed")] [INFO] [stdout] 9 | pub struct SchemeMismatchError; [INFO] [stdout] | ------------------- `SchemeMismatchError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/filter.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_SchemeMismatchError` [INFO] [stdout] 8 | #[fail(display = "execution context doesn't match the scheme with which filter was parsed")] [INFO] [stdout] 9 | pub struct SchemeMismatchError; [INFO] [stdout] | ------------------- `SchemeMismatchError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/rhs_types/bytes.rs:101:1 [INFO] [stdout] | [INFO] [stdout] 101 | / lex_enum!(ByteSeparator { [INFO] [stdout] 102 | | ":" => Colon, [INFO] [stdout] 103 | | "-" => Dash, [INFO] [stdout] 104 | | "." => Dot, [INFO] [stdout] 105 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/rhs_types/int.rs:10:38 [INFO] [stdout] | [INFO] [stdout] 10 | fn parse_number<'i>((input, rest): (&'i str, &'i str), radix: u32) -> LexResult<'_, i32> { [INFO] [stdout] | ^^ ^^ the lifetime is named here -- the same lifetime is elided 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 `'i` [INFO] [stdout] | [INFO] [stdout] 10 - fn parse_number<'i>((input, rest): (&'i str, &'i str), radix: u32) -> LexResult<'_, i32> { [INFO] [stdout] 10 + fn parse_number<'i>((input, rest): (&'i str, &'i str), radix: u32) -> LexResult<'i, i32> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.74s [INFO] running `Command { std: "docker" "inspect" "9427652ffa16d3a8bf4df810c382ab2d9fcafd64f7e51885069edfd3de4d2cb8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9427652ffa16d3a8bf4df810c382ab2d9fcafd64f7e51885069edfd3de4d2cb8", kill_on_drop: false }` [INFO] [stdout] 9427652ffa16d3a8bf4df810c382ab2d9fcafd64f7e51885069edfd3de4d2cb8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fcd32f65b39a5543e34b666b3dded38adf5d5f003ee59babc1998ec6e90cceb2 [INFO] running `Command { std: "docker" "start" "-a" "fcd32f65b39a5543e34b666b3dded38adf5d5f003ee59babc1998ec6e90cceb2", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling unindent v0.1.11 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling csv v1.3.1 [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lex.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_LexErrorKind` [INFO] [stdout] 9 | pub enum LexErrorKind { [INFO] [stdout] | ------------ `LexErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lex.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_LexErrorKind` [INFO] [stdout] 9 | pub enum LexErrorKind { [INFO] [stdout] | ------------ `LexErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/scheme.rs:81:28 [INFO] [stdout] | [INFO] [stdout] 81 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_UnknownFieldError` [INFO] [stdout] 82 | #[fail(display = "unknown field")] [INFO] [stdout] 83 | pub struct UnknownFieldError; [INFO] [stdout] | ----------------- `UnknownFieldError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/scheme.rs:81:28 [INFO] [stdout] | [INFO] [stdout] 81 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_UnknownFieldError` [INFO] [stdout] 82 | #[fail(display = "unknown field")] [INFO] [stdout] 83 | pub struct UnknownFieldError; [INFO] [stdout] | ----------------- `UnknownFieldError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/scheme.rs:86:28 [INFO] [stdout] | [INFO] [stdout] 86 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FieldRedefinitionError` [INFO] [stdout] 87 | #[fail(display = "attempt to redefine field {}", _0)] [INFO] [stdout] 88 | pub struct FieldRedefinitionError(String); [INFO] [stdout] | ---------------------- `FieldRedefinitionError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/scheme.rs:86:28 [INFO] [stdout] | [INFO] [stdout] 86 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FieldRedefinitionError` [INFO] [stdout] 87 | #[fail(display = "attempt to redefine field {}", _0)] [INFO] [stdout] 88 | pub struct FieldRedefinitionError(String); [INFO] [stdout] | ---------------------- `FieldRedefinitionError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/combined_expr.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / lex_enum!(#[derive(PartialOrd, Ord)] CombiningOp { [INFO] [stdout] 7 | | "or" | "||" => Or, [INFO] [stdout] 8 | | "xor" | "^^" => Xor, [INFO] [stdout] 9 | | "and" | "&&" => And, [INFO] [stdout] 10 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/field_expr.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | / lex_enum!(#[repr(u8)] OrderingOp { [INFO] [stdout] 20 | | "eq" | "==" => Equal = EQUAL, [INFO] [stdout] 21 | | "ne" | "!=" => NotEqual = LESS | GREATER, [INFO] [stdout] 22 | | "ge" | ">=" => GreaterThanEqual = GREATER | EQUAL, [INFO] [stdout] ... | [INFO] [stdout] 25 | | "lt" | "<" => LessThan = LESS, [INFO] [stdout] 26 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/field_expr.rs:48:1 [INFO] [stdout] | [INFO] [stdout] 48 | / lex_enum!(IntOp { [INFO] [stdout] 49 | | "&" | "bitwise_and" => BitwiseAnd, [INFO] [stdout] 50 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/field_expr.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / lex_enum!(BytesOp { [INFO] [stdout] 53 | | "contains" => Contains, [INFO] [stdout] 54 | | "~" | "matches" => Matches, [INFO] [stdout] 55 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/field_expr.rs:57:1 [INFO] [stdout] | [INFO] [stdout] 57 | / lex_enum!(ComparisonOp { [INFO] [stdout] 58 | | "in" => In, [INFO] [stdout] 59 | | OrderingOp => Ordering, [INFO] [stdout] 60 | | IntOp => Int, [INFO] [stdout] 61 | | BytesOp => Bytes, [INFO] [stdout] 62 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/simple_expr.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / lex_enum!(UnaryOp { [INFO] [stdout] 7 | | "not" | "!" => Not, [INFO] [stdout] 8 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/execution_context.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FieldValueTypeMismatchError` [INFO] [stdout] ... [INFO] [stdout] 12 | pub struct FieldValueTypeMismatchError { [INFO] [stdout] | --------------------------- `FieldValueTypeMismatchError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/execution_context.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FieldValueTypeMismatchError` [INFO] [stdout] ... [INFO] [stdout] 12 | pub struct FieldValueTypeMismatchError { [INFO] [stdout] | --------------------------- `FieldValueTypeMismatchError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/filter.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SchemeMismatchError` [INFO] [stdout] 8 | #[fail(display = "execution context doesn't match the scheme with which filter was parsed")] [INFO] [stdout] 9 | pub struct SchemeMismatchError; [INFO] [stdout] | ------------------- `SchemeMismatchError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/filter.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_SchemeMismatchError` [INFO] [stdout] 8 | #[fail(display = "execution context doesn't match the scheme with which filter was parsed")] [INFO] [stdout] 9 | pub struct SchemeMismatchError; [INFO] [stdout] | ------------------- `SchemeMismatchError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/rhs_types/bytes.rs:101:1 [INFO] [stdout] | [INFO] [stdout] 101 | / lex_enum!(ByteSeparator { [INFO] [stdout] 102 | | ":" => Colon, [INFO] [stdout] 103 | | "-" => Dash, [INFO] [stdout] 104 | | "." => Dot, [INFO] [stdout] 105 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/rhs_types/int.rs:10:38 [INFO] [stdout] | [INFO] [stdout] 10 | fn parse_number<'i>((input, rest): (&'i str, &'i str), radix: u32) -> LexResult<'_, i32> { [INFO] [stdout] | ^^ ^^ the lifetime is named here -- the same lifetime is elided 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 `'i` [INFO] [stdout] | [INFO] [stdout] 10 - fn parse_number<'i>((input, rest): (&'i str, &'i str), radix: u32) -> LexResult<'_, i32> { [INFO] [stdout] 10 + fn parse_number<'i>((input, rest): (&'i str, &'i str), radix: u32) -> LexResult<'i, i32> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling indoc-impl v0.3.6 [INFO] [stderr] Compiling criterion v0.2.11 [INFO] [stderr] Compiling indoc v0.3.6 [INFO] [stderr] Compiling wirefilter-engine v0.6.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lex.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_LexErrorKind` [INFO] [stdout] 9 | pub enum LexErrorKind { [INFO] [stdout] | ------------ `LexErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lex.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_LexErrorKind` [INFO] [stdout] 9 | pub enum LexErrorKind { [INFO] [stdout] | ------------ `LexErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/scheme.rs:81:28 [INFO] [stdout] | [INFO] [stdout] 81 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_UnknownFieldError` [INFO] [stdout] 82 | #[fail(display = "unknown field")] [INFO] [stdout] 83 | pub struct UnknownFieldError; [INFO] [stdout] | ----------------- `UnknownFieldError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/scheme.rs:81:28 [INFO] [stdout] | [INFO] [stdout] 81 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_UnknownFieldError` [INFO] [stdout] 82 | #[fail(display = "unknown field")] [INFO] [stdout] 83 | pub struct UnknownFieldError; [INFO] [stdout] | ----------------- `UnknownFieldError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/scheme.rs:86:28 [INFO] [stdout] | [INFO] [stdout] 86 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FieldRedefinitionError` [INFO] [stdout] 87 | #[fail(display = "attempt to redefine field {}", _0)] [INFO] [stdout] 88 | pub struct FieldRedefinitionError(String); [INFO] [stdout] | ---------------------- `FieldRedefinitionError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/scheme.rs:86:28 [INFO] [stdout] | [INFO] [stdout] 86 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FieldRedefinitionError` [INFO] [stdout] 87 | #[fail(display = "attempt to redefine field {}", _0)] [INFO] [stdout] 88 | pub struct FieldRedefinitionError(String); [INFO] [stdout] | ---------------------- `FieldRedefinitionError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/combined_expr.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / lex_enum!(#[derive(PartialOrd, Ord)] CombiningOp { [INFO] [stdout] 7 | | "or" | "||" => Or, [INFO] [stdout] 8 | | "xor" | "^^" => Xor, [INFO] [stdout] 9 | | "and" | "&&" => And, [INFO] [stdout] 10 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/field_expr.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | / lex_enum!(#[repr(u8)] OrderingOp { [INFO] [stdout] 20 | | "eq" | "==" => Equal = EQUAL, [INFO] [stdout] 21 | | "ne" | "!=" => NotEqual = LESS | GREATER, [INFO] [stdout] 22 | | "ge" | ">=" => GreaterThanEqual = GREATER | EQUAL, [INFO] [stdout] ... | [INFO] [stdout] 25 | | "lt" | "<" => LessThan = LESS, [INFO] [stdout] 26 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/field_expr.rs:48:1 [INFO] [stdout] | [INFO] [stdout] 48 | / lex_enum!(IntOp { [INFO] [stdout] 49 | | "&" | "bitwise_and" => BitwiseAnd, [INFO] [stdout] 50 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/field_expr.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | / lex_enum!(BytesOp { [INFO] [stdout] 53 | | "contains" => Contains, [INFO] [stdout] 54 | | "~" | "matches" => Matches, [INFO] [stdout] 55 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/field_expr.rs:57:1 [INFO] [stdout] | [INFO] [stdout] 57 | / lex_enum!(ComparisonOp { [INFO] [stdout] 58 | | "in" => In, [INFO] [stdout] 59 | | OrderingOp => Ordering, [INFO] [stdout] 60 | | IntOp => Int, [INFO] [stdout] 61 | | BytesOp => Bytes, [INFO] [stdout] 62 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/ast/simple_expr.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | / lex_enum!(UnaryOp { [INFO] [stdout] 7 | | "not" | "!" => Not, [INFO] [stdout] 8 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/execution_context.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FieldValueTypeMismatchError` [INFO] [stdout] ... [INFO] [stdout] 12 | pub struct FieldValueTypeMismatchError { [INFO] [stdout] | --------------------------- `FieldValueTypeMismatchError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/execution_context.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FieldValueTypeMismatchError` [INFO] [stdout] ... [INFO] [stdout] 12 | pub struct FieldValueTypeMismatchError { [INFO] [stdout] | --------------------------- `FieldValueTypeMismatchError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/filter.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SchemeMismatchError` [INFO] [stdout] 8 | #[fail(display = "execution context doesn't match the scheme with which filter was parsed")] [INFO] [stdout] 9 | pub struct SchemeMismatchError; [INFO] [stdout] | ------------------- `SchemeMismatchError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/filter.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_SchemeMismatchError` [INFO] [stdout] 8 | #[fail(display = "execution context doesn't match the scheme with which filter was parsed")] [INFO] [stdout] 9 | pub struct SchemeMismatchError; [INFO] [stdout] | ------------------- `SchemeMismatchError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/lex.rs:151:29 [INFO] [stdout] | [INFO] [stdout] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stdout] | [INFO] [stdout] ::: src/rhs_types/bytes.rs:101:1 [INFO] [stdout] | [INFO] [stdout] 101 | / lex_enum!(ByteSeparator { [INFO] [stdout] 102 | | ":" => Colon, [INFO] [stdout] 103 | | "-" => Dash, [INFO] [stdout] 104 | | "." => Dot, [INFO] [stdout] 105 | | }); [INFO] [stdout] | |__- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consistently use `'i` [INFO] [stdout] | [INFO] [stdout] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stdout] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/rhs_types/int.rs:10:38 [INFO] [stdout] | [INFO] [stdout] 10 | fn parse_number<'i>((input, rest): (&'i str, &'i str), radix: u32) -> LexResult<'_, i32> { [INFO] [stdout] | ^^ ^^ the lifetime is named here -- the same lifetime is elided 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 `'i` [INFO] [stdout] | [INFO] [stdout] 10 - fn parse_number<'i>((input, rest): (&'i str, &'i str), radix: u32) -> LexResult<'_, i32> { [INFO] [stdout] 10 + fn parse_number<'i>((input, rest): (&'i str, &'i str), radix: u32) -> LexResult<'i, i32> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 6.66s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.2.11 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "fcd32f65b39a5543e34b666b3dded38adf5d5f003ee59babc1998ec6e90cceb2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fcd32f65b39a5543e34b666b3dded38adf5d5f003ee59babc1998ec6e90cceb2", kill_on_drop: false }` [INFO] [stdout] fcd32f65b39a5543e34b666b3dded38adf5d5f003ee59babc1998ec6e90cceb2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 0c3ef729939e05831772f121c0c212d2f7e338e15ba38f381fc75e143145e09c [INFO] running `Command { std: "docker" "start" "-a" "0c3ef729939e05831772f121c0c212d2f7e338e15ba38f381fc75e143145e09c", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/lex.rs:8:28 [INFO] [stderr] | [INFO] [stderr] 8 | #[derive(Debug, PartialEq, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Fail` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_LexErrorKind` [INFO] [stderr] 9 | pub enum LexErrorKind { [INFO] [stderr] | ------------ `LexErrorKind` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/lex.rs:8:28 [INFO] [stderr] | [INFO] [stderr] 8 | #[derive(Debug, PartialEq, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Display` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_LexErrorKind` [INFO] [stderr] 9 | pub enum LexErrorKind { [INFO] [stderr] | ------------ `LexErrorKind` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/scheme.rs:81:28 [INFO] [stderr] | [INFO] [stderr] 81 | #[derive(Debug, PartialEq, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Fail` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_UnknownFieldError` [INFO] [stderr] 82 | #[fail(display = "unknown field")] [INFO] [stderr] 83 | pub struct UnknownFieldError; [INFO] [stderr] | ----------------- `UnknownFieldError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/scheme.rs:81:28 [INFO] [stderr] | [INFO] [stderr] 81 | #[derive(Debug, PartialEq, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Display` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_UnknownFieldError` [INFO] [stderr] 82 | #[fail(display = "unknown field")] [INFO] [stderr] 83 | pub struct UnknownFieldError; [INFO] [stderr] | ----------------- `UnknownFieldError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/scheme.rs:86:28 [INFO] [stderr] | [INFO] [stderr] 86 | #[derive(Debug, PartialEq, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Fail` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FieldRedefinitionError` [INFO] [stderr] 87 | #[fail(display = "attempt to redefine field {}", _0)] [INFO] [stderr] 88 | pub struct FieldRedefinitionError(String); [INFO] [stderr] | ---------------------- `FieldRedefinitionError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/scheme.rs:86:28 [INFO] [stderr] | [INFO] [stderr] 86 | #[derive(Debug, PartialEq, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Display` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FieldRedefinitionError` [INFO] [stderr] 87 | #[fail(display = "attempt to redefine field {}", _0)] [INFO] [stderr] 88 | pub struct FieldRedefinitionError(String); [INFO] [stderr] | ---------------------- `FieldRedefinitionError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stderr] --> src/lex.rs:151:29 [INFO] [stderr] | [INFO] [stderr] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stderr] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stderr] | [INFO] [stderr] ::: src/ast/combined_expr.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | / lex_enum!(#[derive(PartialOrd, Ord)] CombiningOp { [INFO] [stderr] 7 | | "or" | "||" => Or, [INFO] [stderr] 8 | | "xor" | "^^" => Xor, [INFO] [stderr] 9 | | "and" | "&&" => And, [INFO] [stderr] 10 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: consistently use `'i` [INFO] [stderr] | [INFO] [stderr] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stderr] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stderr] --> src/lex.rs:151:29 [INFO] [stderr] | [INFO] [stderr] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stderr] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stderr] | [INFO] [stderr] ::: src/ast/field_expr.rs:19:1 [INFO] [stderr] | [INFO] [stderr] 19 | / lex_enum!(#[repr(u8)] OrderingOp { [INFO] [stderr] 20 | | "eq" | "==" => Equal = EQUAL, [INFO] [stderr] 21 | | "ne" | "!=" => NotEqual = LESS | GREATER, [INFO] [stderr] 22 | | "ge" | ">=" => GreaterThanEqual = GREATER | EQUAL, [INFO] [stderr] ... | [INFO] [stderr] 25 | | "lt" | "<" => LessThan = LESS, [INFO] [stderr] 26 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: consistently use `'i` [INFO] [stderr] | [INFO] [stderr] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stderr] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stderr] --> src/lex.rs:151:29 [INFO] [stderr] | [INFO] [stderr] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stderr] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stderr] | [INFO] [stderr] ::: src/ast/field_expr.rs:48:1 [INFO] [stderr] | [INFO] [stderr] 48 | / lex_enum!(IntOp { [INFO] [stderr] 49 | | "&" | "bitwise_and" => BitwiseAnd, [INFO] [stderr] 50 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: consistently use `'i` [INFO] [stderr] | [INFO] [stderr] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stderr] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stderr] --> src/lex.rs:151:29 [INFO] [stderr] | [INFO] [stderr] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stderr] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stderr] | [INFO] [stderr] ::: src/ast/field_expr.rs:52:1 [INFO] [stderr] | [INFO] [stderr] 52 | / lex_enum!(BytesOp { [INFO] [stderr] 53 | | "contains" => Contains, [INFO] [stderr] 54 | | "~" | "matches" => Matches, [INFO] [stderr] 55 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: consistently use `'i` [INFO] [stderr] | [INFO] [stderr] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stderr] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stderr] --> src/lex.rs:151:29 [INFO] [stderr] | [INFO] [stderr] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stderr] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stderr] | [INFO] [stderr] ::: src/ast/field_expr.rs:57:1 [INFO] [stderr] | [INFO] [stderr] 57 | / lex_enum!(ComparisonOp { [INFO] [stderr] 58 | | "in" => In, [INFO] [stderr] 59 | | OrderingOp => Ordering, [INFO] [stderr] 60 | | IntOp => Int, [INFO] [stderr] 61 | | BytesOp => Bytes, [INFO] [stderr] 62 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: consistently use `'i` [INFO] [stderr] | [INFO] [stderr] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stderr] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stderr] --> src/lex.rs:151:29 [INFO] [stderr] | [INFO] [stderr] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stderr] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stderr] | [INFO] [stderr] ::: src/ast/simple_expr.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | / lex_enum!(UnaryOp { [INFO] [stderr] 7 | | "not" | "!" => Not, [INFO] [stderr] 8 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: consistently use `'i` [INFO] [stderr] | [INFO] [stderr] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stderr] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/execution_context.rs:7:28 [INFO] [stderr] | [INFO] [stderr] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Fail` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FieldValueTypeMismatchError` [INFO] [stderr] ... [INFO] [stderr] 12 | pub struct FieldValueTypeMismatchError { [INFO] [stderr] | --------------------------- `FieldValueTypeMismatchError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/execution_context.rs:7:28 [INFO] [stderr] | [INFO] [stderr] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Display` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FieldValueTypeMismatchError` [INFO] [stderr] ... [INFO] [stderr] 12 | pub struct FieldValueTypeMismatchError { [INFO] [stderr] | --------------------------- `FieldValueTypeMismatchError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/filter.rs:7:28 [INFO] [stderr] | [INFO] [stderr] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Fail` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SchemeMismatchError` [INFO] [stderr] 8 | #[fail(display = "execution context doesn't match the scheme with which filter was parsed")] [INFO] [stderr] 9 | pub struct SchemeMismatchError; [INFO] [stderr] | ------------------- `SchemeMismatchError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/filter.rs:7:28 [INFO] [stderr] | [INFO] [stderr] 7 | #[derive(Debug, PartialEq, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Display` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_SchemeMismatchError` [INFO] [stderr] 8 | #[fail(display = "execution context doesn't match the scheme with which filter was parsed")] [INFO] [stderr] 9 | pub struct SchemeMismatchError; [INFO] [stderr] | ------------------- `SchemeMismatchError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stderr] --> src/lex.rs:151:29 [INFO] [stderr] | [INFO] [stderr] 151 | fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stderr] | ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stderr] | [INFO] [stderr] ::: src/rhs_types/bytes.rs:101:1 [INFO] [stderr] | [INFO] [stderr] 101 | / lex_enum!(ByteSeparator { [INFO] [stderr] 102 | | ":" => Colon, [INFO] [stderr] 103 | | "-" => Dash, [INFO] [stderr] 104 | | "." => Dot, [INFO] [stderr] 105 | | }); [INFO] [stderr] | |__- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: this warning originates in the macro `lex_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: consistently use `'i` [INFO] [stderr] | [INFO] [stderr] 151 - fn lex($input: &'i str) -> $crate::lex::LexResult<'_, Self> { [INFO] [stderr] 151 + fn lex($input: &'i str) -> $crate::lex::LexResult<'i, Self> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing [INFO] [stderr] --> src/rhs_types/int.rs:10:38 [INFO] [stderr] | [INFO] [stderr] 10 | fn parse_number<'i>((input, rest): (&'i str, &'i str), radix: u32) -> LexResult<'_, i32> { [INFO] [stderr] | ^^ ^^ the lifetime is named here -- the same lifetime is elided here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is named here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: consistently use `'i` [INFO] [stderr] | [INFO] [stderr] 10 - fn parse_number<'i>((input, rest): (&'i str, &'i str), radix: u32) -> LexResult<'_, i32> { [INFO] [stderr] 10 + fn parse_number<'i>((input, rest): (&'i str, &'i str), radix: u32) -> LexResult<'i, i32> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `wirefilter-engine` (lib) generated 18 warnings (run `cargo fix --lib -p wirefilter-engine` to apply 8 suggestions) [INFO] [stderr] warning: `wirefilter-engine` (lib test) generated 18 warnings (18 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.16s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.2.11 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/wirefilter-d1eb0bbcd83124ad) [INFO] [stdout] [INFO] [stdout] running 24 tests [INFO] [stdout] test ast::combined_expr::test ... ok [INFO] [stdout] test ast::field_expr::tests::test_int_compare ... ok [INFO] [stdout] test ast::field_expr::tests::test_bytes_compare ... ok [INFO] [stdout] test ast::field_expr::tests::test_contains_str ... ok [INFO] [stdout] test ast::field_expr::tests::test_int_in ... ok [INFO] [stdout] test ast::field_expr::tests::test_contains_bytes ... ok [INFO] [stdout] test ast::field_expr::tests::test_ip_in ... ok [INFO] [stdout] test ast::field_expr::tests::test_is_true ... ok [INFO] [stdout] test ast::simple_expr::test ... ok [INFO] [stdout] test filter::tests::test_scheme_mismatch ... ok [INFO] [stdout] test rhs_types::int::test ... ok [INFO] [stdout] test rhs_types::ip::test_lex ... ok [INFO] [stdout] test execution_context::test_field_value_type_mismatch ... ok [INFO] [stdout] test rhs_types::ip::test_strict_partial_ord ... ok [INFO] [stdout] test ast::field_expr::tests::test_ip_compare ... ok [INFO] [stdout] test types::test_lhs_value_deserialize ... ok [INFO] [stdout] test scheme::test_field_type_override ... ok [INFO] [stdout] test ast::field_expr::tests::test_bitwise_and ... ok [INFO] [stdout] test scheme::test_parse_error ... ok [INFO] [stdout] test scheme::test_field ... ok [INFO] [stdout] test rhs_types::bytes::test ... ok [INFO] [stdout] test ast::field_expr::tests::test_bytes_in ... ok [INFO] [stdout] test rhs_types::regex::test ... ok [INFO] [stdout] test scheme::test_static_field_type_override - should panic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 24 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Doc-tests wirefilter [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test src/lib.rs - (line 8) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.41s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "0c3ef729939e05831772f121c0c212d2f7e338e15ba38f381fc75e143145e09c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0c3ef729939e05831772f121c0c212d2f7e338e15ba38f381fc75e143145e09c", kill_on_drop: false }` [INFO] [stdout] 0c3ef729939e05831772f121c0c212d2f7e338e15ba38f381fc75e143145e09c