[INFO] cloning repository https://github.com/flamesky0/imbaa [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/flamesky0/imbaa" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflamesky0%2Fimbaa", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflamesky0%2Fimbaa'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 29e0a11bd36de294d3e6ac1993fe69bf40ab8fe0 [INFO] checking flamesky0/imbaa against master#1f12b9b0fdbe735968ac002792a720f0ba4faca6 for crater-rollup-uwu [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflamesky0%2Fimbaa" "/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/flamesky0/imbaa on toolchain 1f12b9b0fdbe735968ac002792a720f0ba4faca6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/flamesky0/imbaa [INFO] finished tweaking git repo https://github.com/flamesky0/imbaa [INFO] tweaked toml for git repo https://github.com/flamesky0/imbaa written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/flamesky0/imbaa 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" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [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" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0814e7042770e4433fd6703a4574418a2a8c5b97e8c0cb530b9ebc42c7837b48 [INFO] running `Command { std: "docker" "start" "-a" "0814e7042770e4433fd6703a4574418a2a8c5b97e8c0cb530b9ebc42c7837b48", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0814e7042770e4433fd6703a4574418a2a8c5b97e8c0cb530b9ebc42c7837b48", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0814e7042770e4433fd6703a4574418a2a8c5b97e8c0cb530b9ebc42c7837b48", kill_on_drop: false }` [INFO] [stdout] 0814e7042770e4433fd6703a4574418a2a8c5b97e8c0cb530b9ebc42c7837b48 [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" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7e0787a1fd0c0c693aa57040af88315f7037588be810dca8f2e68af223388abe [INFO] running `Command { std: "docker" "start" "-a" "7e0787a1fd0c0c693aa57040af88315f7037588be810dca8f2e68af223388abe", kill_on_drop: false }` [INFO] [stderr] Checking imbaa v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `super::graphics` [INFO] [stdout] --> src/interp/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::graphics; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::graphics` [INFO] [stdout] --> src/interp/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::graphics; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file` [INFO] [stdout] --> src/graphics/mod.rs:25:16 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn new(file : File) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_file` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/graphics/mod.rs:28:26 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn robot_forward(num : u64) -> bool { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/graphics/mod.rs:31:27 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn robot_backward(num : u64) -> bool { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/graphics/mod.rs:40:23 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn load_boxes(num : u64) -> () { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/graphics/mod.rs:44:23 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn drop_boxes(num : u64) -> () { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_with_map` [INFO] [stdout] --> src/main.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | let mut file_with_map : File; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_with_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> src/main.rs:17:13 [INFO] [stdout] | [INFO] [stdout] 17 | let mut map = String::new(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | let mut map = String::new(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Interpreter` is never constructed [INFO] [stdout] --> src/interp/mod.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Interpreter { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `interpret` are never used [INFO] [stdout] --> src/interp/mod.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Interpreter { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 12 | [INFO] [stdout] 13 | pub fn new() -> Interpreter { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn interpret(&mut self, program : &String) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `BoolVal` is never used [INFO] [stdout] --> src/interp/parser.rs:4:6 [INFO] [stdout] | [INFO] [stdout] 4 | enum BoolVal { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `CellVal` is never used [INFO] [stdout] --> src/interp/parser.rs:11:6 [INFO] [stdout] | [INFO] [stdout] 11 | enum CellVal { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Val` is never used [INFO] [stdout] --> src/interp/parser.rs:20:6 [INFO] [stdout] | [INFO] [stdout] 20 | enum Val { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/interp/parser.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl Val { [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 28 | pub fn new() -> Val { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Var` is never constructed [INFO] [stdout] --> src/interp/parser.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | struct Var { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from` are never used [INFO] [stdout] --> src/interp/parser.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl Var { [INFO] [stdout] | -------- associated functions in this implementation [INFO] [stdout] 39 | pub fn new() -> Var { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn from(name : String, type_ : Val) -> Var { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `IfStmt` is never constructed [INFO] [stdout] --> src/interp/parser.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | struct IfStmt { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/interp/parser.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 55 | impl IfStmt { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 56 | pub fn new() -> IfStmt { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WhileStmt` is never constructed [INFO] [stdout] --> src/interp/parser.rs:63:8 [INFO] [stdout] | [INFO] [stdout] 63 | struct WhileStmt { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/interp/parser.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 69 | impl WhileStmt { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 70 | pub fn new() -> WhileStmt { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `OP` is never used [INFO] [stdout] --> src/interp/parser.rs:76:6 [INFO] [stdout] | [INFO] [stdout] 76 | enum OP { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ArithExpr` is never used [INFO] [stdout] --> src/interp/parser.rs:86:6 [INFO] [stdout] | [INFO] [stdout] 86 | enum ArithExpr { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/interp/parser.rs:98:12 [INFO] [stdout] | [INFO] [stdout] 97 | impl ArithExpr { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 98 | pub fn new() -> ArithExpr { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LogicExpr` is never constructed [INFO] [stdout] --> src/interp/parser.rs:104:8 [INFO] [stdout] | [INFO] [stdout] 104 | struct LogicExpr { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from` are never used [INFO] [stdout] --> src/interp/parser.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 110 | impl LogicExpr { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 111 | pub fn new() -> LogicExpr { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn from(op : Option, larex : ArithExpr, rarex :ArithExpr) -> LogicExpr { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Stmt` is never used [INFO] [stdout] --> src/interp/parser.rs:120:6 [INFO] [stdout] | [INFO] [stdout] 120 | enum Stmt { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Func` is never constructed [INFO] [stdout] --> src/interp/parser.rs:138:8 [INFO] [stdout] | [INFO] [stdout] 138 | struct Func { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/interp/parser.rs:146:12 [INFO] [stdout] | [INFO] [stdout] 145 | impl Func { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 146 | pub fn new() -> Func { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Ast` is never constructed [INFO] [stdout] --> src/interp/parser.rs:154:12 [INFO] [stdout] | [INFO] [stdout] 154 | pub struct Ast { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Ast` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/interp/parser.rs:160:12 [INFO] [stdout] | [INFO] [stdout] 159 | impl Ast { [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 160 | pub fn new() -> Ast { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Parser` is never constructed [INFO] [stdout] --> src/interp/parser.rs:164:12 [INFO] [stdout] | [INFO] [stdout] 164 | pub struct Parser <'a> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/interp/parser.rs:172:12 [INFO] [stdout] | [INFO] [stdout] 171 | impl <'a> Parser <'a>{ [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 172 | pub fn new(string : &'a String) -> Parser<'a> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | fn match_token(&mut self, token : lexer::Token) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | fn parse_var_decl(&mut self) -> Result>, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 263 | fn parse_logic_expr(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 293 | fn parse_if_stmt(&mut self) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 335 | fn parse_while_stmt(&mut self) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 359 | fn parse_arith_expr(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 421 | fn parse_func_call(&mut self, name : String) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 445 | fn parse_assign_or_func_call(&mut self, name : String) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 473 | fn parse_stmt(&mut self) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 537 | fn parse_func(&mut self) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 601 | fn parse_func_list(&mut self) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 610 | pub fn build_ast(mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/interp/lexer.rs:116:12 [INFO] [stdout] | [INFO] [stdout] 114 | impl <'a> Lexer<'a> { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 115 | /* interpreter is case insensitive, so we do make uppercase */ [INFO] [stdout] 116 | pub fn new(source : &'a String) -> Lexer<'a> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Cell` is never used [INFO] [stdout] --> src/graphics/mod.rs:3:10 [INFO] [stdout] | [INFO] [stdout] 3 | pub enum Cell { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Robot` is never constructed [INFO] [stdout] --> src/graphics/mod.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | struct Robot { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Map` is never constructed [INFO] [stdout] --> src/graphics/mod.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Map { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> src/graphics/mod.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl Map { [INFO] [stdout] | -------- associated functions in this implementation [INFO] [stdout] 25 | pub fn new(file : File) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn robot_forward(num : u64) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn robot_backward(num : u64) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn robot_turn_left() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn robot_turn_right() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn load_boxes(num : u64) -> () { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn drop_boxes(num : u64) -> () { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn look() -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn test() -> Cell { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 38 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ast` [INFO] [stdout] --> src/interp/parser.rs:641:16 [INFO] [stdout] | [INFO] [stdout] 641 | Ok(ast) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ast` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file` [INFO] [stdout] --> src/graphics/mod.rs:25:16 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn new(file : File) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/graphics/mod.rs:28:26 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn robot_forward(num : u64) -> bool { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/graphics/mod.rs:31:27 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn robot_backward(num : u64) -> bool { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/graphics/mod.rs:40:23 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn load_boxes(num : u64) -> () { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/graphics/mod.rs:44:23 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn drop_boxes(num : u64) -> () { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_with_map` [INFO] [stdout] --> src/main.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | let mut file_with_map : File; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_with_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> src/main.rs:17:13 [INFO] [stdout] | [INFO] [stdout] 17 | let mut map = String::new(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | let mut map = String::new(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Interpreter` is never constructed [INFO] [stdout] --> src/interp/mod.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Interpreter { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `interpret` are never used [INFO] [stdout] --> src/interp/mod.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Interpreter { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 12 | [INFO] [stdout] 13 | pub fn new() -> Interpreter { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn interpret(&mut self, program : &String) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `FALSE` and `TRUE` are never constructed [INFO] [stdout] --> src/interp/parser.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 4 | enum BoolVal { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 5 | FALSE = 0, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 6 | TRUE, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BoolVal` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `EMPTY`, `WALL`, `BOX`, and `EXIT` are never constructed [INFO] [stdout] --> src/interp/parser.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 11 | enum CellVal { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 12 | EMPTY, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 13 | WALL, [INFO] [stdout] | ^^^^ [INFO] [stdout] 14 | BOX, [INFO] [stdout] | ^^^ [INFO] [stdout] 15 | EXIT, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CellVal` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/interp/parser.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | INT(i64), [INFO] [stdout] | --- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Val` has derived impls for the traits `Debug` and `Clone`, 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] 22 | INT(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/interp/parser.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | BOOL(BoolVal), [INFO] [stdout] | ---- ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Val` has derived impls for the traits `Debug` and `Clone`, 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] 23 | BOOL(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/interp/parser.rs:24:10 [INFO] [stdout] | [INFO] [stdout] 24 | CELL(CellVal) [INFO] [stdout] | ---- ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Val` has derived impls for the traits `Debug` and `Clone`, 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] 24 | CELL(()) [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `type_` are never read [INFO] [stdout] --> src/interp/parser.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 33 | struct Var { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] 34 | name : String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 35 | type_ : Val [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Var` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/interp/parser.rs:87:10 [INFO] [stdout] | [INFO] [stdout] 87 | EXPR((Box, Box, OP)), [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ArithExpr` has a derived impl for the trait `Debug`, but this is 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] 87 | EXPR(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/interp/parser.rs:88:8 [INFO] [stdout] | [INFO] [stdout] 88 | ID(Var), [INFO] [stdout] | -- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ArithExpr` has a derived impl for the trait `Debug`, but this is 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] 88 | ID(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/interp/parser.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | NUM(i64), [INFO] [stdout] | --- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ArithExpr` has a derived impl for the trait `Debug`, but this is 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] 89 | NUM(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `operation`, `larex`, and `rarex` are never read [INFO] [stdout] --> src/interp/parser.rs:105:5 [INFO] [stdout] | [INFO] [stdout] 104 | struct LogicExpr { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 105 | operation : Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 106 | larex : ArithExpr, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 107 | rarex : ArithExpr [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LogicExpr` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/interp/parser.rs:121:8 [INFO] [stdout] | [INFO] [stdout] 121 | IF(IfStmt), [INFO] [stdout] | -- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` has a derived impl for the trait `Debug`, but this is 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] 121 | IF(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/interp/parser.rs:122:11 [INFO] [stdout] | [INFO] [stdout] 122 | WHILE(WhileStmt), [INFO] [stdout] | ----- ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` has a derived impl for the trait `Debug`, but this is 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] 122 | WHILE(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/interp/parser.rs:123:11 [INFO] [stdout] | [INFO] [stdout] 123 | ASSGN(Var, ArithExpr), [INFO] [stdout] | ----- ^^^ ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 123 | ASSGN((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/interp/parser.rs:124:10 [INFO] [stdout] | [INFO] [stdout] 124 | CALL(String, Var), [INFO] [stdout] | ---- ^^^^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 124 | CALL((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/interp/parser.rs:125:10 [INFO] [stdout] | [INFO] [stdout] 125 | LOAD(ArithExpr), [INFO] [stdout] | ---- ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` has a derived impl for the trait `Debug`, but this is 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] 125 | LOAD(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/interp/parser.rs:126:10 [INFO] [stdout] | [INFO] [stdout] 126 | DROP(ArithExpr), [INFO] [stdout] | ---- ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` has a derived impl for the trait `Debug`, but this is 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] 126 | DROP(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/interp/parser.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | FORWARD(ArithExpr), [INFO] [stdout] | ------- ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` has a derived impl for the trait `Debug`, but this is 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] 127 | FORWARD(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/interp/parser.rs:128:14 [INFO] [stdout] | [INFO] [stdout] 128 | BACKWARD(ArithExpr), [INFO] [stdout] | -------- ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` has a derived impl for the trait `Debug`, but this is 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] 128 | BACKWARD(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `UNDEF` is never constructed [INFO] [stdout] --> src/interp/parser.rs:134:5 [INFO] [stdout] | [INFO] [stdout] 120 | enum Stmt { [INFO] [stdout] | ---- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 134 | UNDEF [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `param` is never read [INFO] [stdout] --> src/interp/parser.rs:140:5 [INFO] [stdout] | [INFO] [stdout] 138 | struct Func { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 139 | name : String, [INFO] [stdout] 140 | param : Var, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Func` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/interp/parser.rs:160:12 [INFO] [stdout] | [INFO] [stdout] 159 | impl Ast { [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 160 | pub fn new() -> Ast { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Cell` is never used [INFO] [stdout] --> src/graphics/mod.rs:3:10 [INFO] [stdout] | [INFO] [stdout] 3 | pub enum Cell { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Robot` is never constructed [INFO] [stdout] --> src/graphics/mod.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | struct Robot { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Map` is never constructed [INFO] [stdout] --> src/graphics/mod.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Map { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> src/graphics/mod.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl Map { [INFO] [stdout] | -------- associated functions in this implementation [INFO] [stdout] 25 | pub fn new(file : File) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn robot_forward(num : u64) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn robot_backward(num : u64) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn robot_turn_left() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn robot_turn_right() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn load_boxes(num : u64) -> () { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn drop_boxes(num : u64) -> () { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn look() -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn test() -> Cell { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 37 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.23s [INFO] running `Command { std: "docker" "inspect" "7e0787a1fd0c0c693aa57040af88315f7037588be810dca8f2e68af223388abe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7e0787a1fd0c0c693aa57040af88315f7037588be810dca8f2e68af223388abe", kill_on_drop: false }` [INFO] [stdout] 7e0787a1fd0c0c693aa57040af88315f7037588be810dca8f2e68af223388abe