[INFO] cloning repository https://github.com/pandemonium/marmelade
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/pandemonium/marmelade" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpandemonium%2Fmarmelade", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpandemonium%2Fmarmelade'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] af50817acddd199a4512e2e32d586bec131460da
[INFO] testing pandemonium/marmelade against master#d98a5da813da67eb189387b8ccfb73cf481275d8+rustflags=-Copt-level=3 for pr-138759
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpandemonium%2Fmarmelade" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/pandemonium/marmelade
[INFO] finished tweaking git repo https://github.com/pandemonium/marmelade
[INFO] tweaked toml for git repo https://github.com/pandemonium/marmelade written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/pandemonium/marmelade on toolchain d98a5da813da67eb189387b8ccfb73cf481275d8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/pandemonium/marmelade 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" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded thiserror-impl v2.0.11
[INFO] [stderr]   Downloaded thiserror v2.0.11
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a441d6f90cc9d355e2703d97260aca89071d864cd18fa336a626e4eaeeba0021
[INFO] running `Command { std: "docker" "start" "-a" "a441d6f90cc9d355e2703d97260aca89071d864cd18fa336a626e4eaeeba0021", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a441d6f90cc9d355e2703d97260aca89071d864cd18fa336a626e4eaeeba0021", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a441d6f90cc9d355e2703d97260aca89071d864cd18fa336a626e4eaeeba0021", kill_on_drop: false }`
[INFO] [stdout] a441d6f90cc9d355e2703d97260aca89071d864cd18fa336a626e4eaeeba0021
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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 -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5b0aa423ad1b043e3debcfd6a7ceb63e95d8ac9c75d81c2fb219d8f6f9f596fb
[INFO] running `Command { std: "docker" "start" "-a" "5b0aa423ad1b043e3debcfd6a7ceb63e95d8ac9c75d81c2fb219d8f6f9f596fb", kill_on_drop: false }`
[INFO] [stderr]    Compiling thiserror v2.0.11
[INFO] [stderr]    Compiling syn v2.0.98
[INFO] [stderr]    Compiling thiserror-impl v2.0.11
[INFO] [stderr]    Compiling marmelade v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Constant`
[INFO] [stdout]  --> src/parser.rs:6:49
[INFO] [stdout]   |
[INFO] [stdout] 6 |         Apply, Arrow, Binding, CompilationUnit, Constant, Constructor, ConstructorPattern,
[INFO] [stdout]   |                                                 ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Constant` and `Parameter`
[INFO] [stdout]  --> src/typer/checking.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 |         Apply, Binding, Constant, ControlFlow, Expression, Identifier, Lambda, Parameter, Product,
[INFO] [stdout]   |                         ^^^^^^^^                                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/ast.rs:89:29
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn dependency_graph(&self) -> DependencyGraph {
[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] 89 |     pub fn dependency_graph(&self) -> DependencyGraph<'_> {
[INFO] [stdout]    |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/interpreter.rs:217:34
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn get_module_map<A>(module: &ModuleDeclarator<A>) -> ModuleMap<A> {
[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] 217 |     fn get_module_map<A>(module: &ModuleDeclarator<A>) -> ModuleMap<'_, A> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:142:34
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub fn parse_declarations(input: &[Token]) -> ParseResult<Vec<Declaration<ParsingInfo>>> {
[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] 142 | pub fn parse_declarations(input: &[Token]) -> ParseResult<'_, Vec<Declaration<ParsingInfo>>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:186:33
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub fn parse_declaration(input: &[Token]) -> ParseResult<Declaration<ParsingInfo>> {
[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] 186 | pub fn parse_declaration(input: &[Token]) -> ParseResult<'_, Declaration<ParsingInfo>> {
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:250:14
[INFO] [stdout]     |
[INFO] [stdout] 250 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 251 | ) -> ParseResult<TypeDeclarator<ParsingInfo>> {
[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] 251 | ) -> ParseResult<'_, TypeDeclarator<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:279:14
[INFO] [stdout]     |
[INFO] [stdout] 279 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 280 | ) -> ParseResult<TypeDeclarator<ParsingInfo>> {
[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] 280 | ) -> ParseResult<'_, TypeDeclarator<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:296:40
[INFO] [stdout]     |
[INFO] [stdout] 296 | fn parse_universal_quantifier(remains: &[Token]) -> ParseResult<UniversalQuantifiers> {
[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] 296 | fn parse_universal_quantifier(remains: &[Token]) -> ParseResult<'_, UniversalQuantifiers> {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:323:37
[INFO] [stdout]     |
[INFO] [stdout] 323 | fn parse_struct_declarator(remains: &[Token]) -> ParseResult<Struct<ParsingInfo>> {
[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_declarator(remains: &[Token]) -> ParseResult<'_, Struct<ParsingInfo>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:374:44
[INFO] [stdout]     |
[INFO] [stdout] 374 | fn parse_struct_field_declaration(remains: &[Token]) -> ParseResult<StructField<ParsingInfo>> {
[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] 374 | fn parse_struct_field_declaration(remains: &[Token]) -> ParseResult<'_, StructField<ParsingInfo>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:389:29
[INFO] [stdout]     |
[INFO] [stdout] 389 | fn parse_coproduct(remains: &[Token]) -> ParseResult<Coproduct<ParsingInfo>> {
[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] 389 | fn parse_coproduct(remains: &[Token]) -> ParseResult<'_, Coproduct<ParsingInfo>> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:427:31
[INFO] [stdout]     |
[INFO] [stdout] 427 | fn parse_constructor(remains: &[Token]) -> ParseResult<Constructor<ParsingInfo>> {
[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] 427 | fn parse_constructor(remains: &[Token]) -> ParseResult<'_, Constructor<ParsingInfo>> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:441:18
[INFO] [stdout]     |
[INFO] [stdout] 441 |     mut remains: &[Token],
[INFO] [stdout]     |                  ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 442 | ) -> ParseResult<Vec<TypeExpression<ParsingInfo>>> {
[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] 442 | ) -> ParseResult<'_, Vec<TypeExpression<ParsingInfo>>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:464:35
[INFO] [stdout]     |
[INFO] [stdout] 464 | fn parse_type_expression(remains: &[Token]) -> ParseResult<TypeExpression<ParsingInfo>> {
[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] 464 | fn parse_type_expression(remains: &[Token]) -> ParseResult<'_, TypeExpression<ParsingInfo>> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:469:42
[INFO] [stdout]     |
[INFO] [stdout] 469 | fn parse_type_expression_prefix(remains: &[Token]) -> ParseResult<TypeExpression<ParsingInfo>> {
[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] 469 | fn parse_type_expression_prefix(remains: &[Token]) -> ParseResult<'_, TypeExpression<ParsingInfo>> {
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:498:14
[INFO] [stdout]     |
[INFO] [stdout] 498 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 499 | ) -> ParseResult<TypeExpression<ParsingInfo>> {
[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] 499 | ) -> ParseResult<'_, TypeExpression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:584:34
[INFO] [stdout]     |
[INFO] [stdout] 584 | fn parse_parameter_list(remains: &[Token]) -> ParseResult<Vec<Parameter>> {
[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] 584 | fn parse_parameter_list(remains: &[Token]) -> ParseResult<'_, Vec<Parameter>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:633:36
[INFO] [stdout]     |
[INFO] [stdout] 633 | fn parse_expression_prefix(tokens: &[Token]) -> ParseResult<Expression<ParsingInfo>> {
[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] 633 | fn parse_expression_prefix(tokens: &[Token]) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:731:14
[INFO] [stdout]     |
[INFO] [stdout] 731 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 732 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 732 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:761:14
[INFO] [stdout]     |
[INFO] [stdout] 761 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 762 | ) -> ParseResult<(Identifier, Expression<ParsingInfo>)> {
[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] 762 | ) -> ParseResult<'_, (Identifier, Expression<ParsingInfo>)> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:779:13
[INFO] [stdout]     |
[INFO] [stdout] 779 |     tokens: &[Token],
[INFO] [stdout]     |             ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 780 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 780 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:804:14
[INFO] [stdout]     |
[INFO] [stdout] 804 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 805 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 805 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:846:14
[INFO] [stdout]     |
[INFO] [stdout] 846 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 847 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 847 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:884:32
[INFO] [stdout]     |
[INFO] [stdout] 884 | fn parse_match_clause(remains: &[Token]) -> ParseResult<MatchClause<ParsingInfo>> {
[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] 884 | fn parse_match_clause(remains: &[Token]) -> ParseResult<'_, MatchClause<ParsingInfo>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:898:27
[INFO] [stdout]     |
[INFO] [stdout] 898 | fn parse_pattern(remains: &[Token]) -> ParseResult<Pattern<ParsingInfo>> {
[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] 898 | fn parse_pattern(remains: &[Token]) -> ParseResult<'_, Pattern<ParsingInfo>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:952:36
[INFO] [stdout]     |
[INFO] [stdout] 952 | fn parse_pattern_list(mut remains: &[Token]) -> ParseResult<Vec<Pattern<ParsingInfo>>> {
[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] 952 | fn parse_pattern_list(mut remains: &[Token]) -> ParseResult<'_, Vec<Pattern<ParsingInfo>>> {
[INFO] [stdout]     |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1009:14
[INFO] [stdout]      |
[INFO] [stdout] 1009 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1010 | ) -> ParseResult<(Identifier, Pattern<ParsingInfo>)> {
[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] 1010 | ) -> ParseResult<'_, (Identifier, Pattern<ParsingInfo>)> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1101:12
[INFO] [stdout]      |
[INFO] [stdout] 1101 |     input: &[Token],
[INFO] [stdout]      |            ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1102 |     precedence: usize,
[INFO] [stdout] 1103 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1103 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1124:12
[INFO] [stdout]      |
[INFO] [stdout] 1124 |     input: &[Token],
[INFO] [stdout]      |            ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1125 |     context_precedence: usize,
[INFO] [stdout] 1126 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1126 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1239:14
[INFO] [stdout]      |
[INFO] [stdout] 1239 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1240 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1240 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1265:14
[INFO] [stdout]      |
[INFO] [stdout] 1265 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1266 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1266 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1289:14
[INFO] [stdout]      |
[INFO] [stdout] 1289 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1290 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1290 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1322:14
[INFO] [stdout]      |
[INFO] [stdout] 1322 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] ...
[INFO] [stdout] 1325 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1325 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1339:13
[INFO] [stdout]      |
[INFO] [stdout] 1339 |     tokens: &[Token],
[INFO] [stdout]      |             ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1340 |     precedence: usize,
[INFO] [stdout] 1341 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1341 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1361:13
[INFO] [stdout]      |
[INFO] [stdout] 1361 |     tokens: &[Token],
[INFO] [stdout]      |             ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1362 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1362 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 42.10s
[INFO] running `Command { std: "docker" "inspect" "5b0aa423ad1b043e3debcfd6a7ceb63e95d8ac9c75d81c2fb219d8f6f9f596fb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5b0aa423ad1b043e3debcfd6a7ceb63e95d8ac9c75d81c2fb219d8f6f9f596fb", kill_on_drop: false }`
[INFO] [stdout] 5b0aa423ad1b043e3debcfd6a7ceb63e95d8ac9c75d81c2fb219d8f6f9f596fb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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 -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 35b9b873a3b07774a2a15a5bd787ff4977b18ec180c3caade00aac5d483616ad
[INFO] running `Command { std: "docker" "start" "-a" "35b9b873a3b07774a2a15a5bd787ff4977b18ec180c3caade00aac5d483616ad", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `Constant`
[INFO] [stdout]  --> src/parser.rs:6:49
[INFO] [stdout]   |
[INFO] [stdout] 6 |         Apply, Arrow, Binding, CompilationUnit, Constant, Constructor, ConstructorPattern,
[INFO] [stdout]   |                                                 ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Constant` and `Parameter`
[INFO] [stdout]  --> src/typer/checking.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 |         Apply, Binding, Constant, ControlFlow, Expression, Identifier, Lambda, Parameter, Product,
[INFO] [stdout]   |                         ^^^^^^^^                                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/ast.rs:89:29
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn dependency_graph(&self) -> DependencyGraph {
[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] 89 |     pub fn dependency_graph(&self) -> DependencyGraph<'_> {
[INFO] [stdout]    |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/interpreter.rs:217:34
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn get_module_map<A>(module: &ModuleDeclarator<A>) -> ModuleMap<A> {
[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] 217 |     fn get_module_map<A>(module: &ModuleDeclarator<A>) -> ModuleMap<'_, A> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:142:34
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub fn parse_declarations(input: &[Token]) -> ParseResult<Vec<Declaration<ParsingInfo>>> {
[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] 142 | pub fn parse_declarations(input: &[Token]) -> ParseResult<'_, Vec<Declaration<ParsingInfo>>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:186:33
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub fn parse_declaration(input: &[Token]) -> ParseResult<Declaration<ParsingInfo>> {
[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] 186 | pub fn parse_declaration(input: &[Token]) -> ParseResult<'_, Declaration<ParsingInfo>> {
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:250:14
[INFO] [stdout]     |
[INFO] [stdout] 250 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 251 | ) -> ParseResult<TypeDeclarator<ParsingInfo>> {
[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] 251 | ) -> ParseResult<'_, TypeDeclarator<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:279:14
[INFO] [stdout]     |
[INFO] [stdout] 279 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 280 | ) -> ParseResult<TypeDeclarator<ParsingInfo>> {
[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] 280 | ) -> ParseResult<'_, TypeDeclarator<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:296:40
[INFO] [stdout]     |
[INFO] [stdout] 296 | fn parse_universal_quantifier(remains: &[Token]) -> ParseResult<UniversalQuantifiers> {
[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] 296 | fn parse_universal_quantifier(remains: &[Token]) -> ParseResult<'_, UniversalQuantifiers> {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:323:37
[INFO] [stdout]     |
[INFO] [stdout] 323 | fn parse_struct_declarator(remains: &[Token]) -> ParseResult<Struct<ParsingInfo>> {
[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_declarator(remains: &[Token]) -> ParseResult<'_, Struct<ParsingInfo>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:374:44
[INFO] [stdout]     |
[INFO] [stdout] 374 | fn parse_struct_field_declaration(remains: &[Token]) -> ParseResult<StructField<ParsingInfo>> {
[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] 374 | fn parse_struct_field_declaration(remains: &[Token]) -> ParseResult<'_, StructField<ParsingInfo>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:389:29
[INFO] [stdout]     |
[INFO] [stdout] 389 | fn parse_coproduct(remains: &[Token]) -> ParseResult<Coproduct<ParsingInfo>> {
[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] 389 | fn parse_coproduct(remains: &[Token]) -> ParseResult<'_, Coproduct<ParsingInfo>> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:427:31
[INFO] [stdout]     |
[INFO] [stdout] 427 | fn parse_constructor(remains: &[Token]) -> ParseResult<Constructor<ParsingInfo>> {
[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] 427 | fn parse_constructor(remains: &[Token]) -> ParseResult<'_, Constructor<ParsingInfo>> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:441:18
[INFO] [stdout]     |
[INFO] [stdout] 441 |     mut remains: &[Token],
[INFO] [stdout]     |                  ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 442 | ) -> ParseResult<Vec<TypeExpression<ParsingInfo>>> {
[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] 442 | ) -> ParseResult<'_, Vec<TypeExpression<ParsingInfo>>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:464:35
[INFO] [stdout]     |
[INFO] [stdout] 464 | fn parse_type_expression(remains: &[Token]) -> ParseResult<TypeExpression<ParsingInfo>> {
[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] 464 | fn parse_type_expression(remains: &[Token]) -> ParseResult<'_, TypeExpression<ParsingInfo>> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:469:42
[INFO] [stdout]     |
[INFO] [stdout] 469 | fn parse_type_expression_prefix(remains: &[Token]) -> ParseResult<TypeExpression<ParsingInfo>> {
[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] 469 | fn parse_type_expression_prefix(remains: &[Token]) -> ParseResult<'_, TypeExpression<ParsingInfo>> {
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:498:14
[INFO] [stdout]     |
[INFO] [stdout] 498 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 499 | ) -> ParseResult<TypeExpression<ParsingInfo>> {
[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] 499 | ) -> ParseResult<'_, TypeExpression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:584:34
[INFO] [stdout]     |
[INFO] [stdout] 584 | fn parse_parameter_list(remains: &[Token]) -> ParseResult<Vec<Parameter>> {
[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] 584 | fn parse_parameter_list(remains: &[Token]) -> ParseResult<'_, Vec<Parameter>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:633:36
[INFO] [stdout]     |
[INFO] [stdout] 633 | fn parse_expression_prefix(tokens: &[Token]) -> ParseResult<Expression<ParsingInfo>> {
[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] 633 | fn parse_expression_prefix(tokens: &[Token]) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:731:14
[INFO] [stdout]     |
[INFO] [stdout] 731 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 732 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 732 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:761:14
[INFO] [stdout]     |
[INFO] [stdout] 761 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 762 | ) -> ParseResult<(Identifier, Expression<ParsingInfo>)> {
[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] 762 | ) -> ParseResult<'_, (Identifier, Expression<ParsingInfo>)> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:779:13
[INFO] [stdout]     |
[INFO] [stdout] 779 |     tokens: &[Token],
[INFO] [stdout]     |             ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 780 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 780 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling marmelade v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:804:14
[INFO] [stdout]     |
[INFO] [stdout] 804 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 805 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 805 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:846:14
[INFO] [stdout]     |
[INFO] [stdout] 846 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 847 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 847 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:884:32
[INFO] [stdout]     |
[INFO] [stdout] 884 | fn parse_match_clause(remains: &[Token]) -> ParseResult<MatchClause<ParsingInfo>> {
[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] 884 | fn parse_match_clause(remains: &[Token]) -> ParseResult<'_, MatchClause<ParsingInfo>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:898:27
[INFO] [stdout]     |
[INFO] [stdout] 898 | fn parse_pattern(remains: &[Token]) -> ParseResult<Pattern<ParsingInfo>> {
[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] 898 | fn parse_pattern(remains: &[Token]) -> ParseResult<'_, Pattern<ParsingInfo>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:952:36
[INFO] [stdout]     |
[INFO] [stdout] 952 | fn parse_pattern_list(mut remains: &[Token]) -> ParseResult<Vec<Pattern<ParsingInfo>>> {
[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] 952 | fn parse_pattern_list(mut remains: &[Token]) -> ParseResult<'_, Vec<Pattern<ParsingInfo>>> {
[INFO] [stdout]     |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1009:14
[INFO] [stdout]      |
[INFO] [stdout] 1009 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1010 | ) -> ParseResult<(Identifier, Pattern<ParsingInfo>)> {
[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] 1010 | ) -> ParseResult<'_, (Identifier, Pattern<ParsingInfo>)> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1101:12
[INFO] [stdout]      |
[INFO] [stdout] 1101 |     input: &[Token],
[INFO] [stdout]      |            ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1102 |     precedence: usize,
[INFO] [stdout] 1103 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1103 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1124:12
[INFO] [stdout]      |
[INFO] [stdout] 1124 |     input: &[Token],
[INFO] [stdout]      |            ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1125 |     context_precedence: usize,
[INFO] [stdout] 1126 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1126 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1239:14
[INFO] [stdout]      |
[INFO] [stdout] 1239 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1240 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1240 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1265:14
[INFO] [stdout]      |
[INFO] [stdout] 1265 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1266 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1266 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1289:14
[INFO] [stdout]      |
[INFO] [stdout] 1289 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1290 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1290 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1322:14
[INFO] [stdout]      |
[INFO] [stdout] 1322 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] ...
[INFO] [stdout] 1325 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1325 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1339:13
[INFO] [stdout]      |
[INFO] [stdout] 1339 |     tokens: &[Token],
[INFO] [stdout]      |             ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1340 |     precedence: usize,
[INFO] [stdout] 1341 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1341 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1361:13
[INFO] [stdout]      |
[INFO] [stdout] 1361 |     tokens: &[Token],
[INFO] [stdout]      |             ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1362 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1362 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> tests/declarations.rs:362:40
[INFO] [stdout]     |
[INFO] [stdout] 361 | ...                   name: todo!(),
[INFO] [stdout]     |                             ------- any code following this expression is unreachable
[INFO] [stdout] 362 | ...                   signature: todo!(),
[INFO] [stdout]     |                                  ^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `todo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pattern_match_basic2` is never used
[INFO] [stdout]   --> tests/declarations.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn pattern_match_basic2() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_constructor` is never used
[INFO] [stdout]    --> tests/declarations.rs:348:4
[INFO] [stdout]     |
[INFO] [stdout] 348 | fn type_constructor() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `listy_mclistface` is never used
[INFO] [stdout]    --> tests/declarations.rs:512:4
[INFO] [stdout]     |
[INFO] [stdout] 512 | fn listy_mclistface() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Constant`
[INFO] [stdout]  --> src/parser.rs:6:49
[INFO] [stdout]   |
[INFO] [stdout] 6 |         Apply, Arrow, Binding, CompilationUnit, Constant, Constructor, ConstructorPattern,
[INFO] [stdout]   |                                                 ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` 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/ast.rs:89:29
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn dependency_graph(&self) -> DependencyGraph {
[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] 89 |     pub fn dependency_graph(&self) -> DependencyGraph<'_> {
[INFO] [stdout]    |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/interpreter.rs:217:34
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn get_module_map<A>(module: &ModuleDeclarator<A>) -> ModuleMap<A> {
[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] 217 |     fn get_module_map<A>(module: &ModuleDeclarator<A>) -> ModuleMap<'_, A> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:142:34
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub fn parse_declarations(input: &[Token]) -> ParseResult<Vec<Declaration<ParsingInfo>>> {
[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] 142 | pub fn parse_declarations(input: &[Token]) -> ParseResult<'_, Vec<Declaration<ParsingInfo>>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:186:33
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub fn parse_declaration(input: &[Token]) -> ParseResult<Declaration<ParsingInfo>> {
[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] 186 | pub fn parse_declaration(input: &[Token]) -> ParseResult<'_, Declaration<ParsingInfo>> {
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:250:14
[INFO] [stdout]     |
[INFO] [stdout] 250 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 251 | ) -> ParseResult<TypeDeclarator<ParsingInfo>> {
[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] 251 | ) -> ParseResult<'_, TypeDeclarator<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:279:14
[INFO] [stdout]     |
[INFO] [stdout] 279 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 280 | ) -> ParseResult<TypeDeclarator<ParsingInfo>> {
[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] 280 | ) -> ParseResult<'_, TypeDeclarator<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:296:40
[INFO] [stdout]     |
[INFO] [stdout] 296 | fn parse_universal_quantifier(remains: &[Token]) -> ParseResult<UniversalQuantifiers> {
[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] 296 | fn parse_universal_quantifier(remains: &[Token]) -> ParseResult<'_, UniversalQuantifiers> {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:323:37
[INFO] [stdout]     |
[INFO] [stdout] 323 | fn parse_struct_declarator(remains: &[Token]) -> ParseResult<Struct<ParsingInfo>> {
[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_declarator(remains: &[Token]) -> ParseResult<'_, Struct<ParsingInfo>> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:374:44
[INFO] [stdout]     |
[INFO] [stdout] 374 | fn parse_struct_field_declaration(remains: &[Token]) -> ParseResult<StructField<ParsingInfo>> {
[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] 374 | fn parse_struct_field_declaration(remains: &[Token]) -> ParseResult<'_, StructField<ParsingInfo>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:389:29
[INFO] [stdout]     |
[INFO] [stdout] 389 | fn parse_coproduct(remains: &[Token]) -> ParseResult<Coproduct<ParsingInfo>> {
[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] 389 | fn parse_coproduct(remains: &[Token]) -> ParseResult<'_, Coproduct<ParsingInfo>> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:427:31
[INFO] [stdout]     |
[INFO] [stdout] 427 | fn parse_constructor(remains: &[Token]) -> ParseResult<Constructor<ParsingInfo>> {
[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] 427 | fn parse_constructor(remains: &[Token]) -> ParseResult<'_, Constructor<ParsingInfo>> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:441:18
[INFO] [stdout]     |
[INFO] [stdout] 441 |     mut remains: &[Token],
[INFO] [stdout]     |                  ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 442 | ) -> ParseResult<Vec<TypeExpression<ParsingInfo>>> {
[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] 442 | ) -> ParseResult<'_, Vec<TypeExpression<ParsingInfo>>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:464:35
[INFO] [stdout]     |
[INFO] [stdout] 464 | fn parse_type_expression(remains: &[Token]) -> ParseResult<TypeExpression<ParsingInfo>> {
[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] 464 | fn parse_type_expression(remains: &[Token]) -> ParseResult<'_, TypeExpression<ParsingInfo>> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:469:42
[INFO] [stdout]     |
[INFO] [stdout] 469 | fn parse_type_expression_prefix(remains: &[Token]) -> ParseResult<TypeExpression<ParsingInfo>> {
[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] 469 | fn parse_type_expression_prefix(remains: &[Token]) -> ParseResult<'_, TypeExpression<ParsingInfo>> {
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:498:14
[INFO] [stdout]     |
[INFO] [stdout] 498 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 499 | ) -> ParseResult<TypeExpression<ParsingInfo>> {
[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] 499 | ) -> ParseResult<'_, TypeExpression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:584:34
[INFO] [stdout]     |
[INFO] [stdout] 584 | fn parse_parameter_list(remains: &[Token]) -> ParseResult<Vec<Parameter>> {
[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] 584 | fn parse_parameter_list(remains: &[Token]) -> ParseResult<'_, Vec<Parameter>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:633:36
[INFO] [stdout]     |
[INFO] [stdout] 633 | fn parse_expression_prefix(tokens: &[Token]) -> ParseResult<Expression<ParsingInfo>> {
[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] 633 | fn parse_expression_prefix(tokens: &[Token]) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:731:14
[INFO] [stdout]     |
[INFO] [stdout] 731 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 732 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 732 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:761:14
[INFO] [stdout]     |
[INFO] [stdout] 761 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 762 | ) -> ParseResult<(Identifier, Expression<ParsingInfo>)> {
[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] 762 | ) -> ParseResult<'_, (Identifier, Expression<ParsingInfo>)> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:779:13
[INFO] [stdout]     |
[INFO] [stdout] 779 |     tokens: &[Token],
[INFO] [stdout]     |             ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 780 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 780 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:804:14
[INFO] [stdout]     |
[INFO] [stdout] 804 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 805 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 805 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:846:14
[INFO] [stdout]     |
[INFO] [stdout] 846 |     remains: &[Token],
[INFO] [stdout]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 847 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 847 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:884:32
[INFO] [stdout]     |
[INFO] [stdout] 884 | fn parse_match_clause(remains: &[Token]) -> ParseResult<MatchClause<ParsingInfo>> {
[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] 884 | fn parse_match_clause(remains: &[Token]) -> ParseResult<'_, MatchClause<ParsingInfo>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:898:27
[INFO] [stdout]     |
[INFO] [stdout] 898 | fn parse_pattern(remains: &[Token]) -> ParseResult<Pattern<ParsingInfo>> {
[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] 898 | fn parse_pattern(remains: &[Token]) -> ParseResult<'_, Pattern<ParsingInfo>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/parser.rs:952:36
[INFO] [stdout]     |
[INFO] [stdout] 952 | fn parse_pattern_list(mut remains: &[Token]) -> ParseResult<Vec<Pattern<ParsingInfo>>> {
[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] 952 | fn parse_pattern_list(mut remains: &[Token]) -> ParseResult<'_, Vec<Pattern<ParsingInfo>>> {
[INFO] [stdout]     |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1009:14
[INFO] [stdout]      |
[INFO] [stdout] 1009 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1010 | ) -> ParseResult<(Identifier, Pattern<ParsingInfo>)> {
[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] 1010 | ) -> ParseResult<'_, (Identifier, Pattern<ParsingInfo>)> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1101:12
[INFO] [stdout]      |
[INFO] [stdout] 1101 |     input: &[Token],
[INFO] [stdout]      |            ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1102 |     precedence: usize,
[INFO] [stdout] 1103 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1103 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1124:12
[INFO] [stdout]      |
[INFO] [stdout] 1124 |     input: &[Token],
[INFO] [stdout]      |            ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1125 |     context_precedence: usize,
[INFO] [stdout] 1126 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1126 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1239:14
[INFO] [stdout]      |
[INFO] [stdout] 1239 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1240 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1240 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1265:14
[INFO] [stdout]      |
[INFO] [stdout] 1265 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1266 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1266 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1289:14
[INFO] [stdout]      |
[INFO] [stdout] 1289 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1290 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1290 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1322:14
[INFO] [stdout]      |
[INFO] [stdout] 1322 |     remains: &[Token],
[INFO] [stdout]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] ...
[INFO] [stdout] 1325 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1325 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1339:13
[INFO] [stdout]      |
[INFO] [stdout] 1339 |     tokens: &[Token],
[INFO] [stdout]      |             ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1340 |     precedence: usize,
[INFO] [stdout] 1341 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1341 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]     --> src/parser.rs:1361:13
[INFO] [stdout]      |
[INFO] [stdout] 1361 |     tokens: &[Token],
[INFO] [stdout]      |             ^^^^^^^^ this lifetime flows to the output
[INFO] [stdout] 1362 | ) -> ParseResult<Expression<ParsingInfo>> {
[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] 1362 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stdout]      |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 39.08s
[INFO] running `Command { std: "docker" "inspect" "35b9b873a3b07774a2a15a5bd787ff4977b18ec180c3caade00aac5d483616ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "35b9b873a3b07774a2a15a5bd787ff4977b18ec180c3caade00aac5d483616ad", kill_on_drop: false }`
[INFO] [stdout] 35b9b873a3b07774a2a15a5bd787ff4977b18ec180c3caade00aac5d483616ad
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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 -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 0f5ce51e41e3c526f68fef03a43580ad56aa32e727de49706323d5eb3d0a24fe
[INFO] running `Command { std: "docker" "start" "-a" "0f5ce51e41e3c526f68fef03a43580ad56aa32e727de49706323d5eb3d0a24fe", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `Constant`
[INFO] [stderr]  --> src/parser.rs:6:49
[INFO] [stderr]   |
[INFO] [stderr] 6 |         Apply, Arrow, Binding, CompilationUnit, Constant, Constructor, ConstructorPattern,
[INFO] [stderr]   |                                                 ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Constant` and `Parameter`
[INFO] [stderr]  --> src/typer/checking.rs:7:25
[INFO] [stderr]   |
[INFO] [stderr] 7 |         Apply, Binding, Constant, ControlFlow, Expression, Identifier, Lambda, Parameter, Product,
[INFO] [stderr]   |                         ^^^^^^^^                                               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/ast.rs:89:29
[INFO] [stderr]    |
[INFO] [stderr] 89 |     pub fn dependency_graph(&self) -> DependencyGraph {
[INFO] [stderr]    |                             ^^^^^     --------------- the lifetime gets resolved as `'_`
[INFO] [stderr]    |                             |
[INFO] [stderr]    |                             this lifetime flows to the output
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]    |
[INFO] [stderr] 89 |     pub fn dependency_graph(&self) -> DependencyGraph<'_> {
[INFO] [stderr]    |                                                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/interpreter.rs:217:34
[INFO] [stderr]     |
[INFO] [stderr] 217 |     fn get_module_map<A>(module: &ModuleDeclarator<A>) -> ModuleMap<A> {
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^^^^^^     ------------ the lifetime gets resolved as `'_`
[INFO] [stderr]     |                                  |
[INFO] [stderr]     |                                  this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 217 |     fn get_module_map<A>(module: &ModuleDeclarator<A>) -> ModuleMap<'_, A> {
[INFO] [stderr]     |                                                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:142:34
[INFO] [stderr]     |
[INFO] [stderr] 142 | pub fn parse_declarations(input: &[Token]) -> ParseResult<Vec<Declaration<ParsingInfo>>> {
[INFO] [stderr]     |                                  ^^^^^^^^     ------------------------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]     |                                  |
[INFO] [stderr]     |                                  this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 142 | pub fn parse_declarations(input: &[Token]) -> ParseResult<'_, Vec<Declaration<ParsingInfo>>> {
[INFO] [stderr]     |                                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:186:33
[INFO] [stderr]     |
[INFO] [stderr] 186 | pub fn parse_declaration(input: &[Token]) -> ParseResult<Declaration<ParsingInfo>> {
[INFO] [stderr]     |                                 ^^^^^^^^     ------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                                 |
[INFO] [stderr]     |                                 this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 186 | pub fn parse_declaration(input: &[Token]) -> ParseResult<'_, Declaration<ParsingInfo>> {
[INFO] [stderr]     |                                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:250:14
[INFO] [stderr]     |
[INFO] [stderr] 250 |     remains: &[Token],
[INFO] [stderr]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 251 | ) -> ParseResult<TypeDeclarator<ParsingInfo>> {
[INFO] [stderr]     |      ---------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 251 | ) -> ParseResult<'_, TypeDeclarator<ParsingInfo>> {
[INFO] [stderr]     |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:279:14
[INFO] [stderr]     |
[INFO] [stderr] 279 |     remains: &[Token],
[INFO] [stderr]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 280 | ) -> ParseResult<TypeDeclarator<ParsingInfo>> {
[INFO] [stderr]     |      ---------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 280 | ) -> ParseResult<'_, TypeDeclarator<ParsingInfo>> {
[INFO] [stderr]     |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:296:40
[INFO] [stderr]     |
[INFO] [stderr] 296 | fn parse_universal_quantifier(remains: &[Token]) -> ParseResult<UniversalQuantifiers> {
[INFO] [stderr]     |                                        ^^^^^^^^     --------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                                        |
[INFO] [stderr]     |                                        this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 296 | fn parse_universal_quantifier(remains: &[Token]) -> ParseResult<'_, UniversalQuantifiers> {
[INFO] [stderr]     |                                                                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:323:37
[INFO] [stderr]     |
[INFO] [stderr] 323 | fn parse_struct_declarator(remains: &[Token]) -> ParseResult<Struct<ParsingInfo>> {
[INFO] [stderr]     |                                     ^^^^^^^^     -------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                                     |
[INFO] [stderr]     |                                     this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 323 | fn parse_struct_declarator(remains: &[Token]) -> ParseResult<'_, Struct<ParsingInfo>> {
[INFO] [stderr]     |                                                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:374:44
[INFO] [stderr]     |
[INFO] [stderr] 374 | fn parse_struct_field_declaration(remains: &[Token]) -> ParseResult<StructField<ParsingInfo>> {
[INFO] [stderr]     |                                            ^^^^^^^^     ------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                                            |
[INFO] [stderr]     |                                            this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 374 | fn parse_struct_field_declaration(remains: &[Token]) -> ParseResult<'_, StructField<ParsingInfo>> {
[INFO] [stderr]     |                                                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:389:29
[INFO] [stderr]     |
[INFO] [stderr] 389 | fn parse_coproduct(remains: &[Token]) -> ParseResult<Coproduct<ParsingInfo>> {
[INFO] [stderr]     |                             ^^^^^^^^     ----------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                             |
[INFO] [stderr]     |                             this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 389 | fn parse_coproduct(remains: &[Token]) -> ParseResult<'_, Coproduct<ParsingInfo>> {
[INFO] [stderr]     |                                                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:427:31
[INFO] [stderr]     |
[INFO] [stderr] 427 | fn parse_constructor(remains: &[Token]) -> ParseResult<Constructor<ParsingInfo>> {
[INFO] [stderr]     |                               ^^^^^^^^     ------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                               |
[INFO] [stderr]     |                               this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 427 | fn parse_constructor(remains: &[Token]) -> ParseResult<'_, Constructor<ParsingInfo>> {
[INFO] [stderr]     |                                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:441:18
[INFO] [stderr]     |
[INFO] [stderr] 441 |     mut remains: &[Token],
[INFO] [stderr]     |                  ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 442 | ) -> ParseResult<Vec<TypeExpression<ParsingInfo>>> {
[INFO] [stderr]     |      --------------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 442 | ) -> ParseResult<'_, Vec<TypeExpression<ParsingInfo>>> {
[INFO] [stderr]     |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:464:35
[INFO] [stderr]     |
[INFO] [stderr] 464 | fn parse_type_expression(remains: &[Token]) -> ParseResult<TypeExpression<ParsingInfo>> {
[INFO] [stderr]     |                                   ^^^^^^^^     ---------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                                   |
[INFO] [stderr]     |                                   this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 464 | fn parse_type_expression(remains: &[Token]) -> ParseResult<'_, TypeExpression<ParsingInfo>> {
[INFO] [stderr]     |                                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:469:42
[INFO] [stderr]     |
[INFO] [stderr] 469 | fn parse_type_expression_prefix(remains: &[Token]) -> ParseResult<TypeExpression<ParsingInfo>> {
[INFO] [stderr]     |                                          ^^^^^^^^     ---------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                                          |
[INFO] [stderr]     |                                          this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 469 | fn parse_type_expression_prefix(remains: &[Token]) -> ParseResult<'_, TypeExpression<ParsingInfo>> {
[INFO] [stderr]     |                                                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:498:14
[INFO] [stderr]     |
[INFO] [stderr] 498 |     remains: &[Token],
[INFO] [stderr]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 499 | ) -> ParseResult<TypeExpression<ParsingInfo>> {
[INFO] [stderr]     |      ---------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 499 | ) -> ParseResult<'_, TypeExpression<ParsingInfo>> {
[INFO] [stderr]     |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:584:34
[INFO] [stderr]     |
[INFO] [stderr] 584 | fn parse_parameter_list(remains: &[Token]) -> ParseResult<Vec<Parameter>> {
[INFO] [stderr]     |                                  ^^^^^^^^     --------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                                  |
[INFO] [stderr]     |                                  this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 584 | fn parse_parameter_list(remains: &[Token]) -> ParseResult<'_, Vec<Parameter>> {
[INFO] [stderr]     |                                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:633:36
[INFO] [stderr]     |
[INFO] [stderr] 633 | fn parse_expression_prefix(tokens: &[Token]) -> ParseResult<Expression<ParsingInfo>> {
[INFO] [stderr]     |                                    ^^^^^^^^     ------------------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]     |                                    |
[INFO] [stderr]     |                                    this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 633 | fn parse_expression_prefix(tokens: &[Token]) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stderr]     |                                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:731:14
[INFO] [stderr]     |
[INFO] [stderr] 731 |     remains: &[Token],
[INFO] [stderr]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 732 | ) -> ParseResult<Expression<ParsingInfo>> {
[INFO] [stderr]     |      ------------------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 732 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stderr]     |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:761:14
[INFO] [stderr]     |
[INFO] [stderr] 761 |     remains: &[Token],
[INFO] [stderr]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 762 | ) -> ParseResult<(Identifier, Expression<ParsingInfo>)> {
[INFO] [stderr]     |      -------------------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 762 | ) -> ParseResult<'_, (Identifier, Expression<ParsingInfo>)> {
[INFO] [stderr]     |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:779:13
[INFO] [stderr]     |
[INFO] [stderr] 779 |     tokens: &[Token],
[INFO] [stderr]     |             ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 780 | ) -> ParseResult<Expression<ParsingInfo>> {
[INFO] [stderr]     |      ------------------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 780 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stderr]     |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:804:14
[INFO] [stderr]     |
[INFO] [stderr] 804 |     remains: &[Token],
[INFO] [stderr]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 805 | ) -> ParseResult<Expression<ParsingInfo>> {
[INFO] [stderr]     |      ------------------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 805 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stderr]     |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:846:14
[INFO] [stderr]     |
[INFO] [stderr] 846 |     remains: &[Token],
[INFO] [stderr]     |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 847 | ) -> ParseResult<Expression<ParsingInfo>> {
[INFO] [stderr]     |      ------------------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 847 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stderr]     |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:884:32
[INFO] [stderr]     |
[INFO] [stderr] 884 | fn parse_match_clause(remains: &[Token]) -> ParseResult<MatchClause<ParsingInfo>> {
[INFO] [stderr]     |                                ^^^^^^^^     ------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                                |
[INFO] [stderr]     |                                this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 884 | fn parse_match_clause(remains: &[Token]) -> ParseResult<'_, MatchClause<ParsingInfo>> {
[INFO] [stderr]     |                                                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:898:27
[INFO] [stderr]     |
[INFO] [stderr] 898 | fn parse_pattern(remains: &[Token]) -> ParseResult<Pattern<ParsingInfo>> {
[INFO] [stderr]     |                           ^^^^^^^^     --------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                           |
[INFO] [stderr]     |                           this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 898 | fn parse_pattern(remains: &[Token]) -> ParseResult<'_, Pattern<ParsingInfo>> {
[INFO] [stderr]     |                                                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/parser.rs:952:36
[INFO] [stderr]     |
[INFO] [stderr] 952 | fn parse_pattern_list(mut remains: &[Token]) -> ParseResult<Vec<Pattern<ParsingInfo>>> {
[INFO] [stderr]     |                                    ^^^^^^^^     -------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                                    |
[INFO] [stderr]     |                                    this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 952 | fn parse_pattern_list(mut remains: &[Token]) -> ParseResult<'_, Vec<Pattern<ParsingInfo>>> {
[INFO] [stderr]     |                                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]     --> src/parser.rs:1009:14
[INFO] [stderr]      |
[INFO] [stderr] 1009 |     remains: &[Token],
[INFO] [stderr]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 1010 | ) -> ParseResult<(Identifier, Pattern<ParsingInfo>)> {
[INFO] [stderr]      |      ----------------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]      |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]      |
[INFO] [stderr] 1010 | ) -> ParseResult<'_, (Identifier, Pattern<ParsingInfo>)> {
[INFO] [stderr]      |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]     --> src/parser.rs:1101:12
[INFO] [stderr]      |
[INFO] [stderr] 1101 |     input: &[Token],
[INFO] [stderr]      |            ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 1102 |     precedence: usize,
[INFO] [stderr] 1103 | ) -> ParseResult<Expression<ParsingInfo>> {
[INFO] [stderr]      |      ------------------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]      |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]      |
[INFO] [stderr] 1103 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stderr]      |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]     --> src/parser.rs:1124:12
[INFO] [stderr]      |
[INFO] [stderr] 1124 |     input: &[Token],
[INFO] [stderr]      |            ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 1125 |     context_precedence: usize,
[INFO] [stderr] 1126 | ) -> ParseResult<Expression<ParsingInfo>> {
[INFO] [stderr]      |      ------------------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]      |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]      |
[INFO] [stderr] 1126 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stderr]      |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]     --> src/parser.rs:1239:14
[INFO] [stderr]      |
[INFO] [stderr] 1239 |     remains: &[Token],
[INFO] [stderr]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 1240 | ) -> ParseResult<Expression<ParsingInfo>> {
[INFO] [stderr]      |      ------------------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]      |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]      |
[INFO] [stderr] 1240 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stderr]      |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]     --> src/parser.rs:1265:14
[INFO] [stderr]      |
[INFO] [stderr] 1265 |     remains: &[Token],
[INFO] [stderr]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 1266 | ) -> ParseResult<Expression<ParsingInfo>> {
[INFO] [stderr]      |      ------------------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]      |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]      |
[INFO] [stderr] 1266 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stderr]      |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]     --> src/parser.rs:1289:14
[INFO] [stderr]      |
[INFO] [stderr] 1289 |     remains: &[Token],
[INFO] [stderr]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 1290 | ) -> ParseResult<Expression<ParsingInfo>> {
[INFO] [stderr]      |      ------------------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]      |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]      |
[INFO] [stderr] 1290 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stderr]      |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]     --> src/parser.rs:1322:14
[INFO] [stderr]      |
[INFO] [stderr] 1322 |     remains: &[Token],
[INFO] [stderr]      |              ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] ...
[INFO] [stderr] 1325 | ) -> ParseResult<Expression<ParsingInfo>> {
[INFO] [stderr]      |      ------------------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]      |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]      |
[INFO] [stderr] 1325 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stderr]      |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]     --> src/parser.rs:1339:13
[INFO] [stderr]      |
[INFO] [stderr] 1339 |     tokens: &[Token],
[INFO] [stderr]      |             ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 1340 |     precedence: usize,
[INFO] [stderr] 1341 | ) -> ParseResult<Expression<ParsingInfo>> {
[INFO] [stderr]      |      ------------------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]      |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]      |
[INFO] [stderr] 1341 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stderr]      |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]     --> src/parser.rs:1361:13
[INFO] [stderr]      |
[INFO] [stderr] 1361 |     tokens: &[Token],
[INFO] [stderr]      |             ^^^^^^^^ this lifetime flows to the output
[INFO] [stderr] 1362 | ) -> ParseResult<Expression<ParsingInfo>> {
[INFO] [stderr]      |      ------------------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]      |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]      |
[INFO] [stderr] 1362 | ) -> ParseResult<'_, Expression<ParsingInfo>> {
[INFO] [stderr]      |                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: `marmelade` (lib) generated 36 warnings (run `cargo fix --lib -p marmelade` to apply 2 suggestions)
[INFO] [stderr] warning: `marmelade` (lib test) generated 35 warnings (35 duplicates)
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]    --> tests/declarations.rs:362:40
[INFO] [stderr]     |
[INFO] [stderr] 361 | ...                   name: todo!(),
[INFO] [stderr]     |                             ------- any code following this expression is unreachable
[INFO] [stderr] 362 | ...                   signature: todo!(),
[INFO] [stderr]     |                                  ^^^^^^^ unreachable expression
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `todo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: function `pattern_match_basic2` is never used
[INFO] [stderr]   --> tests/declarations.rs:34:4
[INFO] [stderr]    |
[INFO] [stderr] 34 | fn pattern_match_basic2() {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `type_constructor` is never used
[INFO] [stderr]    --> tests/declarations.rs:348:4
[INFO] [stderr]     |
[INFO] [stderr] 348 | fn type_constructor() {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `listy_mclistface` is never used
[INFO] [stderr]    --> tests/declarations.rs:512:4
[INFO] [stderr]     |
[INFO] [stderr] 512 | fn listy_mclistface() {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `marmelade` (test "declarations") generated 4 warnings
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/marmelade-b6b4d40d22b8d614)
[INFO] [stdout] 
[INFO] [stdout] running 34 tests
[INFO] [stdout] test ast::tests::cyclic_dependencies ... ok
[INFO] [stdout] test interpreter::tests::reduce_with_variables ... ok
[INFO] [stdout] test lexer::tests::let_in ... ok
[INFO] [stdout] test lexer::tests::literals ... ok
[INFO] [stdout] test interpreter::tests::reduce_literal ... ok
[INFO] [stdout] test interpreter::tests::eval_fix ... ok
[INFO] [stdout] test ast::tests::satisfiable ... ok
[INFO] [stdout] test lexer::tests::let_in_more ... ok
[INFO] [stdout] test lexer::tests::option_decl ... ok
[INFO] [stdout] test ast::tests::unsatisfiable ... ok
[INFO] [stdout] test parser::tests::function_binding ... ok
[INFO] [stdout] test parser::tests::if_after_juxtaposed ... ok
[INFO] [stdout] test parser::tests::let_in_juxtaposed3 ... ok
[INFO] [stdout] test parser::tests::let_in_juxtaposed ... ok
[INFO] [stdout] test parser::tests::module_function_decls ... ok
[INFO] [stdout] test parser::tests::nested_let_in ... ok
[INFO] [stdout] test parser::tests::type_expression_with_functions ... ok
[INFO] [stdout] test stdlib::tests::minus ... ok
[INFO] [stdout] test stdlib::tests::plus_f64 ... ok
[INFO] [stdout] test stdlib::tests::plus_i64 ... ok
[INFO] [stdout] test stdlib::tests::times ... ok
[INFO] [stdout] test typer::checking::tests::check_applies ... ok
[INFO] [stdout] test typer::tests::applies ... ok
[INFO] [stdout] test stdlib::tests::plus_wrong_types ... ok
[INFO] [stdout] test typer::tests::coproducts ... ok
[INFO] [stdout] test typer::checking::tests::check_lambdas ... ok
[INFO] [stdout] test typer::tests::polymorphic ... ok
[INFO] [stdout] test typer::tests::tuples ... ok
[INFO] [stdout] test typer::tests::identity ... ok
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/marmelade-9fbf7c5a6d3aa08f)
[INFO] [stdout] test typer::checking::tests::check_constants ... ok
[INFO] [stdout] test parser::tests::let_in_with_mixed_artithmetics ... ok
[INFO] [stdout] test typer::tests::rank_n ... ok
[INFO] [stdout] test parser::tests::let_in_infix ... ok
[INFO] [stdout] test stdlib::tests::divides ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 34 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/mlady.rs (/opt/rustwide/target/debug/deps/mlady-343628c25dbf32b9)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/declarations.rs (/opt/rustwide/target/debug/deps/declarations-04f449f64a91d004)
[INFO] [stdout] 
[INFO] [stdout] running 17 tests
[INFO] [stdout] test constant_type_expressions ... ok
[INFO] [stdout] test complex_type_arrow_expressions ... ok
[INFO] [stdout] test coproduct_binary_tree ... ok
[INFO] [stdout] test coproduct_list ... ok
[INFO] [stdout] test eval_coproduct_eval ... ok
[INFO] [stdout] test coproduct_perhaps ... ok
[INFO] [stdout] test coproduct_eval ... ok
[INFO] [stdout] test pattern_match_constructor ... ok
[INFO] [stdout] test pattern_match_basic ... ok
[INFO] [stdout] test type_apply_type_expressions ... ok
[INFO] [stdout] test eval_coproduct_list ... ok
[INFO] [stdout] test pattern_match_eval_basic_piped_down ... ok
[INFO] [stdout] test pattern_match_tuple_match ... ok
[INFO] [stdout] test pattern_match_eval_basic_inline ... ok
[INFO] [stdout] test type_arrow_expressions ... ok
[INFO] [stdout] test type_higher_arrow_expressions ... ok
[INFO] [stdout] test multiple_arguments ... ok
[INFO] [stderr]      Running tests/expressions.rs (/opt/rustwide/target/debug/deps/expressions-ce3af8fdefe65e86)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test if_block_sequencing ... ok
[INFO] [stdout] test let_in_tests ... ok
[INFO] [stdout] test app_sequence ... ok
[INFO] [stdout] test tuples2 ... ok
[INFO] [stdout] test precedence ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/tools.rs (/opt/rustwide/target/debug/deps/tools-a9727a0ae4213dee)
[INFO] [stdout] 
[INFO] [stderr]      Running tests/types.rs (/opt/rustwide/target/debug/deps/types-48c5c803f4012b90)
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test inferencing ... ok
[INFO] [stdout] test tuple ... ok
[INFO] [stdout] test type_expansions ... ok
[INFO] [stdout] test list_type ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- list_type stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'list_type' panicked at tests/types.rs:51:5:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: TypeScheme { quantifiers: [TypeParameter(1)], body: Coproduct(CoproductType([("Cons", Product(Tuple(TupleType([Parameter(TypeParameter(1)), Apply(Named(TypeName("List")), Parameter(TypeParameter(1)))])))), ("Nil", Product(Tuple(TupleType([]))))])) }
[INFO] [stdout]  right: TypeScheme { quantifiers: [TypeParameter(3)], body: Coproduct(CoproductType([("Cons", Product(Tuple(TupleType([Parameter(TypeParameter(3)), Apply(Named(TypeName("List")), Parameter(TypeParameter(3)))])))), ("Nil", Product(Tuple(TupleType([]))))])) }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64a88f76b962 - std::backtrace_rs::backtrace::libunwind::trace::hd39b1f53d3cf9745
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64a88f76b962 - std::backtrace_rs::backtrace::trace_unsynchronized::he91d9a75d4e3972b
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64a88f76b962 - std::sys::backtrace::_print_fmt::hca46938f8c6e22cf
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x64a88f76b962 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::ha499add612cccf8e
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x64a88f7910f3 - core::fmt::rt::Argument::fmt::hd21145b75a833b7a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x64a88f7910f3 - core::fmt::write::hb10c956f5235c8a4
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/fmt/mod.rs:1465:25
[INFO] [stdout]    6:     0x64a88f768b43 - std::io::default_write_fmt::hdb7615052be2ba4d
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x64a88f768b43 - std::io::Write::write_fmt::he1bcd251ec6e4153
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x64a88f76b7b2 - std::sys::backtrace::BacktraceLock::print::hb47c770ef659fd10
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x64a88f76cecc - std::panicking::default_hook::{{closure}}::hdda8afb9d457a22c
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:300:27
[INFO] [stdout]   10:     0x64a88f76cd22 - std::panicking::default_hook::h7c46b44874fe5c9a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:324:9
[INFO] [stdout]   11:     0x64a88f6a8ab4 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h178a5fcedee41e2f
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   12:     0x64a88f6a8ab4 - test::test_main_with_exit_callback::{{closure}}::h951a41e0149d6d5d
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x64a88f76d8ab - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h13602080f5b63276
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   14:     0x64a88f76d8ab - std::panicking::rust_panic_with_hook::ha6cb99ed099eb1c5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:841:13
[INFO] [stdout]   15:     0x64a88f76d67a - std::panicking::begin_panic_handler::{{closure}}::he11808bc797ee921
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:706:13
[INFO] [stdout]   16:     0x64a88f76be59 - std::sys::backtrace::__rust_end_short_backtrace::h9418807cb7346258
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   17:     0x64a88f76d30d - __rustc[18fb429eef004894]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:697:5
[INFO] [stdout]   18:     0x64a88f78f5a0 - core::panicking::panic_fmt::hd890aeb12c3a3fc3
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x64a88f78f807 - core::panicking::assert_failed_inner::h02e1528dd7bc6647
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panicking.rs:448:17
[INFO] [stdout]   20:     0x64a88f66d289 - core::panicking::assert_failed::hca6076fa8ce8b560
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panicking.rs:403:5
[INFO] [stdout]   21:     0x64a88f65f519 - types::list_type::h7deb8f6ad3622f0a
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/types.rs:51:5
[INFO] [stdout]   22:     0x64a88f65f519 - types::list_type::{{closure}}::h7007cba51bebd183
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/types.rs:21:15
[INFO] [stdout]   23:     0x64a88f65f519 - core::ops::function::FnOnce::call_once::h7e7a8681071e14d2
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x64a88f6ae23b - core::ops::function::FnOnce::call_once::h2869fb5b0a2b0bdc
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x64a88f6ae23b - test::__rust_begin_short_backtrace::h7dd7142bd62fa711
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:648:18
[INFO] [stdout]   26:     0x64a88f6ad42e - test::run_test_in_process::{{closure}}::h43a753f038d36b3f
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:671:74
[INFO] [stdout]   27:     0x64a88f6ad42e - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h0ca95dd3e12d1e16
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   28:     0x64a88f6ad42e - std::panicking::catch_unwind::do_call::he308587d70ac34ba
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:589:40
[INFO] [stdout]   29:     0x64a88f6ad42e - std::panicking::catch_unwind::h30dcba31973e8fb0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:552:19
[INFO] [stdout]   30:     0x64a88f6ad42e - std::panic::catch_unwind::hfb68364e5621fbee
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x64a88f6ad42e - test::run_test_in_process::hcdcc2977903b998a
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:671:27
[INFO] [stdout]   32:     0x64a88f6ad42e - test::run_test::{{closure}}::h544a6550958c5d14
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:592:43
[INFO] [stdout]   33:     0x64a88f670fa4 - test::run_test::{{closure}}::hb172e48ebe2b92c7
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/test/src/lib.rs:622:41
[INFO] [stdout]   34:     0x64a88f670fa4 - std::sys::backtrace::__rust_begin_short_backtrace::h7e79d8706638bea0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/backtrace.rs:152:18
[INFO] [stdout]   35:     0x64a88f67497a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hc4a275f1e71b8ab0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   36:     0x64a88f67497a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h01ed0d242df78cfd
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   37:     0x64a88f67497a - std::panicking::catch_unwind::do_call::h052f373fb905fee0
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:589:40
[INFO] [stdout]   38:     0x64a88f67497a - std::panicking::catch_unwind::hb425d20c8ffb09c8
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panicking.rs:552:19
[INFO] [stdout]   39:     0x64a88f67497a - std::panic::catch_unwind::ha0d5dfbf18fdeda5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x64a88f67497a - std::thread::Builder::spawn_unchecked_::{{closure}}::hbe79182bd37949c7
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   41:     0x64a88f67497a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hc096c4a06972fde5
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x64a88f770807 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h47377e27fb938a26
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   43:     0x64a88f770807 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h72f1fe5d095abf57
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   44:     0x64a88f770807 - std::sys::pal::unix::thread::Thread::new::thread_start::h0a4d8e1b9c0d38cf
[INFO] [stdout]                                at /rustc/d98a5da813da67eb189387b8ccfb73cf481275d8/library/std/src/sys/pal/unix/thread.rs:97:17
[INFO] [stdout]   45:     0x71f4ff983aa4 - <unknown>
[INFO] [stdout]   46:     0x71f4ffa10a34 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     list_type
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 3 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test types`
[INFO] running `Command { std: "docker" "inspect" "0f5ce51e41e3c526f68fef03a43580ad56aa32e727de49706323d5eb3d0a24fe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0f5ce51e41e3c526f68fef03a43580ad56aa32e727de49706323d5eb3d0a24fe", kill_on_drop: false }`
[INFO] [stdout] 0f5ce51e41e3c526f68fef03a43580ad56aa32e727de49706323d5eb3d0a24fe
