[INFO] cloning repository https://github.com/megabytesofrem/deimos [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/megabytesofrem/deimos" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmegabytesofrem%2Fdeimos", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmegabytesofrem%2Fdeimos'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 2abfa1c7380b964b237ba4b9cdb557172f9a8df3 [INFO] checking megabytesofrem/deimos against master#8a65ee08296b36342bf7c3cdc15312ccbc357227 for pr-142704 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmegabytesofrem%2Fdeimos" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/megabytesofrem/deimos on toolchain 8a65ee08296b36342bf7c3cdc15312ccbc357227 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8a65ee08296b36342bf7c3cdc15312ccbc357227" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-5-tc1/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/megabytesofrem/deimos [INFO] finished tweaking git repo https://github.com/megabytesofrem/deimos [INFO] tweaked toml for git repo https://github.com/megabytesofrem/deimos written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/megabytesofrem/deimos 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" "+8a65ee08296b36342bf7c3cdc15312ccbc357227" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded logos-derive v0.14.0 [INFO] [stderr] Downloaded logos-codegen v0.14.0 [INFO] [stderr] Downloaded logos v0.14.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8a65ee08296b36342bf7c3cdc15312ccbc357227" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b1c1b407d028a219b06840afece80b1038a1994e2170604cf8cb6dfcde8449a0 [INFO] running `Command { std: "docker" "start" "-a" "b1c1b407d028a219b06840afece80b1038a1994e2170604cf8cb6dfcde8449a0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b1c1b407d028a219b06840afece80b1038a1994e2170604cf8cb6dfcde8449a0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b1c1b407d028a219b06840afece80b1038a1994e2170604cf8cb6dfcde8449a0", kill_on_drop: false }` [INFO] [stdout] b1c1b407d028a219b06840afece80b1038a1994e2170604cf8cb6dfcde8449a0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8a65ee08296b36342bf7c3cdc15312ccbc357227" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e68b49f83a16d66bce8628e49ec9a367e41b5e2668ac0ef3668a06cd7978dfe1 [INFO] running `Command { std: "docker" "start" "-a" "e68b49f83a16d66bce8628e49ec9a367e41b5e2668ac0ef3668a06cd7978dfe1", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.81 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Checking utf8parse v0.2.1 [INFO] [stderr] Compiling serde v1.0.208 [INFO] [stderr] Compiling rustix v0.38.34 [INFO] [stderr] Checking bitflags v2.6.0 [INFO] [stderr] Checking colorchoice v1.0.1 [INFO] [stderr] Checking anstyle v1.0.7 [INFO] [stderr] Checking anstyle-query v1.0.3 [INFO] [stderr] Checking anstyle-parse v0.2.4 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling beef v0.5.2 [INFO] [stderr] Compiling regex-syntax v0.8.3 [INFO] [stderr] Checking is_terminal_polyfill v1.70.0 [INFO] [stderr] Compiling serde_json v1.0.125 [INFO] [stderr] Checking linux-raw-sys v0.4.14 [INFO] [stderr] Checking fastrand v2.1.0 [INFO] [stderr] Checking anstream v0.6.14 [INFO] [stderr] Compiling serde_yml v0.0.11 [INFO] [stderr] Checking ryu v1.0.18 [INFO] [stderr] Checking itoa v1.0.11 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking equivalent v1.0.1 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Checking clap_lex v0.7.0 [INFO] [stderr] Checking once_cell v1.19.0 [INFO] [stderr] Compiling anyhow v1.0.82 [INFO] [stderr] Checking strsim v0.11.1 [INFO] [stderr] Compiling thiserror v1.0.58 [INFO] [stderr] Checking libyml v0.0.4 [INFO] [stderr] Checking clap_builder v4.5.2 [INFO] [stderr] Checking log v0.4.22 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Checking indexmap v2.4.0 [INFO] [stderr] Compiling syn v2.0.60 [INFO] [stderr] Checking tempfile v3.12.0 [INFO] [stderr] Compiling logos-codegen v0.14.0 [INFO] [stderr] Compiling serde_derive v1.0.208 [INFO] [stderr] Compiling thiserror-impl v1.0.58 [INFO] [stderr] Compiling clap_derive v4.5.4 [INFO] [stderr] Compiling logos-derive v0.14.0 [INFO] [stderr] Checking logos v0.14.0 [INFO] [stderr] Checking clap v4.5.4 [INFO] [stderr] Checking deimos v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/sema/module.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::spanned::Spanned` [INFO] [stdout] --> src/sema/module.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::spanned::Spanned; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Ast` and `ToplevelStmt` [INFO] [stdout] --> src/sema/module.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::syntax::ast::{Ast, ToplevelStmt}; [INFO] [stdout] | ^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FunctionInfo` and `StructureInfo` [INFO] [stdout] --> src/sema/module.rs:6:32 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::syntax::ast_types::{FunctionInfo, StructureInfo, Ty}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::syntax::parser::Parser` [INFO] [stdout] --> src/sema/module.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::syntax::parser::Parser; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Stmt` [INFO] [stdout] --> src/sema/resolver.rs:7:26 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::syntax::ast::{Stmt, ToplevelStmt}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/spanned.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/syntax/ast.rs:2:13 [INFO] [stdout] | [INFO] [stdout] 2 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `StructureInfo` [INFO] [stdout] --> src/syntax/ast.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | ast_types::{StructureInfo, Ty}, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/syntax/ast_types.rs:2:13 [INFO] [stdout] | [INFO] [stdout] 2 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Op` [INFO] [stdout] --> src/syntax/parser/expr.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::syntax::lexer::{Op, Token, TokenKind}; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/sema/module.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::spanned::Spanned` [INFO] [stdout] --> src/sema/module.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::spanned::Spanned; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Ast` and `ToplevelStmt` [INFO] [stdout] --> src/sema/module.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::syntax::ast::{Ast, ToplevelStmt}; [INFO] [stdout] | ^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FunctionInfo` and `StructureInfo` [INFO] [stdout] --> src/sema/module.rs:6:32 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::syntax::ast_types::{FunctionInfo, StructureInfo, Ty}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::syntax::parser::Parser` [INFO] [stdout] --> src/sema/module.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::syntax::parser::Parser; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Stmt` [INFO] [stdout] --> src/sema/resolver.rs:7:26 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::syntax::ast::{Stmt, ToplevelStmt}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/spanned.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/syntax/ast.rs:2:13 [INFO] [stdout] | [INFO] [stdout] 2 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `StructureInfo` [INFO] [stdout] --> src/syntax/ast.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | ast_types::{StructureInfo, Ty}, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/syntax/ast_types.rs:2:13 [INFO] [stdout] | [INFO] [stdout] 2 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Op` [INFO] [stdout] --> src/syntax/parser/expr.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::syntax::lexer::{Op, Token, TokenKind}; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/spanned.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | _ => todo!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/spanned.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 113 | Stmt::Expr(expr) => Stmt::Expr(expr.target.strip_span().spanned_default()), [INFO] [stdout] | ---------------- matches some of the same values [INFO] [stdout] 114 | Stmt::Return(expr) => Stmt::Return( [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 121 | Stmt::BlockTerminator => Stmt::BlockTerminator, [INFO] [stdout] | --------------------- matches some of the same values [INFO] [stdout] 122 | [INFO] [stdout] 123 | Stmt::Let { name, ty, value } => Stmt::Let { [INFO] [stdout] | ----------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 190 | _ => todo!(), [INFO] [stdout] | ^ ...and 4 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `location` [INFO] [stdout] --> src/syntax/parser/expr.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | let location = self.advance().map(|t| t.location).unwrap_or_default(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_location` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token` [INFO] [stdout] --> src/syntax/parser/stmt.rs:471:13 [INFO] [stdout] | [INFO] [stdout] 471 | let token = self.expect(TokenKind::KwStruct)?; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_token` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/spanned.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | _ => todo!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/spanned.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 113 | Stmt::Expr(expr) => Stmt::Expr(expr.target.strip_span().spanned_default()), [INFO] [stdout] | ---------------- matches some of the same values [INFO] [stdout] 114 | Stmt::Return(expr) => Stmt::Return( [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 121 | Stmt::BlockTerminator => Stmt::BlockTerminator, [INFO] [stdout] | --------------------- matches some of the same values [INFO] [stdout] 122 | [INFO] [stdout] 123 | Stmt::Let { name, ty, value } => Stmt::Let { [INFO] [stdout] | ----------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 190 | _ => todo!(), [INFO] [stdout] | ^ ...and 4 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token` [INFO] [stdout] --> src/syntax/parser/stmt.rs:503:13 [INFO] [stdout] | [INFO] [stdout] 503 | let token = self.expect(TokenKind::KwEnum)?; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_token` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `check` is never used [INFO] [stdout] --> src/syntax/parser/mod.rs:56:19 [INFO] [stdout] | [INFO] [stdout] 29 | impl<'p> Parser<'p> { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 56 | pub(crate) fn check(&mut self, kind: TokenKind) -> Return> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/resolver.rs:70:35 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn insert_modulewide_name(&mut self, name: &str, ty: Ty) -> Return<()> { [INFO] [stdout] | ^^^^^^^^^ ---------- the lifetime gets resolved as `'_` [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 remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 70 | pub fn insert_modulewide_name(&mut self, name: &str, ty: Ty) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/resolver.rs:94:24 [INFO] [stdout] | [INFO] [stdout] 94 | pub fn insert_name(&mut self, name: &str, ty: Ty) -> Return<()> { [INFO] [stdout] | ^^^^^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 94 | pub fn insert_name(&mut self, name: &str, ty: Ty) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/resolver.rs:113:24 [INFO] [stdout] | [INFO] [stdout] 113 | pub fn remove_name(&mut self, name: &str) -> Return<()> { [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] 113 | pub fn remove_name(&mut self, name: &str) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/resolver.rs:126:24 [INFO] [stdout] | [INFO] [stdout] 126 | pub fn update_name(&mut self, name: &str, ty: Ty) -> Return<()> { [INFO] [stdout] | ^^^^^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 126 | pub fn update_name(&mut self, name: &str, ty: Ty) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:23:18 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn equal(&self, t1: &Ty, t2: &Ty, location: &SourceLoc) -> Return<()> { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [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] 23 | pub fn equal(&self, t1: &Ty, t2: &Ty, location: &SourceLoc) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:54:24 [INFO] [stdout] | [INFO] [stdout] 54 | fn resolve_generic(&self, ty: &Ty) -> Return { [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] 54 | fn resolve_generic(&self, ty: &Ty) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:73:28 [INFO] [stdout] | [INFO] [stdout] 73 | fn specialize_function(&self, func: &FunctionInfo) -> Return { [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] 73 | fn specialize_function(&self, func: &FunctionInfo) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:123:22 [INFO] [stdout] | [INFO] [stdout] 123 | fn unify_typevar(&self, ty: &Ty, tv: usize, location: &SourceLoc) -> Return<()> { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [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] 123 | fn unify_typevar(&self, ty: &Ty, tv: usize, location: &SourceLoc) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:141:18 [INFO] [stdout] | [INFO] [stdout] 141 | pub fn unify(&self, t1: &Ty, t2: &Ty, location: &SourceLoc) -> Return<()> { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 141 | pub fn unify(&self, t1: &Ty, t2: &Ty, location: &SourceLoc) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:237:25 [INFO] [stdout] | [INFO] [stdout] 237 | fn can_perform_cast(&self, t1: &Ty, t2: &Ty, location: &SourceLoc) -> Return<()> { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [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] 237 | fn can_perform_cast(&self, t1: &Ty, t2: &Ty, location: &SourceLoc) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:255:22 [INFO] [stdout] | [INFO] [stdout] 255 | pub fn cast_expr(&mut self, expr: &Spanned, target_ty: &Ty) -> Return> { [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output --------------------- the lifetime gets resolved as `'_` [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] 255 | pub fn cast_expr(&mut self, expr: &Spanned, target_ty: &Ty) -> Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:265:9 [INFO] [stdout] | [INFO] [stdout] 265 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 269 | ) -> Return> { [INFO] [stdout] | --------------------- the lifetime gets resolved as `'_` [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] 269 | ) -> Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:326:25 [INFO] [stdout] | [INFO] [stdout] 326 | fn infer_binop_expr(&self, lhs: &Spanned, op: &Op, rhs: &Spanned) -> Return { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [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] 326 | fn infer_binop_expr(&self, lhs: &Spanned, op: &Op, rhs: &Spanned) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:362:23 [INFO] [stdout] | [INFO] [stdout] 362 | pub fn infer_expr(&self, value: &Spanned) -> Return { [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] 362 | pub fn infer_expr(&self, value: &Spanned) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:411:28 [INFO] [stdout] | [INFO] [stdout] 411 | pub fn infer_call_expr(&self, name: &'t str, args: &Vec>) -> Return { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [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] 411 | pub fn infer_call_expr(&self, name: &'t str, args: &Vec>) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:454:32 [INFO] [stdout] | [INFO] [stdout] 454 | pub fn infer_array_literal(&self, elems: &[Spanned]) -> Return { [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] 454 | pub fn infer_array_literal(&self, elems: &[Spanned]) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:473:9 [INFO] [stdout] | [INFO] [stdout] 473 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 476 | ) -> Return { [INFO] [stdout] | ---------- the lifetime gets resolved as `'_` [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] 476 | ) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:48:24 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn lookup_name(&self, name: &str, location: SourceLoc) -> Return { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [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] 48 | pub fn lookup_name(&self, name: &str, location: SourceLoc) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:60:33 [INFO] [stdout] | [INFO] [stdout] 60 | pub fn lookup_member_access(&self, member: &Member, _location: SourceLoc) -> Return { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [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] 60 | pub fn lookup_member_access(&self, member: &Member, _location: SourceLoc) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:91:26 [INFO] [stdout] | [INFO] [stdout] 91 | pub fn check_literal(&mut self, lit: &Literal) -> Return { [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] 91 | pub fn check_literal(&mut self, lit: &Literal) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:95:23 [INFO] [stdout] | [INFO] [stdout] 95 | pub fn check_expr(&mut self, expr: &Spanned) -> Return> { [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] 95 | pub fn check_expr(&mut self, expr: &Spanned) -> Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:179:23 [INFO] [stdout] | [INFO] [stdout] 179 | pub fn check_stmt(&mut self, stmt: &Spanned) -> Return> { [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] 179 | pub fn check_stmt(&mut self, stmt: &Spanned) -> Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:279:20 [INFO] [stdout] | [INFO] [stdout] 279 | fn check_block(&mut self, block: &Block) -> Return>> { [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] 279 | fn check_block(&mut self, block: &Block) -> Return<'_, Vec>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 289 | &mut self, [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 292 | ) -> Return>> { [INFO] [stdout] | ------------------------------ the lifetime gets resolved as `'_` [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] 292 | ) -> Return<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:325:9 [INFO] [stdout] | [INFO] [stdout] 325 | &mut self, [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 330 | ) -> Return { [INFO] [stdout] | --------------------- the lifetime gets resolved as `'_` [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] 330 | ) -> Return<'_, TToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:375:9 [INFO] [stdout] | [INFO] [stdout] 375 | &mut self, [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 378 | ) -> Return { [INFO] [stdout] | --------------------- the lifetime gets resolved as `'_` [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] 378 | ) -> Return<'_, TToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:403:27 [INFO] [stdout] | [INFO] [stdout] 403 | fn check_enum_declare(&mut self, name: &str, fields: &[String]) -> Return { [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output --------------------- the lifetime gets resolved as `'_` [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] 403 | fn check_enum_declare(&mut self, name: &str, fields: &[String]) -> Return<'_, TToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:433:9 [INFO] [stdout] | [INFO] [stdout] 433 | &mut self, [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stdout] 434 | stmt: &Spanned, [INFO] [stdout] 435 | ) -> ReturnErrors> { [INFO] [stdout] | ------------------------------------ the lifetime gets resolved as `'_` [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] 435 | ) -> ReturnErrors<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:496:18 [INFO] [stdout] | [INFO] [stdout] 496 | pub fn check(&mut self, ast: &Ast) -> ReturnErrors { [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] 496 | pub fn check(&mut self, ast: &Ast) -> ReturnErrors<'_, TypedAst> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/lexer.rs:290:24 [INFO] [stdout] | [INFO] [stdout] 290 | pub fn lex_tokens(src: &str) -> LexerIter { [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] 290 | pub fn lex_tokens(src: &str) -> LexerIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/mod.rs:56:25 [INFO] [stdout] | [INFO] [stdout] 56 | pub(crate) fn check(&mut self, kind: TokenKind) -> Return> { [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] 56 | pub(crate) fn check(&mut self, kind: TokenKind) -> Return<'_, Token<'p>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/mod.rs:76:26 [INFO] [stdout] | [INFO] [stdout] 76 | pub(crate) fn expect(&mut self, kind: TokenKind) -> Return> { [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] 76 | pub(crate) fn expect(&mut self, kind: TokenKind) -> Return<'_, Token<'p>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/mod.rs:95:33 [INFO] [stdout] | [INFO] [stdout] 95 | pub(crate) fn expect_one_of(&mut self, kinds: Vec) -> Return> { [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] 95 | pub(crate) fn expect_one_of(&mut self, kinds: Vec) -> Return<'_, Token<'p>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/mod.rs:115:32 [INFO] [stdout] | [INFO] [stdout] 115 | pub(crate) fn expect_error(&mut self, kind: TokenKind, err: SyntaxError) -> Return> { [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output ----------------- the lifetime gets resolved as `'_` [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] 115 | pub(crate) fn expect_error(&mut self, kind: TokenKind, err: SyntaxError) -> Return<'_, Token<'p>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:16:24 [INFO] [stdout] | [INFO] [stdout] 16 | fn parse_expr_prec(&mut self, min_prec: u8) -> parser::Return> { [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] 16 | fn parse_expr_prec(&mut self, min_prec: u8) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:53:23 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn parse_expr(&mut self) -> parser::Return> { [INFO] [stdout] | ^^^^^^^^^ ----------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 53 | pub fn parse_expr(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:57:24 [INFO] [stdout] | [INFO] [stdout] 57 | fn parse_main_expr(&mut self) -> parser::Return> { [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] 57 | fn parse_main_expr(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:131:9 [INFO] [stdout] | [INFO] [stdout] 131 | &mut self, [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stdout] 132 | base_node: Spanned, [INFO] [stdout] 133 | ) -> parser::Return> { [INFO] [stdout] | ----------------------------- the lifetime gets resolved as `'_` [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] 133 | ) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:189:22 [INFO] [stdout] | [INFO] [stdout] 189 | fn parse_literal(&mut self, token: &Token) -> parser::Return { [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] 189 | fn parse_literal(&mut self, token: &Token) -> parser::Return<'_, Literal> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:204:9 [INFO] [stdout] | [INFO] [stdout] 204 | &mut self, [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stdout] 205 | callee: Spanned, [INFO] [stdout] 206 | ) -> parser::Return> { [INFO] [stdout] | ----------------------------- the lifetime gets resolved as `'_` [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] 206 | ) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:243:24 [INFO] [stdout] | [INFO] [stdout] 243 | fn parse_cast_expr(&mut self) -> parser::Return> { [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] 243 | fn parse_cast_expr(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:257:28 [INFO] [stdout] | [INFO] [stdout] 257 | fn parse_array_literal(&mut self) -> parser::Return> { [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] 257 | fn parse_array_literal(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:292:26 [INFO] [stdout] | [INFO] [stdout] 292 | fn parse_array_index(&mut self, _array: &Expr) -> parser::Return> { [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] 292 | fn parse_array_index(&mut self, _array: &Expr) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:323:27 [INFO] [stdout] | [INFO] [stdout] 323 | fn parse_struct_field(&mut self) -> parser::Return<(String, Spanned)> { [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] 323 | fn parse_struct_field(&mut self) -> parser::Return<'_, (String, Spanned)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:331:33 [INFO] [stdout] | [INFO] [stdout] 331 | fn parse_struct_constructor(&mut self) -> parser::Return> { [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] 331 | fn parse_struct_constructor(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:12:31 [INFO] [stdout] | [INFO] [stdout] 12 | pub(crate) fn parse_block(&mut self) -> parser::Return { [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] 12 | pub(crate) fn parse_block(&mut self) -> parser::Return<'_, Block> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:36:30 [INFO] [stdout] | [INFO] [stdout] 36 | pub(crate) fn parse_stmt(&mut self) -> parser::Return> { [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] 36 | pub(crate) fn parse_stmt(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:82:23 [INFO] [stdout] | [INFO] [stdout] 82 | fn parse_let_stmt(&mut self) -> parser::Return> { [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] 82 | fn parse_let_stmt(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:118:24 [INFO] [stdout] | [INFO] [stdout] 118 | fn parse_expr_stmt(&mut self) -> parser::Return> { [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] 118 | fn parse_expr_stmt(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:167:22 [INFO] [stdout] | [INFO] [stdout] 167 | fn parse_if_stmt(&mut self) -> parser::Return> { [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] 167 | fn parse_if_stmt(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:228:25 [INFO] [stdout] | [INFO] [stdout] 228 | fn parse_elif_block(&mut self) -> parser::Return<(Spanned, Block)> { [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] 228 | fn parse_elif_block(&mut self) -> parser::Return<'_, (Spanned, Block)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:256:25 [INFO] [stdout] | [INFO] [stdout] 256 | fn parse_else_block(&mut self) -> parser::Return { [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] 256 | fn parse_else_block(&mut self) -> parser::Return<'_, Block> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:261:23 [INFO] [stdout] | [INFO] [stdout] 261 | fn parse_for_loop(&mut self) -> parser::Return> { [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] 261 | fn parse_for_loop(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:287:25 [INFO] [stdout] | [INFO] [stdout] 287 | fn parse_while_loop(&mut self) -> parser::Return> { [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] 287 | fn parse_while_loop(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:299:21 [INFO] [stdout] | [INFO] [stdout] 299 | fn parse_return(&mut self) -> parser::Return> { [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] 299 | fn parse_return(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:316:39 [INFO] [stdout] | [INFO] [stdout] 316 | pub(crate) fn parse_toplevel_stmt(&mut self) -> parser::Return { [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] 316 | pub(crate) fn parse_toplevel_stmt(&mut self) -> parser::Return<'_, ToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:348:26 [INFO] [stdout] | [INFO] [stdout] 348 | fn parse_dotted_path(&mut self) -> parser::Return> { [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] 348 | fn parse_dotted_path(&mut self) -> parser::Return<'_, Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:413:21 [INFO] [stdout] | [INFO] [stdout] 413 | fn parse_import(&mut self) -> parser::Return { [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] 413 | fn parse_import(&mut self) -> parser::Return<'_, ToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:434:29 [INFO] [stdout] | [INFO] [stdout] 434 | fn parse_extern_declare(&mut self) -> parser::Return { [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] 434 | fn parse_extern_declare(&mut self) -> parser::Return<'_, ToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:467:29 [INFO] [stdout] | [INFO] [stdout] 467 | fn parse_struct_declare(&mut self) -> parser::Return { [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] 467 | fn parse_struct_declare(&mut self) -> parser::Return<'_, ToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:499:27 [INFO] [stdout] | [INFO] [stdout] 499 | fn parse_enum_declare(&mut self) -> parser::Return { [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] 499 | fn parse_enum_declare(&mut self) -> parser::Return<'_, ToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:529:31 [INFO] [stdout] | [INFO] [stdout] 529 | fn parse_function_declare(&mut self) -> parser::Return { [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] 529 | fn parse_function_declare(&mut self) -> parser::Return<'_, ToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/tidbits.rs:72:30 [INFO] [stdout] | [INFO] [stdout] 72 | pub(crate) fn parse_type(&mut self) -> parser::Return { [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] 72 | pub(crate) fn parse_type(&mut self) -> parser::Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/tidbits.rs:122:41 [INFO] [stdout] | [INFO] [stdout] 122 | pub(crate) fn parse_annotated_param(&mut self) -> parser::Return { [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] 122 | pub(crate) fn parse_annotated_param(&mut self) -> parser::Return<'_, Param> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/tidbits.rs:129:42 [INFO] [stdout] | [INFO] [stdout] 129 | pub(crate) fn parse_annotated_params(&mut self) -> parser::Return> { [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] 129 | pub(crate) fn parse_annotated_params(&mut self) -> parser::Return<'_, Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/tidbits.rs:153:32 [INFO] [stdout] | [INFO] [stdout] 153 | pub(crate) fn parse_params(&mut self) -> parser::Return> { [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] 153 | pub(crate) fn parse_params(&mut self) -> parser::Return<'_, Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/parser_tests.rs:6:27 [INFO] [stdout] | [INFO] [stdout] 6 | pub(crate) fn parser(src: &str) -> Parser { [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] 6 | pub(crate) fn parser(src: &str) -> Parser<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `location` [INFO] [stdout] --> src/syntax/parser/expr.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | let location = self.advance().map(|t| t.location).unwrap_or_default(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_location` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token` [INFO] [stdout] --> src/syntax/parser/stmt.rs:471:13 [INFO] [stdout] | [INFO] [stdout] 471 | let token = self.expect(TokenKind::KwStruct)?; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_token` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token` [INFO] [stdout] --> src/syntax/parser/stmt.rs:503:13 [INFO] [stdout] | [INFO] [stdout] 503 | let token = self.expect(TokenKind::KwEnum)?; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_token` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `check` is never used [INFO] [stdout] --> src/syntax/parser/mod.rs:56:19 [INFO] [stdout] | [INFO] [stdout] 29 | impl<'p> Parser<'p> { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 56 | pub(crate) fn check(&mut self, kind: TokenKind) -> Return> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/resolver.rs:70:35 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn insert_modulewide_name(&mut self, name: &str, ty: Ty) -> Return<()> { [INFO] [stdout] | ^^^^^^^^^ ---------- the lifetime gets resolved as `'_` [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 remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 70 | pub fn insert_modulewide_name(&mut self, name: &str, ty: Ty) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/resolver.rs:94:24 [INFO] [stdout] | [INFO] [stdout] 94 | pub fn insert_name(&mut self, name: &str, ty: Ty) -> Return<()> { [INFO] [stdout] | ^^^^^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 94 | pub fn insert_name(&mut self, name: &str, ty: Ty) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/resolver.rs:113:24 [INFO] [stdout] | [INFO] [stdout] 113 | pub fn remove_name(&mut self, name: &str) -> Return<()> { [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] 113 | pub fn remove_name(&mut self, name: &str) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/resolver.rs:126:24 [INFO] [stdout] | [INFO] [stdout] 126 | pub fn update_name(&mut self, name: &str, ty: Ty) -> Return<()> { [INFO] [stdout] | ^^^^^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 126 | pub fn update_name(&mut self, name: &str, ty: Ty) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:23:18 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn equal(&self, t1: &Ty, t2: &Ty, location: &SourceLoc) -> Return<()> { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [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] 23 | pub fn equal(&self, t1: &Ty, t2: &Ty, location: &SourceLoc) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:54:24 [INFO] [stdout] | [INFO] [stdout] 54 | fn resolve_generic(&self, ty: &Ty) -> Return { [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] 54 | fn resolve_generic(&self, ty: &Ty) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:73:28 [INFO] [stdout] | [INFO] [stdout] 73 | fn specialize_function(&self, func: &FunctionInfo) -> Return { [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] 73 | fn specialize_function(&self, func: &FunctionInfo) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:123:22 [INFO] [stdout] | [INFO] [stdout] 123 | fn unify_typevar(&self, ty: &Ty, tv: usize, location: &SourceLoc) -> Return<()> { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [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] 123 | fn unify_typevar(&self, ty: &Ty, tv: usize, location: &SourceLoc) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:141:18 [INFO] [stdout] | [INFO] [stdout] 141 | pub fn unify(&self, t1: &Ty, t2: &Ty, location: &SourceLoc) -> Return<()> { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 141 | pub fn unify(&self, t1: &Ty, t2: &Ty, location: &SourceLoc) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:237:25 [INFO] [stdout] | [INFO] [stdout] 237 | fn can_perform_cast(&self, t1: &Ty, t2: &Ty, location: &SourceLoc) -> Return<()> { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [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] 237 | fn can_perform_cast(&self, t1: &Ty, t2: &Ty, location: &SourceLoc) -> Return<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:255:22 [INFO] [stdout] | [INFO] [stdout] 255 | pub fn cast_expr(&mut self, expr: &Spanned, target_ty: &Ty) -> Return> { [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output --------------------- the lifetime gets resolved as `'_` [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] 255 | pub fn cast_expr(&mut self, expr: &Spanned, target_ty: &Ty) -> Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:265:9 [INFO] [stdout] | [INFO] [stdout] 265 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 269 | ) -> Return> { [INFO] [stdout] | --------------------- the lifetime gets resolved as `'_` [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] 269 | ) -> Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:326:25 [INFO] [stdout] | [INFO] [stdout] 326 | fn infer_binop_expr(&self, lhs: &Spanned, op: &Op, rhs: &Spanned) -> Return { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [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] 326 | fn infer_binop_expr(&self, lhs: &Spanned, op: &Op, rhs: &Spanned) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:362:23 [INFO] [stdout] | [INFO] [stdout] 362 | pub fn infer_expr(&self, value: &Spanned) -> Return { [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] 362 | pub fn infer_expr(&self, value: &Spanned) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:411:28 [INFO] [stdout] | [INFO] [stdout] 411 | pub fn infer_call_expr(&self, name: &'t str, args: &Vec>) -> Return { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [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] 411 | pub fn infer_call_expr(&self, name: &'t str, args: &Vec>) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:454:32 [INFO] [stdout] | [INFO] [stdout] 454 | pub fn infer_array_literal(&self, elems: &[Spanned]) -> Return { [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] 454 | pub fn infer_array_literal(&self, elems: &[Spanned]) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/type_infer.rs:473:9 [INFO] [stdout] | [INFO] [stdout] 473 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 476 | ) -> Return { [INFO] [stdout] | ---------- the lifetime gets resolved as `'_` [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] 476 | ) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:48:24 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn lookup_name(&self, name: &str, location: SourceLoc) -> Return { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [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] 48 | pub fn lookup_name(&self, name: &str, location: SourceLoc) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:60:33 [INFO] [stdout] | [INFO] [stdout] 60 | pub fn lookup_member_access(&self, member: &Member, _location: SourceLoc) -> Return { [INFO] [stdout] | ^^^^^ this lifetime flows to the output ---------- the lifetime gets resolved as `'_` [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] 60 | pub fn lookup_member_access(&self, member: &Member, _location: SourceLoc) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:91:26 [INFO] [stdout] | [INFO] [stdout] 91 | pub fn check_literal(&mut self, lit: &Literal) -> Return { [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] 91 | pub fn check_literal(&mut self, lit: &Literal) -> Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:95:23 [INFO] [stdout] | [INFO] [stdout] 95 | pub fn check_expr(&mut self, expr: &Spanned) -> Return> { [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] 95 | pub fn check_expr(&mut self, expr: &Spanned) -> Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:179:23 [INFO] [stdout] | [INFO] [stdout] 179 | pub fn check_stmt(&mut self, stmt: &Spanned) -> Return> { [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] 179 | pub fn check_stmt(&mut self, stmt: &Spanned) -> Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:279:20 [INFO] [stdout] | [INFO] [stdout] 279 | fn check_block(&mut self, block: &Block) -> Return>> { [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] 279 | fn check_block(&mut self, block: &Block) -> Return<'_, Vec>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 289 | &mut self, [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 292 | ) -> Return>> { [INFO] [stdout] | ------------------------------ the lifetime gets resolved as `'_` [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] 292 | ) -> Return<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:325:9 [INFO] [stdout] | [INFO] [stdout] 325 | &mut self, [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 330 | ) -> Return { [INFO] [stdout] | --------------------- the lifetime gets resolved as `'_` [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] 330 | ) -> Return<'_, TToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:375:9 [INFO] [stdout] | [INFO] [stdout] 375 | &mut self, [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 378 | ) -> Return { [INFO] [stdout] | --------------------- the lifetime gets resolved as `'_` [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] 378 | ) -> Return<'_, TToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:403:27 [INFO] [stdout] | [INFO] [stdout] 403 | fn check_enum_declare(&mut self, name: &str, fields: &[String]) -> Return { [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output --------------------- the lifetime gets resolved as `'_` [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] 403 | fn check_enum_declare(&mut self, name: &str, fields: &[String]) -> Return<'_, TToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:433:9 [INFO] [stdout] | [INFO] [stdout] 433 | &mut self, [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stdout] 434 | stmt: &Spanned, [INFO] [stdout] 435 | ) -> ReturnErrors> { [INFO] [stdout] | ------------------------------------ the lifetime gets resolved as `'_` [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] 435 | ) -> ReturnErrors<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/sema/typecheck.rs:496:18 [INFO] [stdout] | [INFO] [stdout] 496 | pub fn check(&mut self, ast: &Ast) -> ReturnErrors { [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] 496 | pub fn check(&mut self, ast: &Ast) -> ReturnErrors<'_, TypedAst> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/lexer.rs:290:24 [INFO] [stdout] | [INFO] [stdout] 290 | pub fn lex_tokens(src: &str) -> LexerIter { [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] 290 | pub fn lex_tokens(src: &str) -> LexerIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/mod.rs:56:25 [INFO] [stdout] | [INFO] [stdout] 56 | pub(crate) fn check(&mut self, kind: TokenKind) -> Return> { [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] 56 | pub(crate) fn check(&mut self, kind: TokenKind) -> Return<'_, Token<'p>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/mod.rs:76:26 [INFO] [stdout] | [INFO] [stdout] 76 | pub(crate) fn expect(&mut self, kind: TokenKind) -> Return> { [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] 76 | pub(crate) fn expect(&mut self, kind: TokenKind) -> Return<'_, Token<'p>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/mod.rs:95:33 [INFO] [stdout] | [INFO] [stdout] 95 | pub(crate) fn expect_one_of(&mut self, kinds: Vec) -> Return> { [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] 95 | pub(crate) fn expect_one_of(&mut self, kinds: Vec) -> Return<'_, Token<'p>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/mod.rs:115:32 [INFO] [stdout] | [INFO] [stdout] 115 | pub(crate) fn expect_error(&mut self, kind: TokenKind, err: SyntaxError) -> Return> { [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output ----------------- the lifetime gets resolved as `'_` [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] 115 | pub(crate) fn expect_error(&mut self, kind: TokenKind, err: SyntaxError) -> Return<'_, Token<'p>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:16:24 [INFO] [stdout] | [INFO] [stdout] 16 | fn parse_expr_prec(&mut self, min_prec: u8) -> parser::Return> { [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] 16 | fn parse_expr_prec(&mut self, min_prec: u8) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:53:23 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn parse_expr(&mut self) -> parser::Return> { [INFO] [stdout] | ^^^^^^^^^ ----------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 53 | pub fn parse_expr(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:57:24 [INFO] [stdout] | [INFO] [stdout] 57 | fn parse_main_expr(&mut self) -> parser::Return> { [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] 57 | fn parse_main_expr(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:131:9 [INFO] [stdout] | [INFO] [stdout] 131 | &mut self, [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stdout] 132 | base_node: Spanned, [INFO] [stdout] 133 | ) -> parser::Return> { [INFO] [stdout] | ----------------------------- the lifetime gets resolved as `'_` [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] 133 | ) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:189:22 [INFO] [stdout] | [INFO] [stdout] 189 | fn parse_literal(&mut self, token: &Token) -> parser::Return { [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] 189 | fn parse_literal(&mut self, token: &Token) -> parser::Return<'_, Literal> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:204:9 [INFO] [stdout] | [INFO] [stdout] 204 | &mut self, [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stdout] 205 | callee: Spanned, [INFO] [stdout] 206 | ) -> parser::Return> { [INFO] [stdout] | ----------------------------- the lifetime gets resolved as `'_` [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] 206 | ) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:243:24 [INFO] [stdout] | [INFO] [stdout] 243 | fn parse_cast_expr(&mut self) -> parser::Return> { [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] 243 | fn parse_cast_expr(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:257:28 [INFO] [stdout] | [INFO] [stdout] 257 | fn parse_array_literal(&mut self) -> parser::Return> { [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] 257 | fn parse_array_literal(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:292:26 [INFO] [stdout] | [INFO] [stdout] 292 | fn parse_array_index(&mut self, _array: &Expr) -> parser::Return> { [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] 292 | fn parse_array_index(&mut self, _array: &Expr) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:323:27 [INFO] [stdout] | [INFO] [stdout] 323 | fn parse_struct_field(&mut self) -> parser::Return<(String, Spanned)> { [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] 323 | fn parse_struct_field(&mut self) -> parser::Return<'_, (String, Spanned)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/expr.rs:331:33 [INFO] [stdout] | [INFO] [stdout] 331 | fn parse_struct_constructor(&mut self) -> parser::Return> { [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] 331 | fn parse_struct_constructor(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:12:31 [INFO] [stdout] | [INFO] [stdout] 12 | pub(crate) fn parse_block(&mut self) -> parser::Return { [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] 12 | pub(crate) fn parse_block(&mut self) -> parser::Return<'_, Block> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:36:30 [INFO] [stdout] | [INFO] [stdout] 36 | pub(crate) fn parse_stmt(&mut self) -> parser::Return> { [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] 36 | pub(crate) fn parse_stmt(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:82:23 [INFO] [stdout] | [INFO] [stdout] 82 | fn parse_let_stmt(&mut self) -> parser::Return> { [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] 82 | fn parse_let_stmt(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:118:24 [INFO] [stdout] | [INFO] [stdout] 118 | fn parse_expr_stmt(&mut self) -> parser::Return> { [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] 118 | fn parse_expr_stmt(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:167:22 [INFO] [stdout] | [INFO] [stdout] 167 | fn parse_if_stmt(&mut self) -> parser::Return> { [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] 167 | fn parse_if_stmt(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:228:25 [INFO] [stdout] | [INFO] [stdout] 228 | fn parse_elif_block(&mut self) -> parser::Return<(Spanned, Block)> { [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] 228 | fn parse_elif_block(&mut self) -> parser::Return<'_, (Spanned, Block)> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:256:25 [INFO] [stdout] | [INFO] [stdout] 256 | fn parse_else_block(&mut self) -> parser::Return { [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] 256 | fn parse_else_block(&mut self) -> parser::Return<'_, Block> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:261:23 [INFO] [stdout] | [INFO] [stdout] 261 | fn parse_for_loop(&mut self) -> parser::Return> { [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] 261 | fn parse_for_loop(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:287:25 [INFO] [stdout] | [INFO] [stdout] 287 | fn parse_while_loop(&mut self) -> parser::Return> { [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] 287 | fn parse_while_loop(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:299:21 [INFO] [stdout] | [INFO] [stdout] 299 | fn parse_return(&mut self) -> parser::Return> { [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] 299 | fn parse_return(&mut self) -> parser::Return<'_, Spanned> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:316:39 [INFO] [stdout] | [INFO] [stdout] 316 | pub(crate) fn parse_toplevel_stmt(&mut self) -> parser::Return { [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] 316 | pub(crate) fn parse_toplevel_stmt(&mut self) -> parser::Return<'_, ToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:348:26 [INFO] [stdout] | [INFO] [stdout] 348 | fn parse_dotted_path(&mut self) -> parser::Return> { [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] 348 | fn parse_dotted_path(&mut self) -> parser::Return<'_, Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:413:21 [INFO] [stdout] | [INFO] [stdout] 413 | fn parse_import(&mut self) -> parser::Return { [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] 413 | fn parse_import(&mut self) -> parser::Return<'_, ToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:434:29 [INFO] [stdout] | [INFO] [stdout] 434 | fn parse_extern_declare(&mut self) -> parser::Return { [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] 434 | fn parse_extern_declare(&mut self) -> parser::Return<'_, ToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:467:29 [INFO] [stdout] | [INFO] [stdout] 467 | fn parse_struct_declare(&mut self) -> parser::Return { [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] 467 | fn parse_struct_declare(&mut self) -> parser::Return<'_, ToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:499:27 [INFO] [stdout] | [INFO] [stdout] 499 | fn parse_enum_declare(&mut self) -> parser::Return { [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] 499 | fn parse_enum_declare(&mut self) -> parser::Return<'_, ToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/stmt.rs:529:31 [INFO] [stdout] | [INFO] [stdout] 529 | fn parse_function_declare(&mut self) -> parser::Return { [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] 529 | fn parse_function_declare(&mut self) -> parser::Return<'_, ToplevelStmt> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/tidbits.rs:72:30 [INFO] [stdout] | [INFO] [stdout] 72 | pub(crate) fn parse_type(&mut self) -> parser::Return { [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] 72 | pub(crate) fn parse_type(&mut self) -> parser::Return<'_, Ty> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/tidbits.rs:122:41 [INFO] [stdout] | [INFO] [stdout] 122 | pub(crate) fn parse_annotated_param(&mut self) -> parser::Return { [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] 122 | pub(crate) fn parse_annotated_param(&mut self) -> parser::Return<'_, Param> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/tidbits.rs:129:42 [INFO] [stdout] | [INFO] [stdout] 129 | pub(crate) fn parse_annotated_params(&mut self) -> parser::Return> { [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] 129 | pub(crate) fn parse_annotated_params(&mut self) -> parser::Return<'_, Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/syntax/parser/tidbits.rs:153:32 [INFO] [stdout] | [INFO] [stdout] 153 | pub(crate) fn parse_params(&mut self) -> parser::Return> { [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] 153 | pub(crate) fn parse_params(&mut self) -> parser::Return<'_, Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 34.78s [INFO] running `Command { std: "docker" "inspect" "e68b49f83a16d66bce8628e49ec9a367e41b5e2668ac0ef3668a06cd7978dfe1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e68b49f83a16d66bce8628e49ec9a367e41b5e2668ac0ef3668a06cd7978dfe1", kill_on_drop: false }` [INFO] [stdout] e68b49f83a16d66bce8628e49ec9a367e41b5e2668ac0ef3668a06cd7978dfe1