[INFO] cloning repository https://github.com/Marwes/haskell-compiler [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Marwes/haskell-compiler" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMarwes%2Fhaskell-compiler", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMarwes%2Fhaskell-compiler'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] c1dbde0937e65939eae8752605dde52c96a6a6e2 [INFO] checking Marwes/haskell-compiler against try#0f31acebf540c89e4a4d5d114959fe91973419cb for pr-147017 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMarwes%2Fhaskell-compiler" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-1-tc2/source/.cargo/config [INFO] started tweaking git repo https://github.com/Marwes/haskell-compiler [INFO] finished tweaking git repo https://github.com/Marwes/haskell-compiler [INFO] tweaked toml for git repo https://github.com/Marwes/haskell-compiler written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Marwes/haskell-compiler on toolchain 0f31acebf540c89e4a4d5d114959fe91973419cb [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0f31acebf540c89e4a4d5d114959fe91973419cb" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/Marwes/haskell-compiler 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" "+0f31acebf540c89e4a4d5d114959fe91973419cb" "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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+0f31acebf540c89e4a4d5d114959fe91973419cb" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0b6b5d1b92f743037ead49b24df7c1a0a1f6db9d895926f1fc5aa7f94f9095ff [INFO] running `Command { std: "docker" "start" "-a" "0b6b5d1b92f743037ead49b24df7c1a0a1f6db9d895926f1fc5aa7f94f9095ff", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0b6b5d1b92f743037ead49b24df7c1a0a1f6db9d895926f1fc5aa7f94f9095ff", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0b6b5d1b92f743037ead49b24df7c1a0a1f6db9d895926f1fc5aa7f94f9095ff", kill_on_drop: false }` [INFO] [stdout] 0b6b5d1b92f743037ead49b24df7c1a0a1f6db9d895926f1fc5aa7f94f9095ff [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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+0f31acebf540c89e4a4d5d114959fe91973419cb" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 677308bda51ef7b9eb6e0a61b30b598eb3fa23e5d803e526254b67ce649f99ff [INFO] running `Command { std: "docker" "start" "-a" "677308bda51ef7b9eb6e0a61b30b598eb3fa23e5d803e526254b67ce649f99ff", kill_on_drop: false }` [INFO] [stderr] Checking getopts v0.2.21 [INFO] [stderr] Checking haskell-compiler v0.0.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused macro definition: `expect1` [INFO] [stdout] --> src/parser.rs:79:14 [INFO] [stdout] | [INFO] [stdout] 79 | macro_rules! expect1 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition: `matches` [INFO] [stdout] --> src/parser.rs:88:14 [INFO] [stdout] | [INFO] [stdout] 88 | macro_rules! matches { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Application` and `Variable` [INFO] [stdout] --> src/core.rs:3:30 [INFO] [stdout] | [INFO] [stdout] 3 | pub use crate::types::Type::{Application, Variable}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Constructor` [INFO] [stdout] --> src/core.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | pub use crate::module::{Constructor, DataDefinition, TypeDeclaration, Newtype}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition: `expect1` [INFO] [stdout] --> src/parser.rs:79:14 [INFO] [stdout] | [INFO] [stdout] 79 | macro_rules! expect1 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition: `matches` [INFO] [stdout] --> src/parser.rs:88:14 [INFO] [stdout] | [INFO] [stdout] 88 | macro_rules! matches { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Application` and `Variable` [INFO] [stdout] --> src/core.rs:3:30 [INFO] [stdout] | [INFO] [stdout] 3 | pub use crate::types::Type::{Application, Variable}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Constructor` [INFO] [stdout] --> src/core.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | pub use crate::module::{Constructor, DataDefinition, TypeDeclaration, Newtype}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tuple_type` is never used [INFO] [stdout] --> src/types.rs:185:8 [INFO] [stdout] | [INFO] [stdout] 185 | pub fn tuple_type(n: usize) -> (String, Type) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `char_type` is never used [INFO] [stdout] --> src/types.rs:208:8 [INFO] [stdout] | [INFO] [stdout] 208 | pub fn char_type() -> Type { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `int_type` is never used [INFO] [stdout] --> src/types.rs:213:8 [INFO] [stdout] | [INFO] [stdout] 213 | pub fn int_type() -> Type { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bool_type` is never used [INFO] [stdout] --> src/types.rs:218:8 [INFO] [stdout] | [INFO] [stdout] 218 | pub fn bool_type() -> Type { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `double_type` is never used [INFO] [stdout] --> src/types.rs:223:8 [INFO] [stdout] | [INFO] [stdout] 223 | pub fn double_type() -> Type { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `function_type` is never used [INFO] [stdout] --> src/types.rs:228:8 [INFO] [stdout] | [INFO] [stdout] 228 | pub fn function_type(arg: &Type, result: &Type) -> Type { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `io` is never used [INFO] [stdout] --> src/types.rs:238:8 [INFO] [stdout] | [INFO] [stdout] 238 | pub fn io(typ: Type) -> Type { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `unit` is never used [INFO] [stdout] --> src/types.rs:243:8 [INFO] [stdout] | [INFO] [stdout] 243 | pub fn unit() -> Type { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `visit_module` is never used [INFO] [stdout] --> src/module.rs:295:8 [INFO] [stdout] | [INFO] [stdout] 282 | pub trait Visitor : Sized { [INFO] [stdout] | ------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 295 | fn visit_module(&mut self, module: &Module) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `walk_module` is never used [INFO] [stdout] --> src/module.rs:300:8 [INFO] [stdout] | [INFO] [stdout] 300 | pub fn walk_module>(visitor: &mut V, module: &Module) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compile_string` is never used [INFO] [stdout] --> src/compiler.rs:1051:8 [INFO] [stdout] | [INFO] [stdout] 1051 | pub fn compile_string(module: &str) -> Result, ::std::string::String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `has_instance` is never used [INFO] [stdout] --> src/typecheck.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub trait Types { [INFO] [stdout] | ----- method in this trait [INFO] [stdout] ... [INFO] [stdout] 21 | fn has_instance(&self, classname: Name, typ: &TcType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `typecheck_module_` and `typecheck_expr_` are never used [INFO] [stdout] --> src/typecheck.rs:434:12 [INFO] [stdout] | [INFO] [stdout] 235 | impl <'a> TypeEnvironment<'a> { [INFO] [stdout] | ----------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 434 | pub fn typecheck_module_(&mut self, module: &mut Module) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 437 | pub fn typecheck_expr_(&mut self, expr: &mut TypedExpr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `typecheck_string` is never used [INFO] [stdout] --> src/typecheck.rs:1613:8 [INFO] [stdout] | [INFO] [stdout] 1613 | pub fn typecheck_string(module: &str) -> Result>, ::std::string::String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `valid` is never used [INFO] [stdout] --> src/lexer.rs:251:12 [INFO] [stdout] | [INFO] [stdout] 173 | impl > Lexer { [INFO] [stdout] | ------------------------------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 251 | pub fn valid(&self) -> bool { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_string` is never used [INFO] [stdout] --> src/parser.rs:1136:8 [INFO] [stdout] | [INFO] [stdout] 1136 | pub fn parse_string(contents: &str) -> ParseResult> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `from` is never read [INFO] [stdout] --> src/graph.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct Edge { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 24 | from: VertexIndex, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `execute_main_string` is never used [INFO] [stdout] --> src/vm.rs:625:8 [INFO] [stdout] | [INFO] [stdout] 625 | pub fn execute_main_string(module: &str) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Visitor` is never used [INFO] [stdout] --> src/core.rs:210:15 [INFO] [stdout] | [INFO] [stdout] 210 | pub trait Visitor : Sized { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `walk_module` is never used [INFO] [stdout] --> src/core.rs:227:12 [INFO] [stdout] | [INFO] [stdout] 227 | pub fn walk_module, Ident>(visitor: &mut V, module: &Module) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `walk_binding` is never used [INFO] [stdout] --> src/core.rs:233:12 [INFO] [stdout] | [INFO] [stdout] 233 | pub fn walk_binding, Ident>(visitor: &mut V, binding: &Binding) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `walk_expr` is never used [INFO] [stdout] --> src/core.rs:237:12 [INFO] [stdout] | [INFO] [stdout] 237 | pub fn walk_expr, Ident>(visitor: &mut V, expr: &Expr) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `walk_alternative` is never used [INFO] [stdout] --> src/core.rs:260:12 [INFO] [stdout] | [INFO] [stdout] 260 | pub fn walk_alternative, Ident>(visitor: &mut V, alt: &Alternative) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `visit_pattern` is never used [INFO] [stdout] --> src/core.rs:276:12 [INFO] [stdout] | [INFO] [stdout] 269 | pub trait Visitor: Sized { [INFO] [stdout] | ------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 276 | fn visit_pattern(&mut self, _pattern: &mut Pattern) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Visitor` is never used [INFO] [stdout] --> src/core.rs:330:15 [INFO] [stdout] | [INFO] [stdout] 330 | pub trait Visitor : Sized { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `walk_module` is never used [INFO] [stdout] --> src/core.rs:348:12 [INFO] [stdout] | [INFO] [stdout] 348 | pub fn walk_module, Ident>(visitor: &mut V, mut module: Module) -> Module { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `walk_binding` is never used [INFO] [stdout] --> src/core.rs:357:12 [INFO] [stdout] | [INFO] [stdout] 357 | pub fn walk_binding, Ident>(visitor: &mut V, binding: Binding) -> Binding { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `walk_expr` is never used [INFO] [stdout] --> src/core.rs:365:12 [INFO] [stdout] | [INFO] [stdout] 365 | pub fn walk_expr, Ident>(visitor: &mut V, expr: Expr) -> Expr { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `walk_alternative` is never used [INFO] [stdout] --> src/core.rs:390:12 [INFO] [stdout] | [INFO] [stdout] 390 | pub fn walk_alternative, Ident>(visitor: &mut V, alt: Alternative) -> Alternative { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_and_print_expr` is never used [INFO] [stdout] --> src/repl.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn run_and_print_expr(expr_str: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/vm.rs:184:21 [INFO] [stdout] | [INFO] [stdout] 184 | pub fn evaluate(&self, code: &[Instruction], assembly_id: usize) -> Node_ { [INFO] [stdout] | ^^^^^ the lifetime is elided here ^^^^^ the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 184 | pub fn evaluate(&self, code: &[Instruction], assembly_id: usize) -> Node_<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lambda_lift.rs:191:5 [INFO] [stdout] | [INFO] [stdout] 189 | pub fn abstract_module(mut module: Module) -> Module { [INFO] [stdout] | ---------------------------------------------------------------------------- move the `impl` block outside of this function `abstract_module` [INFO] [stdout] 190 | use crate::core::mutable::*; [INFO] [stdout] 191 | impl Visitor for FreeVariables { [INFO] [stdout] | ^^^^^-------^----------^^^^^^------------- [INFO] [stdout] | | | | [INFO] [stdout] | | | `FreeVariables` is not local [INFO] [stdout] | | `TypeAndStr` is not local [INFO] [stdout] | `Visitor` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tuple_type` is never used [INFO] [stdout] --> src/types.rs:185:8 [INFO] [stdout] | [INFO] [stdout] 185 | pub fn tuple_type(n: usize) -> (String, Type) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `visit_module` is never used [INFO] [stdout] --> src/module.rs:295:8 [INFO] [stdout] | [INFO] [stdout] 282 | pub trait Visitor : Sized { [INFO] [stdout] | ------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 295 | fn visit_module(&mut self, module: &Module) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `walk_module` is never used [INFO] [stdout] --> src/module.rs:300:8 [INFO] [stdout] | [INFO] [stdout] 300 | pub fn walk_module>(visitor: &mut V, module: &Module) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `has_instance` is never used [INFO] [stdout] --> src/typecheck.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub trait Types { [INFO] [stdout] | ----- method in this trait [INFO] [stdout] ... [INFO] [stdout] 21 | fn has_instance(&self, classname: Name, typ: &TcType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `valid` is never used [INFO] [stdout] --> src/lexer.rs:251:12 [INFO] [stdout] | [INFO] [stdout] 173 | impl > Lexer { [INFO] [stdout] | ------------------------------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 251 | pub fn valid(&self) -> bool { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `from` is never read [INFO] [stdout] --> src/graph.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct Edge { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 24 | from: VertexIndex, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_assembly` is never used [INFO] [stdout] --> src/vm.rs:179:12 [INFO] [stdout] | [INFO] [stdout] 164 | impl <'a> VM { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn get_assembly(&self, index: usize) -> &Assembly { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_expr` is never used [INFO] [stdout] --> src/core.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl Module { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 20 | pub fn from_expr(expr: Expr) -> Module { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `visit_pattern` is never used [INFO] [stdout] --> src/core.rs:217:12 [INFO] [stdout] | [INFO] [stdout] 210 | pub trait Visitor : Sized { [INFO] [stdout] | ------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 217 | fn visit_pattern(&mut self, _pattern: &Pattern) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `visit_pattern` is never used [INFO] [stdout] --> src/core.rs:276:12 [INFO] [stdout] | [INFO] [stdout] 269 | pub trait Visitor: Sized { [INFO] [stdout] | ------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 276 | fn visit_pattern(&mut self, _pattern: &mut Pattern) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Visitor` is never used [INFO] [stdout] --> src/core.rs:330:15 [INFO] [stdout] | [INFO] [stdout] 330 | pub trait Visitor : Sized { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `walk_module` is never used [INFO] [stdout] --> src/core.rs:348:12 [INFO] [stdout] | [INFO] [stdout] 348 | pub fn walk_module, Ident>(visitor: &mut V, mut module: Module) -> Module { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `walk_binding` is never used [INFO] [stdout] --> src/core.rs:357:12 [INFO] [stdout] | [INFO] [stdout] 357 | pub fn walk_binding, Ident>(visitor: &mut V, binding: Binding) -> Binding { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `walk_expr` is never used [INFO] [stdout] --> src/core.rs:365:12 [INFO] [stdout] | [INFO] [stdout] 365 | pub fn walk_expr, Ident>(visitor: &mut V, expr: Expr) -> Expr { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `walk_alternative` is never used [INFO] [stdout] --> src/core.rs:390:12 [INFO] [stdout] | [INFO] [stdout] 390 | pub fn walk_alternative, Ident>(visitor: &mut V, alt: Alternative) -> Alternative { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `translate_expr` is never used [INFO] [stdout] --> src/core.rs:415:12 [INFO] [stdout] | [INFO] [stdout] 415 | pub fn translate_expr(expr: module::TypedExpr) -> Expr> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/vm.rs:184:21 [INFO] [stdout] | [INFO] [stdout] 184 | pub fn evaluate(&self, code: &[Instruction], assembly_id: usize) -> Node_ { [INFO] [stdout] | ^^^^^ the lifetime is elided here ^^^^^ the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 184 | pub fn evaluate(&self, code: &[Instruction], assembly_id: usize) -> Node_<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lambda_lift.rs:191:5 [INFO] [stdout] | [INFO] [stdout] 189 | pub fn abstract_module(mut module: Module) -> Module { [INFO] [stdout] | ---------------------------------------------------------------------------- move the `impl` block outside of this function `abstract_module` [INFO] [stdout] 190 | use crate::core::mutable::*; [INFO] [stdout] 191 | impl Visitor for FreeVariables { [INFO] [stdout] | ^^^^^-------^----------^^^^^^------------- [INFO] [stdout] | | | | [INFO] [stdout] | | | `FreeVariables` is not local [INFO] [stdout] | | `TypeAndStr` is not local [INFO] [stdout] | `Visitor` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.27s [INFO] running `Command { std: "docker" "inspect" "677308bda51ef7b9eb6e0a61b30b598eb3fa23e5d803e526254b67ce649f99ff", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "677308bda51ef7b9eb6e0a61b30b598eb3fa23e5d803e526254b67ce649f99ff", kill_on_drop: false }` [INFO] [stdout] 677308bda51ef7b9eb6e0a61b30b598eb3fa23e5d803e526254b67ce649f99ff