[INFO] cloning repository https://github.com/geeshta/lambda [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/geeshta/lambda" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgeeshta%2Flambda", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgeeshta%2Flambda'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 11ca7ba1dbc178e12d524a2e6eddec04c7c3261e [INFO] checking geeshta/lambda against master#9c3064e131f4939cc95a29bb11413c49bbda1491 for pr-144098 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgeeshta%2Flambda" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/geeshta/lambda [INFO] finished tweaking git repo https://github.com/geeshta/lambda [INFO] tweaked toml for git repo https://github.com/geeshta/lambda written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/geeshta/lambda on toolchain 9c3064e131f4939cc95a29bb11413c49bbda1491 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c3064e131f4939cc95a29bb11413c49bbda1491" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/geeshta/lambda 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" "+9c3064e131f4939cc95a29bb11413c49bbda1491" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [ERROR] error running command: no output for 300 seconds [INFO] checking geeshta/lambda against master#9c3064e131f4939cc95a29bb11413c49bbda1491 for pr-144098 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgeeshta%2Flambda" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/geeshta/lambda [INFO] finished tweaking git repo https://github.com/geeshta/lambda [INFO] tweaked toml for git repo https://github.com/geeshta/lambda written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/geeshta/lambda on toolchain 9c3064e131f4939cc95a29bb11413c49bbda1491 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c3064e131f4939cc95a29bb11413c49bbda1491" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/geeshta/lambda 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" "+9c3064e131f4939cc95a29bb11413c49bbda1491" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+9c3064e131f4939cc95a29bb11413c49bbda1491" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] eee659166a1dc795aaa4e4fbf1e95169b8310563d1b7dff904756096ab8845b7 [INFO] running `Command { std: "docker" "start" "-a" "eee659166a1dc795aaa4e4fbf1e95169b8310563d1b7dff904756096ab8845b7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "eee659166a1dc795aaa4e4fbf1e95169b8310563d1b7dff904756096ab8845b7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "eee659166a1dc795aaa4e4fbf1e95169b8310563d1b7dff904756096ab8845b7", kill_on_drop: false }` [INFO] [stdout] eee659166a1dc795aaa4e4fbf1e95169b8310563d1b7dff904756096ab8845b7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+9c3064e131f4939cc95a29bb11413c49bbda1491" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 63c400e39b5cab5d805832b266cb0aff101b5a90dd50c49f57f8f47cc773f2df [INFO] running `Command { std: "docker" "start" "-a" "63c400e39b5cab5d805832b266cb0aff101b5a90dd50c49f57f8f47cc773f2df", kill_on_drop: false }` [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking regex-syntax v0.8.4 [INFO] [stderr] Checking regex-automata v0.4.7 [INFO] [stderr] Checking regex v1.10.5 [INFO] [stderr] Checking lambda v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::fmt` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::fmt; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ast::ast::AST` [INFO] [stdout] --> src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use ast::ast::AST; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BetaReduction` and `EvalOrder` [INFO] [stdout] --> src/main.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | use beta::{BetaReduction, EvalOrder}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::fmt; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ast::ast::AST` [INFO] [stdout] --> src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use ast::ast::AST; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BetaReduction` and `EvalOrder` [INFO] [stdout] --> src/main.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | use beta::{BetaReduction, EvalOrder}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `memo` [INFO] [stdout] --> src/beta/reduction.rs:145:26 [INFO] [stdout] | [INFO] [stdout] 145 | (result, memo) => result, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_memo` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `memo` [INFO] [stdout] --> src/beta/reduction.rs:145:26 [INFO] [stdout] | [INFO] [stdout] 145 | (result, memo) => result, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_memo` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/alpha/conversion.rs:8:23 [INFO] [stdout] | [INFO] [stdout] 8 | SubstitutionError(String), [INFO] [stdout] | ----------------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AlphaConvError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 8 - SubstitutionError(String), [INFO] [stdout] 8 + SubstitutionError(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/alpha/conversion.rs:9:20 [INFO] [stdout] | [INFO] [stdout] 9 | StructureError(String), [INFO] [stdout] | -------------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AlphaConvError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 9 - StructureError(String), [INFO] [stdout] 9 + StructureError(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/alpha/conversion.rs:10:20 [INFO] [stdout] | [INFO] [stdout] 10 | VariablesError(String), [INFO] [stdout] | -------------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AlphaConvError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 10 - VariablesError(String), [INFO] [stdout] 10 + VariablesError(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `AlphaVariant` is never used [INFO] [stdout] --> src/alpha/variant.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait AlphaVariant { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `remap` is never used [INFO] [stdout] --> src/alpha/variant.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 9 | impl AST { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] 10 | // Remap all varaibles in a term for different ones [INFO] [stdout] 11 | fn remap(self, var_map: VarMap) -> AST { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `EvalOrder` is never used [INFO] [stdout] --> src/beta/reduction.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum EvalOrder { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `BetaReduction` is never used [INFO] [stdout] --> src/beta/reduction.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub trait BetaReduction { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `beta_step`, `lazy_beta_step`, `reduce_redex`, `lazy_reduce_redex`, `beta_reduce`, and `lazy_beta_reduce` are never used [INFO] [stdout] --> src/beta/reduction.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl AST { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 17 | /// One step of a beta reduction. It is recursive so it may actually perform multiple substitutions [INFO] [stdout] 18 | fn beta_step(self, order: &EvalOrder) -> AST { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | fn lazy_beta_step(self, memo: TermMap) -> (AST, TermMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn reduce_redex(self, order: &EvalOrder, param: AST, body: AST, arg: AST) -> AST { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | fn lazy_reduce_redex(self, memo: TermMap, param: AST, body: AST, arg: AST) -> (AST, TermMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | fn beta_reduce(self, order: &EvalOrder) -> AST { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | fn lazy_beta_reduce(self, memo: Option) -> (AST, TermMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/substitution/substitution.rs:6:18 [INFO] [stdout] | [INFO] [stdout] 6 | NotAVariable(String), [INFO] [stdout] | ------------ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `SubstitutionError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 6 - NotAVariable(String), [INFO] [stdout] 6 + NotAVariable(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/substitution/substitution.rs:7:21 [INFO] [stdout] | [INFO] [stdout] 7 | BindingConflict(String), [INFO] [stdout] | --------------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `SubstitutionError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 7 - BindingConflict(String), [INFO] [stdout] 7 + BindingConflict(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VarMap` is never constructed [INFO] [stdout] --> src/variables/varmap.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct VarMap { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_sets` and `get` are never used [INFO] [stdout] --> src/variables/varmap.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 46 | impl VarMap { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 47 | /// Create a new map from two sets, zipping them together and adding both pairs [INFO] [stdout] 48 | pub fn from_sets(first: VarSet, second: VarSet) -> VarMap { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn get(&self, term: Term) -> Term { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/alpha/conversion.rs:8:23 [INFO] [stdout] | [INFO] [stdout] 8 | SubstitutionError(String), [INFO] [stdout] | ----------------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AlphaConvError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 8 - SubstitutionError(String), [INFO] [stdout] 8 + SubstitutionError(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/alpha/conversion.rs:9:20 [INFO] [stdout] | [INFO] [stdout] 9 | StructureError(String), [INFO] [stdout] | -------------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AlphaConvError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 9 - StructureError(String), [INFO] [stdout] 9 + StructureError(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/alpha/conversion.rs:10:20 [INFO] [stdout] | [INFO] [stdout] 10 | VariablesError(String), [INFO] [stdout] | -------------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AlphaConvError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 10 - VariablesError(String), [INFO] [stdout] 10 + VariablesError(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `AlphaVariant` is never used [INFO] [stdout] --> src/alpha/variant.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait AlphaVariant { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `remap` is never used [INFO] [stdout] --> src/alpha/variant.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 9 | impl AST { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] 10 | // Remap all varaibles in a term for different ones [INFO] [stdout] 11 | fn remap(self, var_map: VarMap) -> AST { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `EvalOrder` is never used [INFO] [stdout] --> src/beta/reduction.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum EvalOrder { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `BetaReduction` is never used [INFO] [stdout] --> src/beta/reduction.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub trait BetaReduction { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `beta_step`, `lazy_beta_step`, `reduce_redex`, `lazy_reduce_redex`, `beta_reduce`, and `lazy_beta_reduce` are never used [INFO] [stdout] --> src/beta/reduction.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl AST { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 17 | /// One step of a beta reduction. It is recursive so it may actually perform multiple substitutions [INFO] [stdout] 18 | fn beta_step(self, order: &EvalOrder) -> AST { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | fn lazy_beta_step(self, memo: TermMap) -> (AST, TermMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn reduce_redex(self, order: &EvalOrder, param: AST, body: AST, arg: AST) -> AST { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | fn lazy_reduce_redex(self, memo: TermMap, param: AST, body: AST, arg: AST) -> (AST, TermMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | fn beta_reduce(self, order: &EvalOrder) -> AST { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | fn lazy_beta_reduce(self, memo: Option) -> (AST, TermMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/substitution/substitution.rs:6:18 [INFO] [stdout] | [INFO] [stdout] 6 | NotAVariable(String), [INFO] [stdout] | ------------ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `SubstitutionError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 6 - NotAVariable(String), [INFO] [stdout] 6 + NotAVariable(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/substitution/substitution.rs:7:21 [INFO] [stdout] | [INFO] [stdout] 7 | BindingConflict(String), [INFO] [stdout] | --------------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `SubstitutionError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 7 - BindingConflict(String), [INFO] [stdout] 7 + BindingConflict(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VarMap` is never constructed [INFO] [stdout] --> src/variables/varmap.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct VarMap { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_sets` and `get` are never used [INFO] [stdout] --> src/variables/varmap.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 46 | impl VarMap { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 47 | /// Create a new map from two sets, zipping them together and adding both pairs [INFO] [stdout] 48 | pub fn from_sets(first: VarSet, second: VarSet) -> VarMap { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn get(&self, term: Term) -> Term { [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/parser.rs:25:29 [INFO] [stdout] | [INFO] [stdout] 25 | fn parse_expression(tokens: &[Token]) -> Result { [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] 25 | fn parse_expression(tokens: &[Token]) -> Result, ParsingError> { [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/parser.rs:44:25 [INFO] [stdout] | [INFO] [stdout] 44 | fn parse_params(tokens: &[Token]) -> Result { [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] 44 | fn parse_params(tokens: &[Token]) -> Result, ParsingError> { [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/parser.rs:66:29 [INFO] [stdout] | [INFO] [stdout] 66 | fn apply(term: AST, tokens: &[Token]) -> Result { [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] 66 | fn apply(term: AST, tokens: &[Token]) -> Result, ParsingError> { [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/parser.rs:96:19 [INFO] [stdout] | [INFO] [stdout] 96 | fn lambda(tokens: &[Token]) -> Result { [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] 96 | fn lambda(tokens: &[Token]) -> Result, ParsingError> { [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/parser.rs:134:28 [INFO] [stdout] | [INFO] [stdout] 134 | fn abstr(arg: AST, tokens: &[Token]) -> Result { [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] 134 | fn abstr(arg: AST, tokens: &[Token]) -> Result, ParsingError> { [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/parser.rs:167:18 [INFO] [stdout] | [INFO] [stdout] 167 | fn group(tokens: &[Token]) -> Result { [INFO] [stdout] | ^^^^^^^^ ----------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 167 | fn group(tokens: &[Token]) -> Result, ParsingError> { [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/parser.rs:25:29 [INFO] [stdout] | [INFO] [stdout] 25 | fn parse_expression(tokens: &[Token]) -> Result { [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] 25 | fn parse_expression(tokens: &[Token]) -> Result, ParsingError> { [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/parser.rs:44:25 [INFO] [stdout] | [INFO] [stdout] 44 | fn parse_params(tokens: &[Token]) -> Result { [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] 44 | fn parse_params(tokens: &[Token]) -> Result, ParsingError> { [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/parser.rs:66:29 [INFO] [stdout] | [INFO] [stdout] 66 | fn apply(term: AST, tokens: &[Token]) -> Result { [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] 66 | fn apply(term: AST, tokens: &[Token]) -> Result, ParsingError> { [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/parser.rs:96:19 [INFO] [stdout] | [INFO] [stdout] 96 | fn lambda(tokens: &[Token]) -> Result { [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] 96 | fn lambda(tokens: &[Token]) -> Result, ParsingError> { [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/parser.rs:134:28 [INFO] [stdout] | [INFO] [stdout] 134 | fn abstr(arg: AST, tokens: &[Token]) -> Result { [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] 134 | fn abstr(arg: AST, tokens: &[Token]) -> Result, ParsingError> { [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/parser.rs:167:18 [INFO] [stdout] | [INFO] [stdout] 167 | fn group(tokens: &[Token]) -> Result { [INFO] [stdout] | ^^^^^^^^ ----------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 167 | fn group(tokens: &[Token]) -> Result, ParsingError> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.86s [INFO] running `Command { std: "docker" "inspect" "63c400e39b5cab5d805832b266cb0aff101b5a90dd50c49f57f8f47cc773f2df", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "63c400e39b5cab5d805832b266cb0aff101b5a90dd50c49f57f8f47cc773f2df", kill_on_drop: false }` [INFO] [stdout] 63c400e39b5cab5d805832b266cb0aff101b5a90dd50c49f57f8f47cc773f2df