[INFO] fetching crate wirefilter-engine 0.6.1... [INFO] testing wirefilter-engine-0.6.1 against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] extracting crate wirefilter-engine 0.6.1 into /workspace/builds/worker-7-tc1/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-7-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate wirefilter-engine 0.6.1 on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "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" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 97 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.0) [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" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "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] [stderr] Downloading crates ... [INFO] [stderr] Downloaded cidr v0.1.1 [INFO] [stderr] Downloaded criterion-plot v0.3.1 [INFO] [stderr] Downloaded rand_xoshiro v0.1.0 [INFO] [stderr] Downloaded bitstring v0.1.2 [INFO] [stderr] Downloaded criterion v0.2.11 [INFO] [stderr] Downloaded memmem v0.1.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 790bc1dc5fc802cc10f106e77fb2145d4d3f3421157b944435c69a08021c1144 [INFO] running `Command { std: "docker" "start" "-a" "790bc1dc5fc802cc10f106e77fb2145d4d3f3421157b944435c69a08021c1144", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "790bc1dc5fc802cc10f106e77fb2145d4d3f3421157b944435c69a08021c1144", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "790bc1dc5fc802cc10f106e77fb2145d4d3f3421157b944435c69a08021c1144", kill_on_drop: false }` [INFO] [stdout] 790bc1dc5fc802cc10f106e77fb2145d4d3f3421157b944435c69a08021c1144 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c3e6d8f7724833149f3cddc58c098c43ae0b1009f1c803b44b27bf0342c953a7 [INFO] running `Command { std: "docker" "start" "-a" "c3e6d8f7724833149f3cddc58c098c43ae0b1009f1c803b44b27bf0342c953a7", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling failure_derive v0.1.8 [INFO] [stderr] Compiling bitstring v0.1.2 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling memmem v0.1.1 [INFO] [stderr] Compiling object v0.36.7 [INFO] [stderr] Compiling cidr v0.1.1 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Compiling backtrace v0.3.75 [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:63 [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:63 [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:63 [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:63 [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:63 [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:63 [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:63 [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:81 [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 7.21s [INFO] running `Command { std: "docker" "inspect" "c3e6d8f7724833149f3cddc58c098c43ae0b1009f1c803b44b27bf0342c953a7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c3e6d8f7724833149f3cddc58c098c43ae0b1009f1c803b44b27bf0342c953a7", kill_on_drop: false }` [INFO] [stdout] c3e6d8f7724833149f3cddc58c098c43ae0b1009f1c803b44b27bf0342c953a7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 06b2fe5e41c9e46e82ca791c8c03deb3f1f963715789406cf913497c47d68892 [INFO] running `Command { std: "docker" "start" "-a" "06b2fe5e41c9e46e82ca791c8c03deb3f1f963715789406cf913497c47d68892", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling serde_json v1.0.143 [INFO] [stderr] Compiling cast v0.2.7 [INFO] [stderr] Compiling unindent v0.1.11 [INFO] [stderr] Compiling rand_xoshiro v0.1.0 [INFO] [stderr] Compiling csv v1.3.1 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling clap v2.34.0 [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:63 [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:63 [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:63 [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:63 [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:63 [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:63 [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:63 [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:81 [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 itertools v0.8.2 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling indoc v0.3.6 [INFO] [stderr] Compiling criterion-plot v0.3.1 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling criterion v0.2.11 [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:63 [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:63 [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:63 [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:63 [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:63 [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:63 [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:63 [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:81 [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 10.63s [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 2` [INFO] running `Command { std: "docker" "inspect" "06b2fe5e41c9e46e82ca791c8c03deb3f1f963715789406cf913497c47d68892", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "06b2fe5e41c9e46e82ca791c8c03deb3f1f963715789406cf913497c47d68892", kill_on_drop: false }` [INFO] [stdout] 06b2fe5e41c9e46e82ca791c8c03deb3f1f963715789406cf913497c47d68892 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] a7fa1b3c331b6aa6549e4d01679e2b51e4e6aa5156428716a23e639937a8b9c3 [INFO] running `Command { std: "docker" "start" "-a" "a7fa1b3c331b6aa6549e4d01679e2b51e4e6aa5156428716a23e639937a8b9c3", 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:63 [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:63 [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:63 [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:63 [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:63 [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:63 [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:63 [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:81 [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.12s [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 2` [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/wirefilter-7b78c2e4db375030) [INFO] [stdout] [INFO] [stdout] running 24 tests [INFO] [stdout] test ast::combined_expr::test ... ok [INFO] [stdout] test ast::field_expr::tests::test_bytes_compare ... ok [INFO] [stdout] test ast::field_expr::tests::test_bytes_in ... ok [INFO] [stdout] test ast::field_expr::tests::test_bitwise_and ... ok [INFO] [stdout] test ast::field_expr::tests::test_contains_bytes ... ok [INFO] [stdout] test ast::field_expr::tests::test_contains_str ... ok [INFO] [stdout] test ast::field_expr::tests::test_int_compare ... ok [INFO] [stdout] test ast::field_expr::tests::test_int_in ... ok [INFO] [stdout] test ast::field_expr::tests::test_ip_compare ... ok [INFO] [stdout] test ast::field_expr::tests::test_is_true ... ok [INFO] [stdout] test ast::field_expr::tests::test_ip_in ... ok [INFO] [stdout] test execution_context::test_field_value_type_mismatch ... ok [INFO] [stdout] test ast::simple_expr::test ... ok [INFO] [stdout] test filter::tests::test_scheme_mismatch ... ok [INFO] [stdout] test rhs_types::bytes::test ... ok [INFO] [stdout] test rhs_types::ip::test_lex ... ok [INFO] [stdout] test rhs_types::int::test ... ok [INFO] [stdout] test scheme::test_field ... ok [INFO] [stdout] test rhs_types::ip::test_strict_partial_ord ... ok [INFO] [stdout] test scheme::test_field_type_override ... ok [INFO] [stdout] test scheme::test_parse_error ... ok [INFO] [stdout] test types::test_lhs_value_deserialize ... 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.49s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "a7fa1b3c331b6aa6549e4d01679e2b51e4e6aa5156428716a23e639937a8b9c3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a7fa1b3c331b6aa6549e4d01679e2b51e4e6aa5156428716a23e639937a8b9c3", kill_on_drop: false }` [INFO] [stdout] a7fa1b3c331b6aa6549e4d01679e2b51e4e6aa5156428716a23e639937a8b9c3