[INFO] updating cached repository https://github.com/blajzer/BLSL [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] [stderr] From https://github.com/blajzer/BLSL [INFO] [stderr] f526415..fedc065 master -> master [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] fedc06579ad6d6b9cbdcfebeb8120121732dccb4 [INFO] checking blajzer/BLSL against master#0cbcb17d3306d6e22eafc2c05ce885db97d0189c for pr-68746 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fblajzer%2FBLSL" "/workspace/builds/worker-2/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/blajzer/BLSL on toolchain 0cbcb17d3306d6e22eafc2c05ce885db97d0189c [INFO] running `"/workspace/cargo-home/bin/cargo" "+0cbcb17d3306d6e22eafc2c05ce885db97d0189c" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/blajzer/BLSL [INFO] finished tweaking git repo https://github.com/blajzer/BLSL [INFO] tweaked toml for git repo https://github.com/blajzer/BLSL written to /workspace/builds/worker-2/source/Cargo.toml [INFO] crate git repo https://github.com/blajzer/BLSL already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+0cbcb17d3306d6e22eafc2c05ce885db97d0189c" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "MAP_USER_ID=0" "-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" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+0cbcb17d3306d6e22eafc2c05ce885db97d0189c" "check" "--frozen" "--all" "--all-targets"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 77215a9d23939a5fdc3898aee664e7e19e09a7a8d1a8357e8d15547bbe261f56 [INFO] running `"docker" "start" "-a" "77215a9d23939a5fdc3898aee664e7e19e09a7a8d1a8357e8d15547bbe261f56"` [INFO] [stderr] Checking nom_locate v1.0.0 [INFO] [stderr] Checking blslang v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `super::parser::types::*` [INFO] [stderr] --> src/builtin.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use super::parser::types::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `char`, `many0`, `map`, `value` [INFO] [stderr] --> src/parser/definition.rs:15:24 [INFO] [stderr] | [INFO] [stderr] 15 | character::complete::{char, multispace0}, [INFO] [stderr] | ^^^^ [INFO] [stderr] 16 | combinator::{cut, map, opt, value}, [INFO] [stderr] | ^^^ ^^^^^ [INFO] [stderr] 17 | multi::{many0, separated_list}, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `map` [INFO] [stderr] --> src/parser/statement.rs:16:20 [INFO] [stderr] | [INFO] [stderr] 16 | combinator::{cut, map, opt, value}, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `parser::expression_to_string` [INFO] [stderr] --> src/main.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use parser::expression_to_string; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `parser::expr::parse_expression` [INFO] [stderr] --> src/main.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use parser::expr::parse_expression; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `parser::statement::parse_statement` [INFO] [stderr] --> src/main.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use parser::statement::parse_statement; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `AssignmentOperator` [INFO] [stderr] --> src/validator/mod.rs:11:28 [INFO] [stderr] | [INFO] [stderr] 11 | use super::parser::types::{AssignmentOperator, BinaryOperator, Expr, Literal, Statement, TypeDecl, UnaryOperator}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `IResult`, `error::VerboseErrorKind` [INFO] [stderr] --> src/main.rs:24:2 [INFO] [stderr] | [INFO] [stderr] 24 | IResult, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 25 | error::VerboseErrorKind [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::parser::types::*` [INFO] [stderr] --> src/builtin.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use super::parser::types::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `char`, `many0`, `map`, `value` [INFO] [stderr] --> src/parser/definition.rs:15:24 [INFO] [stderr] | [INFO] [stderr] 15 | character::complete::{char, multispace0}, [INFO] [stderr] | ^^^^ [INFO] [stderr] 16 | combinator::{cut, map, opt, value}, [INFO] [stderr] | ^^^ ^^^^^ [INFO] [stderr] 17 | multi::{many0, separated_list}, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `map` [INFO] [stderr] --> src/parser/statement.rs:16:20 [INFO] [stderr] | [INFO] [stderr] 16 | combinator::{cut, map, opt, value}, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::definition::*` [INFO] [stderr] --> src/parser/tests.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use super::definition::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::statement::*` [INFO] [stderr] --> src/parser/tests.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use super::statement::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `parser::expression_to_string` [INFO] [stderr] --> src/main.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use parser::expression_to_string; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `parser::expr::parse_expression` [INFO] [stderr] --> src/main.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use parser::expr::parse_expression; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `parser::statement::parse_statement` [INFO] [stderr] --> src/main.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use parser::statement::parse_statement; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `AssignmentOperator` [INFO] [stderr] --> src/validator/mod.rs:11:28 [INFO] [stderr] | [INFO] [stderr] 11 | use super::parser::types::{AssignmentOperator, BinaryOperator, Expr, Literal, Statement, TypeDecl, UnaryOperator}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `IResult`, `error::VerboseErrorKind` [INFO] [stderr] --> src/main.rs:24:2 [INFO] [stderr] | [INFO] [stderr] 24 | IResult, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 25 | error::VerboseErrorKind [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `Add` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:188:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | ^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::Add` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bindings_with_variant_name)]` on by default [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `Subtract` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:189:5 [INFO] [stderr] | [INFO] [stderr] 189 | Subtract => "subtract", [INFO] [stderr] | ^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::Subtract` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `Multiply` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:190:5 [INFO] [stderr] | [INFO] [stderr] 190 | Multiply => "multiply", [INFO] [stderr] | ^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::Multiply` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `Divide` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:191:5 [INFO] [stderr] | [INFO] [stderr] 191 | Divide => "divide", [INFO] [stderr] | ^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::Divide` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `Modulus` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:192:5 [INFO] [stderr] | [INFO] [stderr] 192 | Modulus => "modulus", [INFO] [stderr] | ^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::Modulus` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `And` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:193:5 [INFO] [stderr] | [INFO] [stderr] 193 | And => "and", [INFO] [stderr] | ^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::And` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `Or` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 194 | Or => "or", [INFO] [stderr] | ^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::Or` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `BitAnd` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:195:5 [INFO] [stderr] | [INFO] [stderr] 195 | BitAnd => "bitwise and", [INFO] [stderr] | ^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::BitAnd` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `BitOr` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:196:5 [INFO] [stderr] | [INFO] [stderr] 196 | BitOr => "bitwise or", [INFO] [stderr] | ^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::BitOr` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `BitXor` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:197:5 [INFO] [stderr] | [INFO] [stderr] 197 | BitXor => "bitwise exclusive-or", [INFO] [stderr] | ^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::BitXor` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `BitShiftLeft` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:198:5 [INFO] [stderr] | [INFO] [stderr] 198 | BitShiftLeft => "bit shift left", [INFO] [stderr] | ^^^^^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::BitShiftLeft` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `BitShiftRight` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:199:5 [INFO] [stderr] | [INFO] [stderr] 199 | BitShiftRight => "bit shift right", [INFO] [stderr] | ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::BitShiftRight` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `Equal` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:200:5 [INFO] [stderr] | [INFO] [stderr] 200 | Equal => "equal", [INFO] [stderr] | ^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::Equal` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `NotEqual` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:201:5 [INFO] [stderr] | [INFO] [stderr] 201 | NotEqual => "not equal", [INFO] [stderr] | ^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::NotEqual` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `LessThan` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:202:5 [INFO] [stderr] | [INFO] [stderr] 202 | LessThan => "less than", [INFO] [stderr] | ^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::LessThan` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `LessThanEqual` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:203:5 [INFO] [stderr] | [INFO] [stderr] 203 | LessThanEqual => "less than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::LessThanEqual` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `GreaterThan` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:204:5 [INFO] [stderr] | [INFO] [stderr] 204 | GreaterThan => "greater than", [INFO] [stderr] | ^^^^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::GreaterThan` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `GreaterThanEqual` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:205:5 [INFO] [stderr] | [INFO] [stderr] 205 | GreaterThanEqual => "greater than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::GreaterThanEqual` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `MemberAccess` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:206:5 [INFO] [stderr] | [INFO] [stderr] 206 | MemberAccess => "member access", [INFO] [stderr] | ^^^^^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::MemberAccess` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `ArrayAccess` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:207:5 [INFO] [stderr] | [INFO] [stderr] 207 | ArrayAccess => "array access" [INFO] [stderr] | ^^^^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::ArrayAccess` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:189:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] 189 | Subtract => "subtract", [INFO] [stderr] | ^^^^^^^^ unreachable pattern [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:190:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] 189 | Subtract => "subtract", [INFO] [stderr] 190 | Multiply => "multiply", [INFO] [stderr] | ^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:191:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 191 | Divide => "divide", [INFO] [stderr] | ^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:192:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 192 | Modulus => "modulus", [INFO] [stderr] | ^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:193:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 193 | And => "and", [INFO] [stderr] | ^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 194 | Or => "or", [INFO] [stderr] | ^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:195:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 195 | BitAnd => "bitwise and", [INFO] [stderr] | ^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:196:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 196 | BitOr => "bitwise or", [INFO] [stderr] | ^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:197:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 197 | BitXor => "bitwise exclusive-or", [INFO] [stderr] | ^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:198:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 198 | BitShiftLeft => "bit shift left", [INFO] [stderr] | ^^^^^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:199:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 199 | BitShiftRight => "bit shift right", [INFO] [stderr] | ^^^^^^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:200:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 200 | Equal => "equal", [INFO] [stderr] | ^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:201:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 201 | NotEqual => "not equal", [INFO] [stderr] | ^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:202:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 202 | LessThan => "less than", [INFO] [stderr] | ^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:203:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 203 | LessThanEqual => "less than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:204:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 204 | GreaterThan => "greater than", [INFO] [stderr] | ^^^^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:205:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 205 | GreaterThanEqual => "greater than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:206:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 206 | MemberAccess => "member access", [INFO] [stderr] | ^^^^^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:207:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 207 | ArrayAccess => "array access" [INFO] [stderr] | ^^^^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unused variable: `Add` [INFO] [stderr] --> src/parser/types.rs:188:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_Add` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `Subtract` [INFO] [stderr] --> src/parser/types.rs:189:5 [INFO] [stderr] | [INFO] [stderr] 189 | Subtract => "subtract", [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_Subtract` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `Multiply` [INFO] [stderr] --> src/parser/types.rs:190:5 [INFO] [stderr] | [INFO] [stderr] 190 | Multiply => "multiply", [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_Multiply` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `Divide` [INFO] [stderr] --> src/parser/types.rs:191:5 [INFO] [stderr] | [INFO] [stderr] 191 | Divide => "divide", [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_Divide` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `Modulus` [INFO] [stderr] --> src/parser/types.rs:192:5 [INFO] [stderr] | [INFO] [stderr] 192 | Modulus => "modulus", [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_Modulus` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `And` [INFO] [stderr] --> src/parser/types.rs:193:5 [INFO] [stderr] | [INFO] [stderr] 193 | And => "and", [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_And` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `Or` [INFO] [stderr] --> src/parser/types.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 194 | Or => "or", [INFO] [stderr] | ^^ help: consider prefixing with an underscore: `_Or` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `BitAnd` [INFO] [stderr] --> src/parser/types.rs:195:5 [INFO] [stderr] | [INFO] [stderr] 195 | BitAnd => "bitwise and", [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_BitAnd` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `BitOr` [INFO] [stderr] --> src/parser/types.rs:196:5 [INFO] [stderr] | [INFO] [stderr] 196 | BitOr => "bitwise or", [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_BitOr` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `BitXor` [INFO] [stderr] --> src/parser/types.rs:197:5 [INFO] [stderr] | [INFO] [stderr] 197 | BitXor => "bitwise exclusive-or", [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_BitXor` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `BitShiftLeft` [INFO] [stderr] --> src/parser/types.rs:198:5 [INFO] [stderr] | [INFO] [stderr] 198 | BitShiftLeft => "bit shift left", [INFO] [stderr] | ^^^^^^^^^^^^ help: consider prefixing with an underscore: `_BitShiftLeft` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `BitShiftRight` [INFO] [stderr] --> src/parser/types.rs:199:5 [INFO] [stderr] | [INFO] [stderr] 199 | BitShiftRight => "bit shift right", [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_BitShiftRight` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `Equal` [INFO] [stderr] --> src/parser/types.rs:200:5 [INFO] [stderr] | [INFO] [stderr] 200 | Equal => "equal", [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_Equal` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `NotEqual` [INFO] [stderr] --> src/parser/types.rs:201:5 [INFO] [stderr] | [INFO] [stderr] 201 | NotEqual => "not equal", [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_NotEqual` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `LessThan` [INFO] [stderr] --> src/parser/types.rs:202:5 [INFO] [stderr] | [INFO] [stderr] 202 | LessThan => "less than", [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_LessThan` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `LessThanEqual` [INFO] [stderr] --> src/parser/types.rs:203:5 [INFO] [stderr] | [INFO] [stderr] 203 | LessThanEqual => "less than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_LessThanEqual` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `GreaterThan` [INFO] [stderr] --> src/parser/types.rs:204:5 [INFO] [stderr] | [INFO] [stderr] 204 | GreaterThan => "greater than", [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_GreaterThan` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `GreaterThanEqual` [INFO] [stderr] --> src/parser/types.rs:205:5 [INFO] [stderr] | [INFO] [stderr] 205 | GreaterThanEqual => "greater than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_GreaterThanEqual` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `MemberAccess` [INFO] [stderr] --> src/parser/types.rs:206:5 [INFO] [stderr] | [INFO] [stderr] 206 | MemberAccess => "member access", [INFO] [stderr] | ^^^^^^^^^^^^ help: consider prefixing with an underscore: `_MemberAccess` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ArrayAccess` [INFO] [stderr] --> src/parser/types.rs:207:5 [INFO] [stderr] | [INFO] [stderr] 207 | ArrayAccess => "array access" [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_ArrayAccess` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `t` [INFO] [stderr] --> src/validator/mod.rs:60:25 [INFO] [stderr] | [INFO] [stderr] 60 | fn resolve_type(&self, t: types::Type) -> Option { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_t` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `decl` [INFO] [stderr] --> src/validator/mod.rs:93:38 [INFO] [stderr] | [INFO] [stderr] 93 | fn resolve_type_decl<'b>(&mut self, decl: &TypeDecl<'b>) -> Result> { [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_decl` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `v` [INFO] [stderr] --> src/validator/mod.rs:100:16 [INFO] [stderr] | [INFO] [stderr] 100 | if let Some(v) = scope.variables.iter().find(|v| v.name == name) { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_v` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rhs` [INFO] [stderr] --> src/validator/mod.rs:367:37 [INFO] [stderr] | [INFO] [stderr] 367 | Expr::BinaryExpr { pos, op, lhs, rhs } => { [INFO] [stderr] | ^^^ help: try ignoring the field: `rhs: _` [INFO] [stderr] [INFO] [stderr] warning: field is never read: `scopes` [INFO] [stderr] --> src/validator/mod.rs:16:2 [INFO] [stderr] | [INFO] [stderr] 16 | scopes: Vec [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field is never read: `name` [INFO] [stderr] --> src/validator/mod.rs:20:2 [INFO] [stderr] | [INFO] [stderr] 20 | name: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `path` [INFO] [stderr] --> src/validator/mod.rs:21:2 [INFO] [stderr] | [INFO] [stderr] 21 | path: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `type_offset` [INFO] [stderr] --> src/validator/mod.rs:22:2 [INFO] [stderr] | [INFO] [stderr] 22 | type_offset: usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `variables` [INFO] [stderr] --> src/validator/mod.rs:26:2 [INFO] [stderr] | [INFO] [stderr] 26 | variables: Vec [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `name` [INFO] [stderr] --> src/validator/mod.rs:30:2 [INFO] [stderr] | [INFO] [stderr] 30 | name: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `type_index` [INFO] [stderr] --> src/validator/mod.rs:31:2 [INFO] [stderr] | [INFO] [stderr] 31 | type_index: usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `find_or_add_type` [INFO] [stderr] --> src/validator/mod.rs:51:2 [INFO] [stderr] | [INFO] [stderr] 51 | fn find_or_add_type(&mut self, t: types::Type) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `resolve_type` [INFO] [stderr] --> src/validator/mod.rs:60:2 [INFO] [stderr] | [INFO] [stderr] 60 | fn resolve_type(&self, t: types::Type) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_base_type` [INFO] [stderr] --> src/validator/mod.rs:64:2 [INFO] [stderr] | [INFO] [stderr] 64 | fn get_base_type(&self, t: usize) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_qualified_base_type` [INFO] [stderr] --> src/validator/mod.rs:74:2 [INFO] [stderr] | [INFO] [stderr] 74 | fn get_qualified_base_type(&self, t: usize) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_variable_type` [INFO] [stderr] --> src/validator/mod.rs:82:2 [INFO] [stderr] | [INFO] [stderr] 82 | fn get_variable_type<'b>(&self, name: &str, pos: &SourcePos<'b>) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `resolve_type_decl` [INFO] [stderr] --> src/validator/mod.rs:93:2 [INFO] [stderr] | [INFO] [stderr] 93 | fn resolve_type_decl<'b>(&mut self, decl: &TypeDecl<'b>) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `add_variable_to_current_scope` [INFO] [stderr] --> src/validator/mod.rs:98:2 [INFO] [stderr] | [INFO] [stderr] 98 | fn add_variable_to_current_scope<'b>(&mut self, name: &str, type_index: usize, pos: &SourcePos<'b>) -> Result<(), types::ValidateError<'b>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `find_function_type` [INFO] [stderr] --> src/validator/mod.rs:112:2 [INFO] [stderr] | [INFO] [stderr] 112 | fn find_function_type<'b>(&self, source_pos: SourcePos<'b>, func_name: &str, args: &Vec) -> Result<(usize, usize), types::ValidateError<'b>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `validate_vector_swizzle` [INFO] [stderr] --> src/validator/mod.rs:144:2 [INFO] [stderr] | [INFO] [stderr] 144 | fn validate_vector_swizzle<'b>(&mut self, expr: types::Expr<'b>, source_pos: SourcePos<'b>, dim: usize, base_type_index: usize, swizzle: &str) -> Result, types::ValidateError<'b>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `validate_expr` [INFO] [stderr] --> src/validator/mod.rs:189:2 [INFO] [stderr] | [INFO] [stderr] 189 | fn validate_expr<'b>(&mut self, file: &'b str, expr: super::parser::types::Expr<'b>) -> Result, types::ValidateError<'b>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `validate_lvalue` [INFO] [stderr] --> src/validator/mod.rs:365:2 [INFO] [stderr] | [INFO] [stderr] 365 | fn validate_lvalue<'b>(&self, file: &'b str, lhs: &super::parser::types::Expr<'b>) -> Result<(), types::ValidateError<'b>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `validate_statement` [INFO] [stderr] --> src/validator/mod.rs:394:2 [INFO] [stderr] | [INFO] [stderr] 394 | fn validate_statement<'b>(&mut self, file: &'b str, statement: super::parser::types::Statement<'b>, is_loop: bool, return_type: usize) -> Result, types::ValidateError<'b>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `Add` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:188:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | ^^^ help: convert the identifier to snake case: `add` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable `Subtract` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:189:5 [INFO] [stderr] | [INFO] [stderr] 189 | Subtract => "subtract", [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `subtract` [INFO] [stderr] [INFO] [stderr] warning: variable `Multiply` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:190:5 [INFO] [stderr] | [INFO] [stderr] 190 | Multiply => "multiply", [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `multiply` [INFO] [stderr] [INFO] [stderr] warning: variable `Divide` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:191:5 [INFO] [stderr] | [INFO] [stderr] 191 | Divide => "divide", [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `divide` [INFO] [stderr] [INFO] [stderr] warning: variable `Modulus` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:192:5 [INFO] [stderr] | [INFO] [stderr] 192 | Modulus => "modulus", [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `modulus` [INFO] [stderr] [INFO] [stderr] warning: variable `And` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:193:5 [INFO] [stderr] | [INFO] [stderr] 193 | And => "and", [INFO] [stderr] | ^^^ help: convert the identifier to snake case: `and` [INFO] [stderr] [INFO] [stderr] warning: variable `Or` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 194 | Or => "or", [INFO] [stderr] | ^^ help: convert the identifier to snake case (notice the capitalization): `or` [INFO] [stderr] [INFO] [stderr] warning: variable `BitAnd` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:195:5 [INFO] [stderr] | [INFO] [stderr] 195 | BitAnd => "bitwise and", [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `bit_and` [INFO] [stderr] [INFO] [stderr] warning: variable `BitOr` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:196:5 [INFO] [stderr] | [INFO] [stderr] 196 | BitOr => "bitwise or", [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `bit_or` [INFO] [stderr] [INFO] [stderr] warning: variable `BitXor` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:197:5 [INFO] [stderr] | [INFO] [stderr] 197 | BitXor => "bitwise exclusive-or", [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `bit_xor` [INFO] [stderr] [INFO] [stderr] warning: variable `BitShiftLeft` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:198:5 [INFO] [stderr] | [INFO] [stderr] 198 | BitShiftLeft => "bit shift left", [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `bit_shift_left` [INFO] [stderr] [INFO] [stderr] warning: variable `BitShiftRight` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:199:5 [INFO] [stderr] | [INFO] [stderr] 199 | BitShiftRight => "bit shift right", [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `bit_shift_right` [INFO] [stderr] [INFO] [stderr] warning: variable `Equal` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:200:5 [INFO] [stderr] | [INFO] [stderr] 200 | Equal => "equal", [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `equal` [INFO] [stderr] [INFO] [stderr] warning: variable `NotEqual` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:201:5 [INFO] [stderr] | [INFO] [stderr] 201 | NotEqual => "not equal", [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `not_equal` [INFO] [stderr] [INFO] [stderr] warning: variable `LessThan` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:202:5 [INFO] [stderr] | [INFO] [stderr] 202 | LessThan => "less than", [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `less_than` [INFO] [stderr] [INFO] [stderr] warning: variable `LessThanEqual` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:203:5 [INFO] [stderr] | [INFO] [stderr] 203 | LessThanEqual => "less than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `less_than_equal` [INFO] [stderr] [INFO] [stderr] warning: variable `GreaterThan` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:204:5 [INFO] [stderr] | [INFO] [stderr] 204 | GreaterThan => "greater than", [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `greater_than` [INFO] [stderr] [INFO] [stderr] warning: variable `GreaterThanEqual` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:205:5 [INFO] [stderr] | [INFO] [stderr] 205 | GreaterThanEqual => "greater than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `greater_than_equal` [INFO] [stderr] [INFO] [stderr] warning: variable `MemberAccess` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:206:5 [INFO] [stderr] | [INFO] [stderr] 206 | MemberAccess => "member access", [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `member_access` [INFO] [stderr] [INFO] [stderr] warning: variable `ArrayAccess` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:207:5 [INFO] [stderr] | [INFO] [stderr] 207 | ArrayAccess => "array access" [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `array_access` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `Add` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:188:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | ^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::Add` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bindings_with_variant_name)]` on by default [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `Subtract` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:189:5 [INFO] [stderr] | [INFO] [stderr] 189 | Subtract => "subtract", [INFO] [stderr] | ^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::Subtract` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `Multiply` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:190:5 [INFO] [stderr] | [INFO] [stderr] 190 | Multiply => "multiply", [INFO] [stderr] | ^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::Multiply` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `Divide` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:191:5 [INFO] [stderr] | [INFO] [stderr] 191 | Divide => "divide", [INFO] [stderr] | ^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::Divide` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `Modulus` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:192:5 [INFO] [stderr] | [INFO] [stderr] 192 | Modulus => "modulus", [INFO] [stderr] | ^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::Modulus` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `And` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:193:5 [INFO] [stderr] | [INFO] [stderr] 193 | And => "and", [INFO] [stderr] | ^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::And` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `Or` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 194 | Or => "or", [INFO] [stderr] | ^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::Or` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `BitAnd` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:195:5 [INFO] [stderr] | [INFO] [stderr] 195 | BitAnd => "bitwise and", [INFO] [stderr] | ^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::BitAnd` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `BitOr` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:196:5 [INFO] [stderr] | [INFO] [stderr] 196 | BitOr => "bitwise or", [INFO] [stderr] | ^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::BitOr` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `BitXor` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:197:5 [INFO] [stderr] | [INFO] [stderr] 197 | BitXor => "bitwise exclusive-or", [INFO] [stderr] | ^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::BitXor` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `BitShiftLeft` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:198:5 [INFO] [stderr] | [INFO] [stderr] 198 | BitShiftLeft => "bit shift left", [INFO] [stderr] | ^^^^^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::BitShiftLeft` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `BitShiftRight` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:199:5 [INFO] [stderr] | [INFO] [stderr] 199 | BitShiftRight => "bit shift right", [INFO] [stderr] | ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::BitShiftRight` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `Equal` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:200:5 [INFO] [stderr] | [INFO] [stderr] 200 | Equal => "equal", [INFO] [stderr] | ^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::Equal` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `NotEqual` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:201:5 [INFO] [stderr] | [INFO] [stderr] 201 | NotEqual => "not equal", [INFO] [stderr] | ^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::NotEqual` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `LessThan` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:202:5 [INFO] [stderr] | [INFO] [stderr] 202 | LessThan => "less than", [INFO] [stderr] | ^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::LessThan` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `LessThanEqual` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:203:5 [INFO] [stderr] | [INFO] [stderr] 203 | LessThanEqual => "less than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::LessThanEqual` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `GreaterThan` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:204:5 [INFO] [stderr] | [INFO] [stderr] 204 | GreaterThan => "greater than", [INFO] [stderr] | ^^^^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::GreaterThan` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `GreaterThanEqual` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:205:5 [INFO] [stderr] | [INFO] [stderr] 205 | GreaterThanEqual => "greater than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::GreaterThanEqual` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `MemberAccess` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:206:5 [INFO] [stderr] | [INFO] [stderr] 206 | MemberAccess => "member access", [INFO] [stderr] | ^^^^^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::MemberAccess` [INFO] [stderr] [INFO] [stderr] warning[E0170]: pattern binding `ArrayAccess` is named the same as one of the variants of the type `parser::types::BinaryOperator` [INFO] [stderr] --> src/parser/types.rs:207:5 [INFO] [stderr] | [INFO] [stderr] 207 | ArrayAccess => "array access" [INFO] [stderr] | ^^^^^^^^^^^ help: to match on the variant, qualify the path: `parser::types::BinaryOperator::ArrayAccess` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:189:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] 189 | Subtract => "subtract", [INFO] [stderr] | ^^^^^^^^ unreachable pattern [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:190:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] 189 | Subtract => "subtract", [INFO] [stderr] 190 | Multiply => "multiply", [INFO] [stderr] | ^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:191:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 191 | Divide => "divide", [INFO] [stderr] | ^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:192:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 192 | Modulus => "modulus", [INFO] [stderr] | ^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:193:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 193 | And => "and", [INFO] [stderr] | ^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 194 | Or => "or", [INFO] [stderr] | ^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:195:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 195 | BitAnd => "bitwise and", [INFO] [stderr] | ^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:196:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 196 | BitOr => "bitwise or", [INFO] [stderr] | ^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:197:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 197 | BitXor => "bitwise exclusive-or", [INFO] [stderr] | ^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:198:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 198 | BitShiftLeft => "bit shift left", [INFO] [stderr] | ^^^^^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:199:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 199 | BitShiftRight => "bit shift right", [INFO] [stderr] | ^^^^^^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:200:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 200 | Equal => "equal", [INFO] [stderr] | ^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:201:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 201 | NotEqual => "not equal", [INFO] [stderr] | ^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:202:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 202 | LessThan => "less than", [INFO] [stderr] | ^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:203:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 203 | LessThanEqual => "less than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:204:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 204 | GreaterThan => "greater than", [INFO] [stderr] | ^^^^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:205:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 205 | GreaterThanEqual => "greater than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:206:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 206 | MemberAccess => "member access", [INFO] [stderr] | ^^^^^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/parser/types.rs:207:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | --- matches any value [INFO] [stderr] ... [INFO] [stderr] 207 | ArrayAccess => "array access" [INFO] [stderr] | ^^^^^^^^^^^ unreachable pattern [INFO] [stderr] [INFO] [stderr] warning: unused variable: `Add` [INFO] [stderr] --> src/parser/types.rs:188:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_Add` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `Subtract` [INFO] [stderr] --> src/parser/types.rs:189:5 [INFO] [stderr] | [INFO] [stderr] 189 | Subtract => "subtract", [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_Subtract` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `Multiply` [INFO] [stderr] --> src/parser/types.rs:190:5 [INFO] [stderr] | [INFO] [stderr] 190 | Multiply => "multiply", [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_Multiply` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `Divide` [INFO] [stderr] --> src/parser/types.rs:191:5 [INFO] [stderr] | [INFO] [stderr] 191 | Divide => "divide", [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_Divide` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `Modulus` [INFO] [stderr] --> src/parser/types.rs:192:5 [INFO] [stderr] | [INFO] [stderr] 192 | Modulus => "modulus", [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_Modulus` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `And` [INFO] [stderr] --> src/parser/types.rs:193:5 [INFO] [stderr] | [INFO] [stderr] 193 | And => "and", [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_And` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `Or` [INFO] [stderr] --> src/parser/types.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 194 | Or => "or", [INFO] [stderr] | ^^ help: consider prefixing with an underscore: `_Or` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `BitAnd` [INFO] [stderr] --> src/parser/types.rs:195:5 [INFO] [stderr] | [INFO] [stderr] 195 | BitAnd => "bitwise and", [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_BitAnd` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `BitOr` [INFO] [stderr] --> src/parser/types.rs:196:5 [INFO] [stderr] | [INFO] [stderr] 196 | BitOr => "bitwise or", [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_BitOr` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `BitXor` [INFO] [stderr] --> src/parser/types.rs:197:5 [INFO] [stderr] | [INFO] [stderr] 197 | BitXor => "bitwise exclusive-or", [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_BitXor` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `BitShiftLeft` [INFO] [stderr] --> src/parser/types.rs:198:5 [INFO] [stderr] | [INFO] [stderr] 198 | BitShiftLeft => "bit shift left", [INFO] [stderr] | ^^^^^^^^^^^^ help: consider prefixing with an underscore: `_BitShiftLeft` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `BitShiftRight` [INFO] [stderr] --> src/parser/types.rs:199:5 [INFO] [stderr] | [INFO] [stderr] 199 | BitShiftRight => "bit shift right", [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_BitShiftRight` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `Equal` [INFO] [stderr] --> src/parser/types.rs:200:5 [INFO] [stderr] | [INFO] [stderr] 200 | Equal => "equal", [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_Equal` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `NotEqual` [INFO] [stderr] --> src/parser/types.rs:201:5 [INFO] [stderr] | [INFO] [stderr] 201 | NotEqual => "not equal", [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_NotEqual` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `LessThan` [INFO] [stderr] --> src/parser/types.rs:202:5 [INFO] [stderr] | [INFO] [stderr] 202 | LessThan => "less than", [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_LessThan` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `LessThanEqual` [INFO] [stderr] --> src/parser/types.rs:203:5 [INFO] [stderr] | [INFO] [stderr] 203 | LessThanEqual => "less than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_LessThanEqual` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `GreaterThan` [INFO] [stderr] --> src/parser/types.rs:204:5 [INFO] [stderr] | [INFO] [stderr] 204 | GreaterThan => "greater than", [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_GreaterThan` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `GreaterThanEqual` [INFO] [stderr] --> src/parser/types.rs:205:5 [INFO] [stderr] | [INFO] [stderr] 205 | GreaterThanEqual => "greater than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_GreaterThanEqual` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `MemberAccess` [INFO] [stderr] --> src/parser/types.rs:206:5 [INFO] [stderr] | [INFO] [stderr] 206 | MemberAccess => "member access", [INFO] [stderr] | ^^^^^^^^^^^^ help: consider prefixing with an underscore: `_MemberAccess` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ArrayAccess` [INFO] [stderr] --> src/parser/types.rs:207:5 [INFO] [stderr] | [INFO] [stderr] 207 | ArrayAccess => "array access" [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_ArrayAccess` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `t` [INFO] [stderr] --> src/validator/mod.rs:60:25 [INFO] [stderr] | [INFO] [stderr] 60 | fn resolve_type(&self, t: types::Type) -> Option { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_t` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `decl` [INFO] [stderr] --> src/validator/mod.rs:93:38 [INFO] [stderr] | [INFO] [stderr] 93 | fn resolve_type_decl<'b>(&mut self, decl: &TypeDecl<'b>) -> Result> { [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_decl` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `v` [INFO] [stderr] --> src/validator/mod.rs:100:16 [INFO] [stderr] | [INFO] [stderr] 100 | if let Some(v) = scope.variables.iter().find(|v| v.name == name) { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_v` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rhs` [INFO] [stderr] --> src/validator/mod.rs:367:37 [INFO] [stderr] | [INFO] [stderr] 367 | Expr::BinaryExpr { pos, op, lhs, rhs } => { [INFO] [stderr] | ^^^ help: try ignoring the field: `rhs: _` [INFO] [stderr] [INFO] [stderr] warning: field is never read: `scopes` [INFO] [stderr] --> src/validator/mod.rs:16:2 [INFO] [stderr] | [INFO] [stderr] 16 | scopes: Vec [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field is never read: `name` [INFO] [stderr] --> src/validator/mod.rs:20:2 [INFO] [stderr] | [INFO] [stderr] 20 | name: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `path` [INFO] [stderr] --> src/validator/mod.rs:21:2 [INFO] [stderr] | [INFO] [stderr] 21 | path: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `type_offset` [INFO] [stderr] --> src/validator/mod.rs:22:2 [INFO] [stderr] | [INFO] [stderr] 22 | type_offset: usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `variables` [INFO] [stderr] --> src/validator/mod.rs:26:2 [INFO] [stderr] | [INFO] [stderr] 26 | variables: Vec [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `name` [INFO] [stderr] --> src/validator/mod.rs:30:2 [INFO] [stderr] | [INFO] [stderr] 30 | name: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `type_index` [INFO] [stderr] --> src/validator/mod.rs:31:2 [INFO] [stderr] | [INFO] [stderr] 31 | type_index: usize [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `find_or_add_type` [INFO] [stderr] --> src/validator/mod.rs:51:2 [INFO] [stderr] | [INFO] [stderr] 51 | fn find_or_add_type(&mut self, t: types::Type) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `resolve_type` [INFO] [stderr] --> src/validator/mod.rs:60:2 [INFO] [stderr] | [INFO] [stderr] 60 | fn resolve_type(&self, t: types::Type) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_base_type` [INFO] [stderr] --> src/validator/mod.rs:64:2 [INFO] [stderr] | [INFO] [stderr] 64 | fn get_base_type(&self, t: usize) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_qualified_base_type` [INFO] [stderr] --> src/validator/mod.rs:74:2 [INFO] [stderr] | [INFO] [stderr] 74 | fn get_qualified_base_type(&self, t: usize) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_variable_type` [INFO] [stderr] --> src/validator/mod.rs:82:2 [INFO] [stderr] | [INFO] [stderr] 82 | fn get_variable_type<'b>(&self, name: &str, pos: &SourcePos<'b>) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `resolve_type_decl` [INFO] [stderr] --> src/validator/mod.rs:93:2 [INFO] [stderr] | [INFO] [stderr] 93 | fn resolve_type_decl<'b>(&mut self, decl: &TypeDecl<'b>) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `add_variable_to_current_scope` [INFO] [stderr] --> src/validator/mod.rs:98:2 [INFO] [stderr] | [INFO] [stderr] 98 | fn add_variable_to_current_scope<'b>(&mut self, name: &str, type_index: usize, pos: &SourcePos<'b>) -> Result<(), types::ValidateError<'b>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `find_function_type` [INFO] [stderr] --> src/validator/mod.rs:112:2 [INFO] [stderr] | [INFO] [stderr] 112 | fn find_function_type<'b>(&self, source_pos: SourcePos<'b>, func_name: &str, args: &Vec) -> Result<(usize, usize), types::ValidateError<'b>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `validate_vector_swizzle` [INFO] [stderr] --> src/validator/mod.rs:144:2 [INFO] [stderr] | [INFO] [stderr] 144 | fn validate_vector_swizzle<'b>(&mut self, expr: types::Expr<'b>, source_pos: SourcePos<'b>, dim: usize, base_type_index: usize, swizzle: &str) -> Result, types::ValidateError<'b>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `validate_expr` [INFO] [stderr] --> src/validator/mod.rs:189:2 [INFO] [stderr] | [INFO] [stderr] 189 | fn validate_expr<'b>(&mut self, file: &'b str, expr: super::parser::types::Expr<'b>) -> Result, types::ValidateError<'b>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `validate_lvalue` [INFO] [stderr] --> src/validator/mod.rs:365:2 [INFO] [stderr] | [INFO] [stderr] 365 | fn validate_lvalue<'b>(&self, file: &'b str, lhs: &super::parser::types::Expr<'b>) -> Result<(), types::ValidateError<'b>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `validate_statement` [INFO] [stderr] --> src/validator/mod.rs:394:2 [INFO] [stderr] | [INFO] [stderr] 394 | fn validate_statement<'b>(&mut self, file: &'b str, statement: super::parser::types::Statement<'b>, is_loop: bool, return_type: usize) -> Result, types::ValidateError<'b>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `Add` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:188:5 [INFO] [stderr] | [INFO] [stderr] 188 | Add => "add", [INFO] [stderr] | ^^^ help: convert the identifier to snake case: `add` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable `Subtract` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:189:5 [INFO] [stderr] | [INFO] [stderr] 189 | Subtract => "subtract", [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `subtract` [INFO] [stderr] [INFO] [stderr] warning: variable `Multiply` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:190:5 [INFO] [stderr] | [INFO] [stderr] 190 | Multiply => "multiply", [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `multiply` [INFO] [stderr] [INFO] [stderr] warning: variable `Divide` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:191:5 [INFO] [stderr] | [INFO] [stderr] 191 | Divide => "divide", [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `divide` [INFO] [stderr] [INFO] [stderr] warning: variable `Modulus` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:192:5 [INFO] [stderr] | [INFO] [stderr] 192 | Modulus => "modulus", [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `modulus` [INFO] [stderr] [INFO] [stderr] warning: variable `And` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:193:5 [INFO] [stderr] | [INFO] [stderr] 193 | And => "and", [INFO] [stderr] | ^^^ help: convert the identifier to snake case: `and` [INFO] [stderr] [INFO] [stderr] warning: variable `Or` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 194 | Or => "or", [INFO] [stderr] | ^^ help: convert the identifier to snake case (notice the capitalization): `or` [INFO] [stderr] [INFO] [stderr] warning: variable `BitAnd` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:195:5 [INFO] [stderr] | [INFO] [stderr] 195 | BitAnd => "bitwise and", [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `bit_and` [INFO] [stderr] [INFO] [stderr] warning: variable `BitOr` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:196:5 [INFO] [stderr] | [INFO] [stderr] 196 | BitOr => "bitwise or", [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `bit_or` [INFO] [stderr] [INFO] [stderr] warning: variable `BitXor` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:197:5 [INFO] [stderr] | [INFO] [stderr] 197 | BitXor => "bitwise exclusive-or", [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `bit_xor` [INFO] [stderr] [INFO] [stderr] warning: variable `BitShiftLeft` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:198:5 [INFO] [stderr] | [INFO] [stderr] 198 | BitShiftLeft => "bit shift left", [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `bit_shift_left` [INFO] [stderr] [INFO] [stderr] warning: variable `BitShiftRight` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:199:5 [INFO] [stderr] | [INFO] [stderr] 199 | BitShiftRight => "bit shift right", [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `bit_shift_right` [INFO] [stderr] [INFO] [stderr] warning: variable `Equal` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:200:5 [INFO] [stderr] | [INFO] [stderr] 200 | Equal => "equal", [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `equal` [INFO] [stderr] [INFO] [stderr] warning: variable `NotEqual` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:201:5 [INFO] [stderr] | [INFO] [stderr] 201 | NotEqual => "not equal", [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `not_equal` [INFO] [stderr] [INFO] [stderr] warning: variable `LessThan` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:202:5 [INFO] [stderr] | [INFO] [stderr] 202 | LessThan => "less than", [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `less_than` [INFO] [stderr] [INFO] [stderr] warning: variable `LessThanEqual` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:203:5 [INFO] [stderr] | [INFO] [stderr] 203 | LessThanEqual => "less than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `less_than_equal` [INFO] [stderr] [INFO] [stderr] warning: variable `GreaterThan` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:204:5 [INFO] [stderr] | [INFO] [stderr] 204 | GreaterThan => "greater than", [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `greater_than` [INFO] [stderr] [INFO] [stderr] warning: variable `GreaterThanEqual` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:205:5 [INFO] [stderr] | [INFO] [stderr] 205 | GreaterThanEqual => "greater than or equal", [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `greater_than_equal` [INFO] [stderr] [INFO] [stderr] warning: variable `MemberAccess` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:206:5 [INFO] [stderr] | [INFO] [stderr] 206 | MemberAccess => "member access", [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `member_access` [INFO] [stderr] [INFO] [stderr] warning: variable `ArrayAccess` should have a snake case name [INFO] [stderr] --> src/parser/types.rs:207:5 [INFO] [stderr] | [INFO] [stderr] 207 | ArrayAccess => "array access" [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `array_access` [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 5.19s [INFO] running `"docker" "inspect" "77215a9d23939a5fdc3898aee664e7e19e09a7a8d1a8357e8d15547bbe261f56"` [INFO] running `"docker" "rm" "-f" "77215a9d23939a5fdc3898aee664e7e19e09a7a8d1a8357e8d15547bbe261f56"` [INFO] [stdout] 77215a9d23939a5fdc3898aee664e7e19e09a7a8d1a8357e8d15547bbe261f56