[INFO] cloning repository https://github.com/jtran/liquid-lox [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jtran/liquid-lox" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjtran%2Fliquid-lox", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjtran%2Fliquid-lox'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 3c700da2c39f26f6aa33d85dca84afdf966ac316 [INFO] checking jtran/liquid-lox against try#3c75d5844aa65b4aa19243ac44ceda49fe4e61ca for pr-143545 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjtran%2Fliquid-lox" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/jtran/liquid-lox [INFO] finished tweaking git repo https://github.com/jtran/liquid-lox [INFO] tweaked toml for git repo https://github.com/jtran/liquid-lox written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/jtran/liquid-lox on toolchain 3c75d5844aa65b4aa19243ac44ceda49fe4e61ca [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3c75d5844aa65b4aa19243ac44ceda49fe4e61ca" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/jtran/liquid-lox already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3c75d5844aa65b4aa19243ac44ceda49fe4e61ca" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded argparse v0.2.2 [INFO] [stderr] Downloaded syn v1.0.71 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+3c75d5844aa65b4aa19243ac44ceda49fe4e61ca" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b0ec951b7e0d31d7a5cf30b81777bf91118f2635a2e975b0b855c2b076bf14a6 [INFO] running `Command { std: "docker" "start" "-a" "b0ec951b7e0d31d7a5cf30b81777bf91118f2635a2e975b0b855c2b076bf14a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b0ec951b7e0d31d7a5cf30b81777bf91118f2635a2e975b0b855c2b076bf14a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b0ec951b7e0d31d7a5cf30b81777bf91118f2635a2e975b0b855c2b076bf14a6", kill_on_drop: false }` [INFO] [stdout] b0ec951b7e0d31d7a5cf30b81777bf91118f2635a2e975b0b855c2b076bf14a6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+3c75d5844aa65b4aa19243ac44ceda49fe4e61ca" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b441e41d96a4f125dcc916f6a8616571dbddef49645b450f04e0b8604e3abf4a [INFO] running `Command { std: "docker" "start" "-a" "b441e41d96a4f125dcc916f6a8616571dbddef49645b450f04e0b8604e3abf4a", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.26 [INFO] [stderr] Compiling unicode-xid v0.2.2 [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling syn v1.0.71 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking unicode-segmentation v1.3.0 [INFO] [stderr] Checking argparse v0.2.2 [INFO] [stderr] Checking fnv v1.0.6 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling quote v1.0.9 [INFO] [stderr] Compiling num-derive v0.3.3 [INFO] [stderr] Checking lox v0.2.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/resolver.rs:485:26 [INFO] [stdout] | [INFO] [stdout] 485 | .and_modify(|mut state| { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/resolver.rs:523:26 [INFO] [stdout] | [INFO] [stdout] 523 | .and_modify(|mut state| { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | let mut frame = &mut self.frames[frames_len - 1]; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `slots` is never read [INFO] [stdout] --> src/vm.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct CallFrame { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 31 | slots: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CallFrame` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [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/compiler.rs:24:62 [INFO] [stdout] | [INFO] [stdout] 24 | #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Precedence` [INFO] [stdout] 25 | enum Precedence { [INFO] [stdout] | ---------- `Precedence` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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/compiler.rs:24:77 [INFO] [stdout] | [INFO] [stdout] 24 | #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_Precedence` [INFO] [stdout] 25 | enum Precedence { [INFO] [stdout] | ---------- `Precedence` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/compiler.rs:790:34 [INFO] [stdout] | [INFO] [stdout] 790 | pub fn new(tokens: Vec>) -> Parser { [INFO] [stdout] | ^^ ------ the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 790 | pub fn new(tokens: Vec>) -> Parser<'a> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/compiler.rs:801:26 [INFO] [stdout] | [INFO] [stdout] 801 | pub fn current_token(&self) -> &Token { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 801 | pub fn current_token(&self) -> &Token<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/compiler.rs:805:27 [INFO] [stdout] | [INFO] [stdout] 805 | pub fn previous_token(&self) -> &Token { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 805 | pub fn previous_token(&self) -> &Token<'_> { [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/op.rs:5:30 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Debug, Copy, Clone, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Op` [INFO] [stdout] 6 | pub enum Op { [INFO] [stdout] | -- `Op` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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/op.rs:5:45 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Debug, Copy, Clone, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_Op` [INFO] [stdout] 6 | pub enum Op { [INFO] [stdout] | -- `Op` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/scanner.rs:69:24 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn scan_tokens(&mut self) -> Result, ParseError> { [INFO] [stdout] | ^^^^^^^^^ ----- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 69 | pub fn scan_tokens(&mut self) -> Result>, ParseError> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/value.rs:495:17 [INFO] [stdout] | [INFO] [stdout] 495 | pub fn iter(&self) -> Iter { [INFO] [stdout] | ^^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 495 | pub fn iter(&self) -> Iter<'_, BacktraceItem> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/resolver.rs:485:26 [INFO] [stdout] | [INFO] [stdout] 485 | .and_modify(|mut state| { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/resolver.rs:523:26 [INFO] [stdout] | [INFO] [stdout] 523 | .and_modify(|mut state| { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vm.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | let mut frame = &mut self.frames[frames_len - 1]; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `slots` is never read [INFO] [stdout] --> src/vm.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct CallFrame { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 31 | slots: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CallFrame` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [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/compiler.rs:24:62 [INFO] [stdout] | [INFO] [stdout] 24 | #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Precedence` [INFO] [stdout] 25 | enum Precedence { [INFO] [stdout] | ---------- `Precedence` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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/compiler.rs:24:77 [INFO] [stdout] | [INFO] [stdout] 24 | #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_Precedence` [INFO] [stdout] 25 | enum Precedence { [INFO] [stdout] | ---------- `Precedence` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/compiler.rs:790:34 [INFO] [stdout] | [INFO] [stdout] 790 | pub fn new(tokens: Vec>) -> Parser { [INFO] [stdout] | ^^ ------ the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 790 | pub fn new(tokens: Vec>) -> Parser<'a> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/compiler.rs:801:26 [INFO] [stdout] | [INFO] [stdout] 801 | pub fn current_token(&self) -> &Token { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 801 | pub fn current_token(&self) -> &Token<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/compiler.rs:805:27 [INFO] [stdout] | [INFO] [stdout] 805 | pub fn previous_token(&self) -> &Token { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 805 | pub fn previous_token(&self) -> &Token<'_> { [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/op.rs:5:30 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Debug, Copy, Clone, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Op` [INFO] [stdout] 6 | pub enum Op { [INFO] [stdout] | -- `Op` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `FromPrimitive` (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/op.rs:5:45 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Debug, Copy, Clone, FromPrimitive, ToPrimitive)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `ToPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_Op` [INFO] [stdout] 6 | pub enum Op { [INFO] [stdout] | -- `Op` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/scanner.rs:69:24 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn scan_tokens(&mut self) -> Result, ParseError> { [INFO] [stdout] | ^^^^^^^^^ ----- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 69 | pub fn scan_tokens(&mut self) -> Result>, ParseError> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/value.rs:495:17 [INFO] [stdout] | [INFO] [stdout] 495 | pub fn iter(&self) -> Iter { [INFO] [stdout] | ^^^^^ ------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 495 | pub fn iter(&self) -> Iter<'_, BacktraceItem> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.42s [INFO] running `Command { std: "docker" "inspect" "b441e41d96a4f125dcc916f6a8616571dbddef49645b450f04e0b8604e3abf4a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b441e41d96a4f125dcc916f6a8616571dbddef49645b450f04e0b8604e3abf4a", kill_on_drop: false }` [INFO] [stdout] b441e41d96a4f125dcc916f6a8616571dbddef49645b450f04e0b8604e3abf4a