[INFO] cloning repository https://github.com/andyyu2004/l-language [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/andyyu2004/l-language" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fandyyu2004%2Fl-language", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fandyyu2004%2Fl-language'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6c62c32c582ef9e7086f12d0b4fb36f37816fa62 [INFO] checking andyyu2004/l-language against master#22572d0994593197593e2a1b7b18d720a9a349a7 for pr-126452-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fandyyu2004%2Fl-language" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/andyyu2004/l-language on toolchain 22572d0994593197593e2a1b7b18d720a9a349a7 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+22572d0994593197593e2a1b7b18d720a9a349a7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/andyyu2004/l-language [INFO] finished tweaking git repo https://github.com/andyyu2004/l-language [INFO] tweaked toml for git repo https://github.com/andyyu2004/l-language written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/andyyu2004/l-language 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" "+22572d0994593197593e2a1b7b18d720a9a349a7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded dirs v2.0.1 [INFO] [stderr] Downloaded redox_users v0.3.0 [INFO] [stderr] Downloaded dirs-sys v0.3.3 [INFO] [stderr] Downloaded log v0.4.7 [INFO] [stderr] Downloaded rustyline v5.0.0 [INFO] [stderr] Downloaded backtrace v0.3.33 [INFO] [stderr] Downloaded cc v1.0.38 [INFO] [stderr] Downloaded syn v0.15.41 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+22572d0994593197593e2a1b7b18d720a9a349a7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0d2b44c316d5285ddbc56b1cd0c8a288eba9a2d46a29a1938a8d74a7c6e49b3e [INFO] running `Command { std: "docker" "start" "-a" "0d2b44c316d5285ddbc56b1cd0c8a288eba9a2d46a29a1938a8d74a7c6e49b3e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0d2b44c316d5285ddbc56b1cd0c8a288eba9a2d46a29a1938a8d74a7c6e49b3e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0d2b44c316d5285ddbc56b1cd0c8a288eba9a2d46a29a1938a8d74a7c6e49b3e", kill_on_drop: false }` [INFO] [stdout] 0d2b44c316d5285ddbc56b1cd0c8a288eba9a2d46a29a1938a8d74a7c6e49b3e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+22572d0994593197593e2a1b7b18d720a9a349a7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 14431057d560e19b750fd3cead379a55afc1072b848ff1d64ad2262e19761c81 [INFO] running `Command { std: "docker" "start" "-a" "14431057d560e19b750fd3cead379a55afc1072b848ff1d64ad2262e19761c81", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.60 [INFO] [stderr] Checking cfg-if v0.1.9 [INFO] [stderr] Compiling bitflags v1.1.0 [INFO] [stderr] Compiling nix v0.14.1 [INFO] [stderr] Compiling memchr v2.2.1 [INFO] [stderr] Compiling log v0.4.7 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking utf8parse v0.1.1 [INFO] [stderr] Checking unicode-segmentation v1.3.0 [INFO] [stderr] Checking unicode-width v0.1.5 [INFO] [stderr] Checking either v1.5.2 [INFO] [stderr] Checking itertools v0.8.0 [INFO] [stderr] Checking dirs-sys v0.3.3 [INFO] [stderr] Checking dirs v2.0.1 [INFO] [stderr] Checking rustyline v5.0.0 [INFO] [stderr] Checking l v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/lexing/lexer.rs:116:20 [INFO] [stdout] | [INFO] [stdout] 116 | '0'...'9' => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/lexing/lexer.rs:148:20 [INFO] [stdout] | [INFO] [stdout] 148 | 'A'...'Z' => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::lexing::Token` [INFO] [stdout] --> src/interpreting/objects/l_struct.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::lexing::Token; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::errors::LError` [INFO] [stdout] --> src/interpreting/objects/l_lambda.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::errors::LError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/types/l_types.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/types/l_types.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/types/l_types.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::main` [INFO] [stdout] --> src/types/l_types.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::main; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `vec_to_type_map` [INFO] [stdout] --> src/types/l_types.rs:15:22 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::utility::{vec_to_type_map, vec_to_vec_map, vec_contains_key, vec_replace_key, vec_update_value}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `vec_to_type_map` [INFO] [stdout] --> src/types/type_checker.rs:18:22 [INFO] [stdout] | [INFO] [stdout] 18 | use crate::utility::{vec_to_type_map, vec_to_vec_map}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::types::l_types::LType::TVar` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::types::l_types::LType::TVar; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/lexing/lexer.rs:116:20 [INFO] [stdout] | [INFO] [stdout] 116 | '0'...'9' => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/lexing/lexer.rs:148:20 [INFO] [stdout] | [INFO] [stdout] 148 | 'A'...'Z' => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::lexing::Token` [INFO] [stdout] --> src/interpreting/objects/l_struct.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::lexing::Token; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::errors::LError` [INFO] [stdout] --> src/interpreting/objects/l_lambda.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::errors::LError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/types/l_types.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/types/l_types.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/types/l_types.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::main` [INFO] [stdout] --> src/types/l_types.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::main; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `vec_to_type_map` [INFO] [stdout] --> src/types/l_types.rs:15:22 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::utility::{vec_to_type_map, vec_to_vec_map, vec_contains_key, vec_replace_key, vec_update_value}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `vec_to_type_map` [INFO] [stdout] --> src/types/type_checker.rs:18:22 [INFO] [stdout] | [INFO] [stdout] 18 | use crate::utility::{vec_to_type_map, vec_to_vec_map}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::types::l_types::LType::TVar` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::types::l_types::LType::TVar; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LInvocable` [INFO] [stdout] --> src/interpreting/interpreter.rs:19:45 [INFO] [stdout] | [INFO] [stdout] 19 | use crate::interpreting::objects::{LObject, LInvocable, Variant, Function, Struct, Tuple, Lambda}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/utility/mod.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | for (k, v) in xs { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/utility/mod.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | for (k, v) in xs { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LInvocable` [INFO] [stdout] --> src/interpreting/interpreter.rs:19:45 [INFO] [stdout] | [INFO] [stdout] 19 | use crate::interpreting::objects::{LObject, LInvocable, Variant, Function, Struct, Tuple, Lambda}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/interpreting/objects/l_function.rs:28:25 [INFO] [stdout] | [INFO] [stdout] 28 | FnCurried { name, param, ret, .. } => { [INFO] [stdout] | ^^^^- [INFO] [stdout] | | [INFO] [stdout] | help: try removing the field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/types/l_types.rs:187:23 [INFO] [stdout] | [INFO] [stdout] 187 | (TVar(_), t) => true, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/types/l_types.rs:188:14 [INFO] [stdout] | [INFO] [stdout] 188 | (t, TVar(_)) => true, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/types/l_types.rs:385:35 [INFO] [stdout] | [INFO] [stdout] 385 | let xvalues = xs.iter().map(|(x,y)| y).collect_vec(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/types/l_types.rs:386:35 [INFO] [stdout] | [INFO] [stdout] 386 | let yvalues = ys.iter().map(|(x,y)| y).collect_vec(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/utility/mod.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | for (k, v) in xs { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/utility/mod.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | for (k, v) in xs { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/types/type_checker.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | _ => panic!("Unimplented in type_check_stmt") [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/types/type_checker.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 93 | LStmt(ref mut expr) | ExprStmt(ref mut expr) | PrintStmt(ref mut expr) => self.type_of_expr(expr), [INFO] [stdout] | ---------------------------------------------------------------------- matches some of the same values [INFO] [stdout] 94 | FnStmt { name, token, param, ret_type, body, tparams } => [INFO] [stdout] | ------------------------------------------------------ matches some of the same values [INFO] [stdout] 95 | self.type_of_fn(name, token, tparams, param,ret_type, body), [INFO] [stdout] 96 | FnCurried { name, tparams, param, ret, token } => [INFO] [stdout] | ---------------------------------------------- matches some of the same values [INFO] [stdout] 97 | self.type_of_curried_fn(name, token, tparams, param, ret), [INFO] [stdout] 98 | VarStmt { name, ltype, init} => self.type_of_var_decl(name, ltype, init.as_mut()), [INFO] [stdout] | ---------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 105 | _ => panic!("Unimplented in type_check_stmt") [INFO] [stdout] | ^ ...and 6 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/types/type_checker.rs:128:14 [INFO] [stdout] | [INFO] [stdout] 128 | for (k, v) in variants { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/interpreting/objects/l_function.rs:28:25 [INFO] [stdout] | [INFO] [stdout] 28 | FnCurried { name, param, ret, .. } => { [INFO] [stdout] | ^^^^- [INFO] [stdout] | | [INFO] [stdout] | help: try removing the field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/types/type_checker.rs:701:22 [INFO] [stdout] | [INFO] [stdout] 701 | FnStmt { name, param, ret_type, .. } => match param { [INFO] [stdout] | ^^^^- [INFO] [stdout] | | [INFO] [stdout] | help: try removing the field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/static_analysis/static_analyser.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | x => unimplemented!("Unimplemented in analyse stmt {}", x) [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/static_analysis/static_analyser.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 52 | LStmt(expr) | ExprStmt(expr) | PrintStmt(expr) => self.analyse_expr(expr), [INFO] [stdout] | ---------------------------------------------- matches some of the same values [INFO] [stdout] 53 | VarStmt { name , init, .. } => self.analyse_var_decl(name, init), [INFO] [stdout] | --------------------------- matches some of the same values [INFO] [stdout] 54 | LetStmt{ token, pattern , init, ..} => self.analyse_let_binding(token, pattern, init), [INFO] [stdout] | ----------------------------------- matches some of the same values [INFO] [stdout] 55 | FnStmt { name, param, body, tparams, token, ..} => [INFO] [stdout] | ----------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 67 | x => unimplemented!("Unimplemented in analyse stmt {}", x) [INFO] [stdout] | ^ ...and 6 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/types/l_types.rs:187:23 [INFO] [stdout] | [INFO] [stdout] 187 | (TVar(_), t) => true, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/types/l_types.rs:188:14 [INFO] [stdout] | [INFO] [stdout] 188 | (t, TVar(_)) => true, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:250:35 [INFO] [stdout] | [INFO] [stdout] 250 | fn analyse_fn_decl(&mut self, token: &Token, name: &Option, param: &Option>, body: &Vec, tparams: &Vec src/static_analysis/static_analyser.rs:250:120 [INFO] [stdout] | [INFO] [stdout] 250 | ...>, body: &Vec, tparams: &Vec) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tparams` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:273:43 [INFO] [stdout] | [INFO] [stdout] 273 | fn analyse_curried_fn_decl(&mut self, token: &Token, name: &Option, param: &Pair, ret: &Stmt, tparams: &Vec) ->... [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_token` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tparams` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:273:114 [INFO] [stdout] | [INFO] [stdout] 273 | ...: &Pair, ret: &Stmt, tparams: &Vec) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tparams` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/types/l_types.rs:385:35 [INFO] [stdout] | [INFO] [stdout] 385 | let xvalues = xs.iter().map(|(x,y)| y).collect_vec(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/types/l_types.rs:386:35 [INFO] [stdout] | [INFO] [stdout] 386 | let yvalues = ys.iter().map(|(x,y)| y).collect_vec(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/types/type_checker.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | _ => panic!("Unimplented in type_check_stmt") [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/types/type_checker.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 93 | LStmt(ref mut expr) | ExprStmt(ref mut expr) | PrintStmt(ref mut expr) => self.type_of_expr(expr), [INFO] [stdout] | ---------------------------------------------------------------------- matches some of the same values [INFO] [stdout] 94 | FnStmt { name, token, param, ret_type, body, tparams } => [INFO] [stdout] | ------------------------------------------------------ matches some of the same values [INFO] [stdout] 95 | self.type_of_fn(name, token, tparams, param,ret_type, body), [INFO] [stdout] 96 | FnCurried { name, tparams, param, ret, token } => [INFO] [stdout] | ---------------------------------------------- matches some of the same values [INFO] [stdout] 97 | self.type_of_curried_fn(name, token, tparams, param, ret), [INFO] [stdout] 98 | VarStmt { name, ltype, init} => self.type_of_var_decl(name, ltype, init.as_mut()), [INFO] [stdout] | ---------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 105 | _ => panic!("Unimplented in type_check_stmt") [INFO] [stdout] | ^ ...and 6 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `vec_to_type_map` is never used [INFO] [stdout] --> src/utility/mod.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn vec_to_type_map(vec: Vec) -> HashMap> where T : Hash + Eq { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `function` and `lambda` are never used [INFO] [stdout] --> src/interpreting/objects/l_object.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl LObject { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn function(&self) -> &Function { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn lambda(&self) -> &Lambda { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `PRecord` is never constructed [INFO] [stdout] --> src/interpreting/pattern_matching/pattern.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum LPattern { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] 9 | // POr(Box, Box), [INFO] [stdout] 10 | PRecord, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LPattern` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pair` is never constructed [INFO] [stdout] --> src/internal/data_structures/pair.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct Pair { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Pair` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/types/type_checker.rs:128:14 [INFO] [stdout] | [INFO] [stdout] 128 | for (k, v) in variants { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/types/type_checker.rs:701:22 [INFO] [stdout] | [INFO] [stdout] 701 | FnStmt { name, param, ret_type, .. } => match param { [INFO] [stdout] | ^^^^- [INFO] [stdout] | | [INFO] [stdout] | help: try removing the field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/static_analysis/static_analyser.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | x => unimplemented!("Unimplemented in analyse stmt {}", x) [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/static_analysis/static_analyser.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 52 | LStmt(expr) | ExprStmt(expr) | PrintStmt(expr) => self.analyse_expr(expr), [INFO] [stdout] | ---------------------------------------------- matches some of the same values [INFO] [stdout] 53 | VarStmt { name , init, .. } => self.analyse_var_decl(name, init), [INFO] [stdout] | --------------------------- matches some of the same values [INFO] [stdout] 54 | LetStmt{ token, pattern , init, ..} => self.analyse_let_binding(token, pattern, init), [INFO] [stdout] | ----------------------------------- matches some of the same values [INFO] [stdout] 55 | FnStmt { name, param, body, tparams, token, ..} => [INFO] [stdout] | ----------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 67 | x => unimplemented!("Unimplemented in analyse stmt {}", x) [INFO] [stdout] | ^ ...and 6 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:250:35 [INFO] [stdout] | [INFO] [stdout] 250 | fn analyse_fn_decl(&mut self, token: &Token, name: &Option, param: &Option>, body: &Vec, tparams: &Vec src/static_analysis/static_analyser.rs:250:120 [INFO] [stdout] | [INFO] [stdout] 250 | ...>, body: &Vec, tparams: &Vec) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tparams` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:273:43 [INFO] [stdout] | [INFO] [stdout] 273 | fn analyse_curried_fn_decl(&mut self, token: &Token, name: &Option, param: &Pair, ret: &Stmt, tparams: &Vec) ->... [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_token` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tparams` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:273:114 [INFO] [stdout] | [INFO] [stdout] 273 | ...: &Pair, ret: &Stmt, tparams: &Vec) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tparams` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `vec_to_type_map` is never used [INFO] [stdout] --> src/utility/mod.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn vec_to_type_map(vec: Vec) -> HashMap> where T : Hash + Eq { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `function` and `lambda` are never used [INFO] [stdout] --> src/interpreting/objects/l_object.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl LObject { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn function(&self) -> &Function { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn lambda(&self) -> &Lambda { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `PRecord` is never constructed [INFO] [stdout] --> src/interpreting/pattern_matching/pattern.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum LPattern { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] 9 | // POr(Box, Box), [INFO] [stdout] 10 | PRecord, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LPattern` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pair` is never constructed [INFO] [stdout] --> src/internal/data_structures/pair.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct Pair { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Pair` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.97s [INFO] running `Command { std: "docker" "inspect" "14431057d560e19b750fd3cead379a55afc1072b848ff1d64ad2262e19761c81", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "14431057d560e19b750fd3cead379a55afc1072b848ff1d64ad2262e19761c81", kill_on_drop: false }` [INFO] [stdout] 14431057d560e19b750fd3cead379a55afc1072b848ff1d64ad2262e19761c81 [INFO] checking andyyu2004/l-language against try#6289438dbad80b1a0029c66dd3f6abf57c2c51be for pr-126452-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fandyyu2004%2Fl-language" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/andyyu2004/l-language on toolchain 6289438dbad80b1a0029c66dd3f6abf57c2c51be [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6289438dbad80b1a0029c66dd3f6abf57c2c51be" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/andyyu2004/l-language [INFO] finished tweaking git repo https://github.com/andyyu2004/l-language [INFO] tweaked toml for git repo https://github.com/andyyu2004/l-language written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/andyyu2004/l-language 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" "+6289438dbad80b1a0029c66dd3f6abf57c2c51be" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+6289438dbad80b1a0029c66dd3f6abf57c2c51be" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 922044a2dbc9dc20e14369f70d38caa10d30aee1110548a495a6eeb70cf12a1a [INFO] running `Command { std: "docker" "start" "-a" "922044a2dbc9dc20e14369f70d38caa10d30aee1110548a495a6eeb70cf12a1a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "922044a2dbc9dc20e14369f70d38caa10d30aee1110548a495a6eeb70cf12a1a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "922044a2dbc9dc20e14369f70d38caa10d30aee1110548a495a6eeb70cf12a1a", kill_on_drop: false }` [INFO] [stdout] 922044a2dbc9dc20e14369f70d38caa10d30aee1110548a495a6eeb70cf12a1a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+6289438dbad80b1a0029c66dd3f6abf57c2c51be" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e1b889884a2e90d6bb3da13bfbf090985174bf82ac46b7c02f2b16314c40bb61 [INFO] running `Command { std: "docker" "start" "-a" "e1b889884a2e90d6bb3da13bfbf090985174bf82ac46b7c02f2b16314c40bb61", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.60 [INFO] [stderr] Checking cfg-if v0.1.9 [INFO] [stderr] Compiling bitflags v1.1.0 [INFO] [stderr] Compiling memchr v2.2.1 [INFO] [stderr] Compiling log v0.4.7 [INFO] [stderr] Compiling nix v0.14.1 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking either v1.5.2 [INFO] [stderr] Checking unicode-segmentation v1.3.0 [INFO] [stderr] Checking utf8parse v0.1.1 [INFO] [stderr] Checking unicode-width v0.1.5 [INFO] [stderr] Checking itertools v0.8.0 [INFO] [stderr] Checking dirs-sys v0.3.3 [INFO] [stderr] Checking dirs v2.0.1 [INFO] [stderr] Checking rustyline v5.0.0 [INFO] [stderr] Checking l v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/lexing/lexer.rs:116:20 [INFO] [stdout] | [INFO] [stdout] 116 | '0'...'9' => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/lexing/lexer.rs:148:20 [INFO] [stdout] | [INFO] [stdout] 148 | 'A'...'Z' => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::lexing::Token` [INFO] [stdout] --> src/interpreting/objects/l_struct.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::lexing::Token; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::errors::LError` [INFO] [stdout] --> src/interpreting/objects/l_lambda.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::errors::LError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/types/l_types.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/types/l_types.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/types/l_types.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::main` [INFO] [stdout] --> src/types/l_types.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::main; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `vec_to_type_map` [INFO] [stdout] --> src/types/l_types.rs:15:22 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::utility::{vec_to_type_map, vec_to_vec_map, vec_contains_key, vec_replace_key, vec_update_value}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `vec_to_type_map` [INFO] [stdout] --> src/types/type_checker.rs:18:22 [INFO] [stdout] | [INFO] [stdout] 18 | use crate::utility::{vec_to_type_map, vec_to_vec_map}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::types::l_types::LType::TVar` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::types::l_types::LType::TVar; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/lexing/lexer.rs:116:20 [INFO] [stdout] | [INFO] [stdout] 116 | '0'...'9' => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/lexing/lexer.rs:148:20 [INFO] [stdout] | [INFO] [stdout] 148 | 'A'...'Z' => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::lexing::Token` [INFO] [stdout] --> src/interpreting/objects/l_struct.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::lexing::Token; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::errors::LError` [INFO] [stdout] --> src/interpreting/objects/l_lambda.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::errors::LError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/types/l_types.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/types/l_types.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/types/l_types.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::main` [INFO] [stdout] --> src/types/l_types.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::main; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `vec_to_type_map` [INFO] [stdout] --> src/types/l_types.rs:15:22 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::utility::{vec_to_type_map, vec_to_vec_map, vec_contains_key, vec_replace_key, vec_update_value}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `vec_to_type_map` [INFO] [stdout] --> src/types/type_checker.rs:18:22 [INFO] [stdout] | [INFO] [stdout] 18 | use crate::utility::{vec_to_type_map, vec_to_vec_map}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::types::l_types::LType::TVar` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::types::l_types::LType::TVar; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LInvocable` [INFO] [stdout] --> src/interpreting/interpreter.rs:19:45 [INFO] [stdout] | [INFO] [stdout] 19 | use crate::interpreting::objects::{LObject, LInvocable, Variant, Function, Struct, Tuple, Lambda}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LInvocable` [INFO] [stdout] --> src/interpreting/interpreter.rs:19:45 [INFO] [stdout] | [INFO] [stdout] 19 | use crate::interpreting::objects::{LObject, LInvocable, Variant, Function, Struct, Tuple, Lambda}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/utility/mod.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | for (k, v) in xs { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/utility/mod.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | for (k, v) in xs { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/interpreting/objects/l_function.rs:28:25 [INFO] [stdout] | [INFO] [stdout] 28 | FnCurried { name, param, ret, .. } => { [INFO] [stdout] | ^^^^- [INFO] [stdout] | | [INFO] [stdout] | help: try removing the field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/utility/mod.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | for (k, v) in xs { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/utility/mod.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | for (k, v) in xs { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/types/l_types.rs:187:23 [INFO] [stdout] | [INFO] [stdout] 187 | (TVar(_), t) => true, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/types/l_types.rs:188:14 [INFO] [stdout] | [INFO] [stdout] 188 | (t, TVar(_)) => true, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/types/l_types.rs:385:35 [INFO] [stdout] | [INFO] [stdout] 385 | let xvalues = xs.iter().map(|(x,y)| y).collect_vec(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/types/l_types.rs:386:35 [INFO] [stdout] | [INFO] [stdout] 386 | let yvalues = ys.iter().map(|(x,y)| y).collect_vec(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/interpreting/objects/l_function.rs:28:25 [INFO] [stdout] | [INFO] [stdout] 28 | FnCurried { name, param, ret, .. } => { [INFO] [stdout] | ^^^^- [INFO] [stdout] | | [INFO] [stdout] | help: try removing the field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/types/type_checker.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | _ => panic!("Unimplented in type_check_stmt") [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/types/type_checker.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 93 | LStmt(ref mut expr) | ExprStmt(ref mut expr) | PrintStmt(ref mut expr) => self.type_of_expr(expr), [INFO] [stdout] | ---------------------------------------------------------------------- matches some of the same values [INFO] [stdout] 94 | FnStmt { name, token, param, ret_type, body, tparams } => [INFO] [stdout] | ------------------------------------------------------ matches some of the same values [INFO] [stdout] 95 | self.type_of_fn(name, token, tparams, param,ret_type, body), [INFO] [stdout] 96 | FnCurried { name, tparams, param, ret, token } => [INFO] [stdout] | ---------------------------------------------- matches some of the same values [INFO] [stdout] 97 | self.type_of_curried_fn(name, token, tparams, param, ret), [INFO] [stdout] 98 | VarStmt { name, ltype, init} => self.type_of_var_decl(name, ltype, init.as_mut()), [INFO] [stdout] | ---------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 105 | _ => panic!("Unimplented in type_check_stmt") [INFO] [stdout] | ^ ...and 6 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/types/type_checker.rs:128:14 [INFO] [stdout] | [INFO] [stdout] 128 | for (k, v) in variants { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/types/l_types.rs:187:23 [INFO] [stdout] | [INFO] [stdout] 187 | (TVar(_), t) => true, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/types/l_types.rs:188:14 [INFO] [stdout] | [INFO] [stdout] 188 | (t, TVar(_)) => true, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/types/type_checker.rs:701:22 [INFO] [stdout] | [INFO] [stdout] 701 | FnStmt { name, param, ret_type, .. } => match param { [INFO] [stdout] | ^^^^- [INFO] [stdout] | | [INFO] [stdout] | help: try removing the field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/types/l_types.rs:385:35 [INFO] [stdout] | [INFO] [stdout] 385 | let xvalues = xs.iter().map(|(x,y)| y).collect_vec(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/types/l_types.rs:386:35 [INFO] [stdout] | [INFO] [stdout] 386 | let yvalues = ys.iter().map(|(x,y)| y).collect_vec(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/static_analysis/static_analyser.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | x => unimplemented!("Unimplemented in analyse stmt {}", x) [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/static_analysis/static_analyser.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 52 | LStmt(expr) | ExprStmt(expr) | PrintStmt(expr) => self.analyse_expr(expr), [INFO] [stdout] | ---------------------------------------------- matches some of the same values [INFO] [stdout] 53 | VarStmt { name , init, .. } => self.analyse_var_decl(name, init), [INFO] [stdout] | --------------------------- matches some of the same values [INFO] [stdout] 54 | LetStmt{ token, pattern , init, ..} => self.analyse_let_binding(token, pattern, init), [INFO] [stdout] | ----------------------------------- matches some of the same values [INFO] [stdout] 55 | FnStmt { name, param, body, tparams, token, ..} => [INFO] [stdout] | ----------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 67 | x => unimplemented!("Unimplemented in analyse stmt {}", x) [INFO] [stdout] | ^ ...and 6 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/types/type_checker.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | _ => panic!("Unimplented in type_check_stmt") [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/types/type_checker.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 93 | LStmt(ref mut expr) | ExprStmt(ref mut expr) | PrintStmt(ref mut expr) => self.type_of_expr(expr), [INFO] [stdout] | ---------------------------------------------------------------------- matches some of the same values [INFO] [stdout] 94 | FnStmt { name, token, param, ret_type, body, tparams } => [INFO] [stdout] | ------------------------------------------------------ matches some of the same values [INFO] [stdout] 95 | self.type_of_fn(name, token, tparams, param,ret_type, body), [INFO] [stdout] 96 | FnCurried { name, tparams, param, ret, token } => [INFO] [stdout] | ---------------------------------------------- matches some of the same values [INFO] [stdout] 97 | self.type_of_curried_fn(name, token, tparams, param, ret), [INFO] [stdout] 98 | VarStmt { name, ltype, init} => self.type_of_var_decl(name, ltype, init.as_mut()), [INFO] [stdout] | ---------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 105 | _ => panic!("Unimplented in type_check_stmt") [INFO] [stdout] | ^ ...and 6 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/types/type_checker.rs:128:14 [INFO] [stdout] | [INFO] [stdout] 128 | for (k, v) in variants { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:250:35 [INFO] [stdout] | [INFO] [stdout] 250 | fn analyse_fn_decl(&mut self, token: &Token, name: &Option, param: &Option>, body: &Vec, tparams: &Vec src/static_analysis/static_analyser.rs:250:120 [INFO] [stdout] | [INFO] [stdout] 250 | ...>, body: &Vec, tparams: &Vec) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tparams` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:273:43 [INFO] [stdout] | [INFO] [stdout] 273 | fn analyse_curried_fn_decl(&mut self, token: &Token, name: &Option, param: &Pair, ret: &Stmt, tparams: &Vec) ->... [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_token` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tparams` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:273:114 [INFO] [stdout] | [INFO] [stdout] 273 | ...: &Pair, ret: &Stmt, tparams: &Vec) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tparams` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `vec_to_type_map` is never used [INFO] [stdout] --> src/utility/mod.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn vec_to_type_map(vec: Vec) -> HashMap> where T : Hash + Eq { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `function` and `lambda` are never used [INFO] [stdout] --> src/interpreting/objects/l_object.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl LObject { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn function(&self) -> &Function { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn lambda(&self) -> &Lambda { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `PRecord` is never constructed [INFO] [stdout] --> src/interpreting/pattern_matching/pattern.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum LPattern { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] 9 | // POr(Box, Box), [INFO] [stdout] 10 | PRecord, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LPattern` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pair` is never constructed [INFO] [stdout] --> src/internal/data_structures/pair.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct Pair { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Pair` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/types/type_checker.rs:701:22 [INFO] [stdout] | [INFO] [stdout] 701 | FnStmt { name, param, ret_type, .. } => match param { [INFO] [stdout] | ^^^^- [INFO] [stdout] | | [INFO] [stdout] | help: try removing the field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/static_analysis/static_analyser.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | x => unimplemented!("Unimplemented in analyse stmt {}", x) [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/static_analysis/static_analyser.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 52 | LStmt(expr) | ExprStmt(expr) | PrintStmt(expr) => self.analyse_expr(expr), [INFO] [stdout] | ---------------------------------------------- matches some of the same values [INFO] [stdout] 53 | VarStmt { name , init, .. } => self.analyse_var_decl(name, init), [INFO] [stdout] | --------------------------- matches some of the same values [INFO] [stdout] 54 | LetStmt{ token, pattern , init, ..} => self.analyse_let_binding(token, pattern, init), [INFO] [stdout] | ----------------------------------- matches some of the same values [INFO] [stdout] 55 | FnStmt { name, param, body, tparams, token, ..} => [INFO] [stdout] | ----------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 67 | x => unimplemented!("Unimplemented in analyse stmt {}", x) [INFO] [stdout] | ^ ...and 6 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:250:35 [INFO] [stdout] | [INFO] [stdout] 250 | fn analyse_fn_decl(&mut self, token: &Token, name: &Option, param: &Option>, body: &Vec, tparams: &Vec src/static_analysis/static_analyser.rs:250:120 [INFO] [stdout] | [INFO] [stdout] 250 | ...>, body: &Vec, tparams: &Vec) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tparams` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:273:43 [INFO] [stdout] | [INFO] [stdout] 273 | fn analyse_curried_fn_decl(&mut self, token: &Token, name: &Option, param: &Pair, ret: &Stmt, tparams: &Vec) ->... [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_token` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tparams` [INFO] [stdout] --> src/static_analysis/static_analyser.rs:273:114 [INFO] [stdout] | [INFO] [stdout] 273 | ...: &Pair, ret: &Stmt, tparams: &Vec) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tparams` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `vec_to_type_map` is never used [INFO] [stdout] --> src/utility/mod.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn vec_to_type_map(vec: Vec) -> HashMap> where T : Hash + Eq { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `function` and `lambda` are never used [INFO] [stdout] --> src/interpreting/objects/l_object.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl LObject { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn function(&self) -> &Function { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn lambda(&self) -> &Lambda { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `PRecord` is never constructed [INFO] [stdout] --> src/interpreting/pattern_matching/pattern.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum LPattern { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] 9 | // POr(Box, Box), [INFO] [stdout] 10 | PRecord, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LPattern` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pair` is never constructed [INFO] [stdout] --> src/internal/data_structures/pair.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct Pair { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Pair` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.22s [INFO] running `Command { std: "docker" "inspect" "e1b889884a2e90d6bb3da13bfbf090985174bf82ac46b7c02f2b16314c40bb61", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e1b889884a2e90d6bb3da13bfbf090985174bf82ac46b7c02f2b16314c40bb61", kill_on_drop: false }` [INFO] [stdout] e1b889884a2e90d6bb3da13bfbf090985174bf82ac46b7c02f2b16314c40bb61