[INFO] cloning repository https://github.com/marioidival/apl [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/marioidival/apl" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmarioidival%2Fapl", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmarioidival%2Fapl'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a6ca623aae6314d0ad0a774211a66fd7e1e5b630 [INFO] checking marioidival/apl against beta for pr-78714 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmarioidival%2Fapl" "/workspace/builds/worker-9/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/marioidival/apl on toolchain beta [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/marioidival/apl [INFO] finished tweaking git repo https://github.com/marioidival/apl [INFO] tweaked toml for git repo https://github.com/marioidival/apl written to /workspace/builds/worker-9/source/Cargo.toml [INFO] crate git repo https://github.com/marioidival/apl already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+beta" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 107f9ac4effff9a0c0f57523d1e140b8fb06465da133211f0779de384131d763 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "107f9ac4effff9a0c0f57523d1e140b8fb06465da133211f0779de384131d763", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "107f9ac4effff9a0c0f57523d1e140b8fb06465da133211f0779de384131d763", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "107f9ac4effff9a0c0f57523d1e140b8fb06465da133211f0779de384131d763", kill_on_drop: false }` [INFO] [stdout] 107f9ac4effff9a0c0f57523d1e140b8fb06465da133211f0779de384131d763 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+beta" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 26b3e71d52c9c7ef62367bd56516287af7da80fdd1df56805216cb83570c8869 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "26b3e71d52c9c7ef62367bd56516287af7da80fdd1df56805216cb83570c8869", kill_on_drop: false }` [INFO] [stderr] Checking apl v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/tokenizer.rs:243:9 [INFO] [stdout] | [INFO] [stdout] 243 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/tokenizer.rs:468:9 [INFO] [stdout] | [INFO] [stdout] 468 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/primitive.rs:57:38 [INFO] [stdout] | [INFO] [stdout] 57 | Integer(v) => Ok(Integer((-1 * *v))), [INFO] [stdout] | ^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/primitive.rs:58:34 [INFO] [stdout] | [INFO] [stdout] 58 | Float(v) => Ok(Float((-1.0 * *v))), [INFO] [stdout] | ^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/primitive.rs:227:9 [INFO] [stdout] | [INFO] [stdout] 227 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/object.rs:192:9 [INFO] [stdout] | [INFO] [stdout] 192 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/primitive.rs:57:38 [INFO] [stdout] | [INFO] [stdout] 57 | Integer(v) => Ok(Integer((-1 * *v))), [INFO] [stdout] | ^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/primitive.rs:58:34 [INFO] [stdout] | [INFO] [stdout] 58 | Float(v) => Ok(Float((-1.0 * *v))), [INFO] [stdout] | ^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Boolean` [INFO] [stdout] --> src/interpreter.rs:229:39 [INFO] [stdout] | [INFO] [stdout] 229 | use crate::primitive::Primitive::{Boolean, Float, Integer}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/builtin.rs:35:42 [INFO] [stdout] | [INFO] [stdout] 35 | Ok(Object::Primitive(Str(buf.trim_right_matches("\r\n").into()))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/primitive.rs:215:13 [INFO] [stdout] | [INFO] [stdout] 215 | (Float(left), Float(right)) => (left % (*right as f64)).into(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `o` [INFO] [stdout] --> src/parse.rs:98:17 [INFO] [stdout] | [INFO] [stdout] 98 | Err(o) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_o` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `left` [INFO] [stdout] --> src/primitive.rs:153:14 [INFO] [stdout] | [INFO] [stdout] 153 | (left, right) => (false).into(), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_left` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `right` [INFO] [stdout] --> src/primitive.rs:153:20 [INFO] [stdout] | [INFO] [stdout] 153 | (left, right) => (false).into(), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_right` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `NotIs` [INFO] [stdout] --> src/token.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | NotIs, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `init` [INFO] [stdout] --> src/tokenizer.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn init(source: &'a str) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `tokenizer_into_iterator` [INFO] [stdout] --> src/tokenizer.rs:223:4 [INFO] [stdout] | [INFO] [stdout] 223 | fn tokenizer_into_iterator<'a>(source: &'a str) -> impl Iterator + 'a { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `scan` [INFO] [stdout] --> src/tokenizer.rs:229:15 [INFO] [stdout] | [INFO] [stdout] 229 | pub(crate) fn scan(source: &str) -> Vec { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `In` [INFO] [stdout] --> src/ast.rs:67:5 [INFO] [stdout] | [INFO] [stdout] 67 | In, [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `NotIn` [INFO] [stdout] --> src/ast.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | NotIn, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Integer` [INFO] [stdout] --> src/ast.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | Integer { value: i64 }, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Float` [INFO] [stdout] --> src/ast.rs:90:5 [INFO] [stdout] | [INFO] [stdout] 90 | Float { value: f64 }, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Compare` [INFO] [stdout] --> src/ast.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / Compare { [INFO] [stdout] 102 | | a: Box, [INFO] [stdout] 103 | | op: Comparison, [INFO] [stdout] 104 | | b: Box, [INFO] [stdout] 105 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `BoolOp` [INFO] [stdout] --> src/ast.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 106 | / BoolOp { [INFO] [stdout] 107 | | a: Box, [INFO] [stdout] 108 | | op: BooleanOperation, [INFO] [stdout] 109 | | b: Box, [INFO] [stdout] 110 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `BinOp` [INFO] [stdout] --> src/ast.rs:111:5 [INFO] [stdout] | [INFO] [stdout] 111 | / BinOp { [INFO] [stdout] 112 | | a: Box, [INFO] [stdout] 113 | | op: Operator, [INFO] [stdout] 114 | | b: Box, [INFO] [stdout] 115 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `UnOp` [INFO] [stdout] --> src/ast.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | / UnOp { [INFO] [stdout] 117 | | op: UnaryOperation, [INFO] [stdout] 118 | | a: Box, [INFO] [stdout] 119 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Str` [INFO] [stdout] --> src/ast.rs:120:5 [INFO] [stdout] | [INFO] [stdout] 120 | / Str { [INFO] [stdout] 121 | | value: String, [INFO] [stdout] 122 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Num` [INFO] [stdout] --> src/ast.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 123 | / Num { [INFO] [stdout] 124 | | value: Number, [INFO] [stdout] 125 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `IfExpression` [INFO] [stdout] --> src/ast.rs:126:5 [INFO] [stdout] | [INFO] [stdout] 126 | / IfExpression { [INFO] [stdout] 127 | | test: Box, [INFO] [stdout] 128 | | body: Box, [INFO] [stdout] 129 | | orelse: Box, [INFO] [stdout] 130 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Call` [INFO] [stdout] --> src/ast.rs:131:5 [INFO] [stdout] | [INFO] [stdout] 131 | / Call { [INFO] [stdout] 132 | | function: Box, [INFO] [stdout] 133 | | args: Vec, [INFO] [stdout] 134 | | keywords: Vec, [INFO] [stdout] 135 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Identifier` [INFO] [stdout] --> src/ast.rs:136:5 [INFO] [stdout] | [INFO] [stdout] 136 | / Identifier { [INFO] [stdout] 137 | | name: String, [INFO] [stdout] 138 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `True` [INFO] [stdout] --> src/ast.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | True, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `False` [INFO] [stdout] --> src/ast.rs:140:5 [INFO] [stdout] | [INFO] [stdout] 140 | False, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `None` [INFO] [stdout] --> src/ast.rs:141:5 [INFO] [stdout] | [INFO] [stdout] 141 | None, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Break` [INFO] [stdout] --> src/ast.rs:154:5 [INFO] [stdout] | [INFO] [stdout] 154 | Break, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Continue` [INFO] [stdout] --> src/ast.rs:155:5 [INFO] [stdout] | [INFO] [stdout] 155 | Continue, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Pass` [INFO] [stdout] --> src/ast.rs:156:5 [INFO] [stdout] | [INFO] [stdout] 156 | Pass, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Return` [INFO] [stdout] --> src/ast.rs:157:5 [INFO] [stdout] | [INFO] [stdout] 157 | / Return { [INFO] [stdout] 158 | | value: Option>, [INFO] [stdout] 159 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Assert` [INFO] [stdout] --> src/ast.rs:160:5 [INFO] [stdout] | [INFO] [stdout] 160 | / Assert { [INFO] [stdout] 161 | | test: Expression, [INFO] [stdout] 162 | | msg: Option, [INFO] [stdout] 163 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Assign` [INFO] [stdout] --> src/ast.rs:164:5 [INFO] [stdout] | [INFO] [stdout] 164 | / Assign { [INFO] [stdout] 165 | | targets: Vec, [INFO] [stdout] 166 | | value: Expression, [INFO] [stdout] 167 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Expr` [INFO] [stdout] --> src/ast.rs:168:5 [INFO] [stdout] | [INFO] [stdout] 168 | / Expr { [INFO] [stdout] 169 | | expression: Expression, [INFO] [stdout] 170 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Program` [INFO] [stdout] --> src/ast.rs:175:5 [INFO] [stdout] | [INFO] [stdout] 175 | Program(Program), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Statement` [INFO] [stdout] --> src/ast.rs:176:5 [INFO] [stdout] | [INFO] [stdout] 176 | Statement(Statement), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Expression` [INFO] [stdout] --> src/ast.rs:177:5 [INFO] [stdout] | [INFO] [stdout] 177 | Expression(Expression), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Message` [INFO] [stdout] --> src/parse.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | Message(String), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Parser` [INFO] [stdout] --> src/parse.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct Parser { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `init` [INFO] [stdout] --> src/parse.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn init(tokens: Vec) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `parser` [INFO] [stdout] --> src/parse.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | fn parser(&mut self) -> Option { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `statements` [INFO] [stdout] --> src/parse.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 43 | fn statements(&mut self) -> Option> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `parse_assignment` [INFO] [stdout] --> src/parse.rs:95:8 [INFO] [stdout] | [INFO] [stdout] 95 | fn parse_assignment(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `expression` [INFO] [stdout] --> src/parse.rs:113:8 [INFO] [stdout] | [INFO] [stdout] 113 | fn expression(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `factor` [INFO] [stdout] --> src/parse.rs:173:8 [INFO] [stdout] | [INFO] [stdout] 173 | fn factor(&mut self) -> Option { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `parse_print` [INFO] [stdout] --> src/parse.rs:203:8 [INFO] [stdout] | [INFO] [stdout] 203 | fn parse_print(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `if_expression` [INFO] [stdout] --> src/parse.rs:226:8 [INFO] [stdout] | [INFO] [stdout] 226 | fn if_expression(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `identifier` [INFO] [stdout] --> src/parse.rs:245:8 [INFO] [stdout] | [INFO] [stdout] 245 | fn identifier(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `consume` [INFO] [stdout] --> src/parse.rs:263:8 [INFO] [stdout] | [INFO] [stdout] 263 | fn consume(&mut self, tok: &Token) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `current` [INFO] [stdout] --> src/parse.rs:273:8 [INFO] [stdout] | [INFO] [stdout] 273 | fn current(&self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `advance` [INFO] [stdout] --> src/parse.rs:277:8 [INFO] [stdout] | [INFO] [stdout] 277 | fn advance(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `peek` [INFO] [stdout] --> src/parse.rs:282:8 [INFO] [stdout] | [INFO] [stdout] 282 | fn peek(&mut self) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `expected` [INFO] [stdout] --> src/parse.rs:286:8 [INFO] [stdout] | [INFO] [stdout] 286 | fn expected(&self, tok: &Token) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `parse_program` [INFO] [stdout] --> src/parse.rs:295:8 [INFO] [stdout] | [INFO] [stdout] 295 | pub fn parse_program(source: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `init` [INFO] [stdout] --> src/tokens.rs:10:19 [INFO] [stdout] | [INFO] [stdout] 10 | pub(crate) fn init(data: Vec) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_empty` [INFO] [stdout] --> src/tokens.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `pos` [INFO] [stdout] --> src/tokens.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn pos(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `len` [INFO] [stdout] --> src/tokens.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `current` [INFO] [stdout] --> src/tokens.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn current(&self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `peek_ahead` [INFO] [stdout] --> src/tokens.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn peek_ahead(&self, pos: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `peek` [INFO] [stdout] --> src/tokens.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn peek(&self) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `advance` [INFO] [stdout] --> src/tokens.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | pub fn advance(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `next_token` [INFO] [stdout] --> src/tokens.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn next_token(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `InvalidOperation` [INFO] [stdout] --> src/error.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | InvalidOperation(OperatorError, Primitive, Option), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `InvalidType` [INFO] [stdout] --> src/error.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | InvalidType(OperatorError, Object, Option), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `OtherError` [INFO] [stdout] --> src/error.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | OtherError(String), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Message` [INFO] [stdout] --> src/error.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | Message(String), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Add` [INFO] [stdout] --> src/error.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | Add, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Sub` [INFO] [stdout] --> src/error.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | Sub, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Mul` [INFO] [stdout] --> src/error.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | Mul, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `IntDiv` [INFO] [stdout] --> src/error.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | IntDiv, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `RealDiv` [INFO] [stdout] --> src/error.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | RealDiv, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `UnarySub` [INFO] [stdout] --> src/error.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | UnarySub, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `UnaryPlus` [INFO] [stdout] --> src/error.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | UnaryPlus, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Negate` [INFO] [stdout] --> src/error.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | Negate, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `And` [INFO] [stdout] --> src/error.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | And, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Or` [INFO] [stdout] --> src/error.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | Or, [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `LessThan` [INFO] [stdout] --> src/error.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | LessThan, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `GreaterThan` [INFO] [stdout] --> src/error.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | GreaterThan, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `LessThanEqual` [INFO] [stdout] --> src/error.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | LessThanEqual, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `GreaterThanEqual` [INFO] [stdout] --> src/error.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | GreaterThanEqual, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Equal` [INFO] [stdout] --> src/error.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | Equal, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `NotEqual` [INFO] [stdout] --> src/error.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | NotEqual, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Is` [INFO] [stdout] --> src/error.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | Is, [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `NotIs` [INFO] [stdout] --> src/error.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | NotIs, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Module` [INFO] [stdout] --> src/error.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | Module, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias is never used: `Result` [INFO] [stdout] --> src/primitive.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | type Result = ::std::result::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `negate` [INFO] [stdout] --> src/primitive.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn negate(&self) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `minus` [INFO] [stdout] --> src/primitive.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn minus(&self) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `plus` [INFO] [stdout] --> src/primitive.rs:55:12 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn plus(&self) -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `and` [INFO] [stdout] --> src/primitive.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn and(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `or` [INFO] [stdout] --> src/primitive.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn or(&self, other: &Self) -> Result { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `eq` [INFO] [stdout] --> src/primitive.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn eq(&self, other: &Self) -> Result { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `not_eq` [INFO] [stdout] --> src/primitive.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 91 | pub fn not_eq(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `less_than` [INFO] [stdout] --> src/primitive.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn less_than(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `less_than_equal` [INFO] [stdout] --> src/primitive.rs:114:12 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn less_than_equal(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `greater_than` [INFO] [stdout] --> src/primitive.rs:125:12 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn greater_than(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `greater_than_equal` [INFO] [stdout] --> src/primitive.rs:136:12 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn greater_than_equal(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is` [INFO] [stdout] --> src/primitive.rs:147:12 [INFO] [stdout] | [INFO] [stdout] 147 | pub fn is(&self, other: &Self) -> Result { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `add` [INFO] [stdout] --> src/primitive.rs:158:12 [INFO] [stdout] | [INFO] [stdout] 158 | pub fn add(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sub` [INFO] [stdout] --> src/primitive.rs:169:12 [INFO] [stdout] | [INFO] [stdout] 169 | pub fn sub(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mul` [INFO] [stdout] --> src/primitive.rs:180:12 [INFO] [stdout] | [INFO] [stdout] 180 | pub fn mul(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `real_div` [INFO] [stdout] --> src/primitive.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 191 | pub fn real_div(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `int_div` [INFO] [stdout] --> src/primitive.rs:202:12 [INFO] [stdout] | [INFO] [stdout] 202 | pub fn int_div(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `module` [INFO] [stdout] --> src/primitive.rs:210:12 [INFO] [stdout] | [INFO] [stdout] 210 | pub fn module(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `error` [INFO] [stdout] --> src/primitive.rs:221:8 [INFO] [stdout] | [INFO] [stdout] 221 | fn error(left: &Self, right: Option<&Self>, op: OperatorError) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias is never used: `Result` [INFO] [stdout] --> src/interpreter.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | type Result = ::std::result::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `init` [INFO] [stdout] --> src/interpreter.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn init() -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `eval` [INFO] [stdout] --> src/interpreter.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn eval(&self, program: Program) -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `visit_program` [INFO] [stdout] --> src/interpreter.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | fn visit_program(&self, program: Program) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `visit_statement` [INFO] [stdout] --> src/interpreter.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | fn visit_statement(&self, statement: Statement) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `visit_expression` [INFO] [stdout] --> src/interpreter.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | fn visit_expression(&self, expression: Expression) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Builtin` [INFO] [stdout] --> src/object.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | Builtin(Builtin), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Unit` [INFO] [stdout] --> src/object.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | Unit, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Print` [INFO] [stdout] --> src/object.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | Print(fn(Object) -> Result), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Input` [INFO] [stdout] --> src/object.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | Input(fn() -> Result), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `negate` [INFO] [stdout] --> src/object.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | pub fn negate(&self) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `unary_plus` [INFO] [stdout] --> src/object.rs:67:12 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn unary_plus(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `unary_minus` [INFO] [stdout] --> src/object.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 74 | pub fn unary_minus(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `add` [INFO] [stdout] --> src/object.rs:81:12 [INFO] [stdout] | [INFO] [stdout] 81 | pub fn add(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `subtract` [INFO] [stdout] --> src/object.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn subtract(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `multiply` [INFO] [stdout] --> src/object.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | pub fn multiply(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `int_divide` [INFO] [stdout] --> src/object.rs:102:12 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn int_divide(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `real_divide` [INFO] [stdout] --> src/object.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn real_divide(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `module` [INFO] [stdout] --> src/object.rs:116:12 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn module(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `and` [INFO] [stdout] --> src/object.rs:123:12 [INFO] [stdout] | [INFO] [stdout] 123 | pub fn and(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `or` [INFO] [stdout] --> src/object.rs:130:12 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn or(&self, other: &Self) -> Result { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is` [INFO] [stdout] --> src/object.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn is(&self, other: &Self) -> Result { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `less_than` [INFO] [stdout] --> src/object.rs:144:12 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn less_than(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `greater_than` [INFO] [stdout] --> src/object.rs:151:12 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn greater_than(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `less_than_equal` [INFO] [stdout] --> src/object.rs:158:12 [INFO] [stdout] | [INFO] [stdout] 158 | pub fn less_than_equal(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `greater_than_equal` [INFO] [stdout] --> src/object.rs:165:12 [INFO] [stdout] | [INFO] [stdout] 165 | pub fn greater_than_equal(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `equal` [INFO] [stdout] --> src/object.rs:172:12 [INFO] [stdout] | [INFO] [stdout] 172 | pub fn equal(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `not_equal` [INFO] [stdout] --> src/object.rs:179:12 [INFO] [stdout] | [INFO] [stdout] 179 | pub fn not_equal(&self, other: &Self) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `error` [INFO] [stdout] --> src/object.rs:186:8 [INFO] [stdout] | [INFO] [stdout] 186 | fn error(&self, right: Option<&Self>, op: OperatorError) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias is never used: `Result` [INFO] [stdout] --> src/builtin.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | type Result = ::std::result::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `print` [INFO] [stdout] --> src/builtin.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | pub(crate) fn print(data: Object) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `input` [INFO] [stdout] --> src/builtin.rs:25:15 [INFO] [stdout] | [INFO] [stdout] 25 | pub(crate) fn input() -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 142 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/builtin.rs:35:42 [INFO] [stdout] | [INFO] [stdout] 35 | Ok(Object::Primitive(Str(buf.trim_right_matches("\r\n").into()))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/primitive.rs:215:13 [INFO] [stdout] | [INFO] [stdout] 215 | (Float(left), Float(right)) => (left % (*right as f64)).into(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `o` [INFO] [stdout] --> src/parse.rs:98:17 [INFO] [stdout] | [INFO] [stdout] 98 | Err(o) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_o` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `left` [INFO] [stdout] --> src/primitive.rs:153:14 [INFO] [stdout] | [INFO] [stdout] 153 | (left, right) => (false).into(), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_left` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `right` [INFO] [stdout] --> src/primitive.rs:153:20 [INFO] [stdout] | [INFO] [stdout] 153 | (left, right) => (false).into(), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_right` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 112 | let mut parser_ast = parse_program(r#"1 == 0"#); [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: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:120:13 [INFO] [stdout] | [INFO] [stdout] 120 | let mut parser_ast = parse_program(r#"1 != 0"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:128:13 [INFO] [stdout] | [INFO] [stdout] 128 | let mut parser_ast = parse_program(r#"1 > 0"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:136:13 [INFO] [stdout] | [INFO] [stdout] 136 | let mut parser_ast = parse_program(r#"1 < 0"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | let mut parser_ast = parse_program(r#"1 >= 0"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:152:13 [INFO] [stdout] | [INFO] [stdout] 152 | let mut parser_ast = parse_program(r#"1 <= 0"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:160:13 [INFO] [stdout] | [INFO] [stdout] 160 | let mut parser_ast = parse_program(r#"1 é 0"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:176:13 [INFO] [stdout] | [INFO] [stdout] 176 | let mut parser_ast = parse_program(r#"Verdadeiro e Verdadeiro"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:184:13 [INFO] [stdout] | [INFO] [stdout] 184 | let mut parser_ast = parse_program(r#"Verdadeiro e Verdadeiro"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:200:13 [INFO] [stdout] | [INFO] [stdout] 200 | let mut parser_ast = parse_program(r#"nao Falso"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:208:13 [INFO] [stdout] | [INFO] [stdout] 208 | let mut parser_ast = parse_program(r#"-1"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:217:13 [INFO] [stdout] | [INFO] [stdout] 217 | let mut parser_ast = parse_program(r#"1"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:233:13 [INFO] [stdout] | [INFO] [stdout] 233 | let mut parser_ast = parse_program(r#"9 + 3"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:241:13 [INFO] [stdout] | [INFO] [stdout] 241 | let mut parser_ast = parse_program(r#"9 - 3"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:249:13 [INFO] [stdout] | [INFO] [stdout] 249 | let mut parser_ast = parse_program(r#"9 * 3"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:257:13 [INFO] [stdout] | [INFO] [stdout] 257 | let mut parser_ast = parse_program(r#"9 / 3"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/interpreter.rs:265:13 [INFO] [stdout] | [INFO] [stdout] 265 | let mut parser_ast = parse_program(r#"9 % 3"#); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `NotIs` [INFO] [stdout] --> src/token.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | NotIs, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `In` [INFO] [stdout] --> src/ast.rs:67:5 [INFO] [stdout] | [INFO] [stdout] 67 | In, [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `NotIn` [INFO] [stdout] --> src/ast.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | NotIn, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Continue` [INFO] [stdout] --> src/ast.rs:155:5 [INFO] [stdout] | [INFO] [stdout] 155 | Continue, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Program` [INFO] [stdout] --> src/ast.rs:175:5 [INFO] [stdout] | [INFO] [stdout] 175 | Program(Program), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Statement` [INFO] [stdout] --> src/ast.rs:176:5 [INFO] [stdout] | [INFO] [stdout] 176 | Statement(Statement), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Expression` [INFO] [stdout] --> src/ast.rs:177:5 [INFO] [stdout] | [INFO] [stdout] 177 | Expression(Expression), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_empty` [INFO] [stdout] --> src/tokens.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `len` [INFO] [stdout] --> src/tokens.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `next_token` [INFO] [stdout] --> src/tokens.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn next_token(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Message` [INFO] [stdout] --> src/error.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | Message(String), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `NotIs` [INFO] [stdout] --> src/error.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | NotIs, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Builtin` [INFO] [stdout] --> src/object.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | Builtin(Builtin), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Print` [INFO] [stdout] --> src/object.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | Print(fn(Object) -> Result), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Input` [INFO] [stdout] --> src/object.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | Input(fn() -> Result), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias is never used: `Result` [INFO] [stdout] --> src/builtin.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | type Result = ::std::result::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `print` [INFO] [stdout] --> src/builtin.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | pub(crate) fn print(data: Object) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `input` [INFO] [stdout] --> src/builtin.rs:25:15 [INFO] [stdout] | [INFO] [stdout] 25 | pub(crate) fn input() -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 43 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.95s [INFO] running `Command { std: "docker" "inspect" "26b3e71d52c9c7ef62367bd56516287af7da80fdd1df56805216cb83570c8869", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "26b3e71d52c9c7ef62367bd56516287af7da80fdd1df56805216cb83570c8869", kill_on_drop: false }` [INFO] [stdout] 26b3e71d52c9c7ef62367bd56516287af7da80fdd1df56805216cb83570c8869