[INFO] cloning repository https://github.com/cooldudemcgeexl/crust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/cooldudemcgeexl/crust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcooldudemcgeexl%2Fcrust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcooldudemcgeexl%2Fcrust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8415ad3fd465214e00bcd4786743a254e082fb60
[INFO] checking cooldudemcgeexl/crust against try#163937523761cc0def32f1ba9ed63fdf65ad3478 for pr-156749
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcooldudemcgeexl%2Fcrust" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/cooldudemcgeexl/crust
[INFO] finished tweaking git repo https://github.com/cooldudemcgeexl/crust
[INFO] tweaked toml for git repo https://github.com/cooldudemcgeexl/crust written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/cooldudemcgeexl/crust on toolchain 163937523761cc0def32f1ba9ed63fdf65ad3478
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+163937523761cc0def32f1ba9ed63fdf65ad3478" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/cooldudemcgeexl/crust already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+163937523761cc0def32f1ba9ed63fdf65ad3478" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3e793bdf10248eb2ddbd6b0faebed8155c11b4589982e2893733958d93e8d540" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 9c27df09b20529a25300164442ab056f14dc48bcb5775fe0dce331218e832eca
[INFO] running `Command { std: "docker" "start" "9c27df09b20529a25300164442ab056f14dc48bcb5775fe0dce331218e832eca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "9c27df09b20529a25300164442ab056f14dc48bcb5775fe0dce331218e832eca" "/opt/rustwide/cargo-home/bin/cargo" "+163937523761cc0def32f1ba9ed63fdf65ad3478" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9c27df09b20529a25300164442ab056f14dc48bcb5775fe0dce331218e832eca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "9c27df09b20529a25300164442ab056f14dc48bcb5775fe0dce331218e832eca" "/opt/rustwide/cargo-home/bin/cargo" "+163937523761cc0def32f1ba9ed63fdf65ad3478" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.66
[INFO] [stderr]    Compiling unicode-ident v1.0.11
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling semver v1.0.18
[INFO] [stderr]    Compiling futures-core v0.3.28
[INFO] [stderr]    Compiling futures-task v0.3.28
[INFO] [stderr]    Compiling futures-channel v0.3.28
[INFO] [stderr]    Compiling futures-util v0.3.28
[INFO] [stderr]     Checking futures-sink v0.3.28
[INFO] [stderr]    Compiling regex-syntax v0.7.4
[INFO] [stderr]     Checking pin-project-lite v0.2.10
[INFO] [stderr]     Checking futures-io v0.3.28
[INFO] [stderr]    Compiling thiserror v1.0.44
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling slab v0.4.8
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]    Compiling relative-path v1.8.0
[INFO] [stderr]     Checking futures-timer v3.0.2
[INFO] [stderr]    Compiling aho-corasick v1.0.2
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling rstest_macros v0.18.1
[INFO] [stderr]    Compiling quote v1.0.32
[INFO] [stderr]    Compiling syn v2.0.27
[INFO] [stderr]    Compiling regex-automata v0.3.3
[INFO] [stderr]    Compiling regex v1.9.1
[INFO] [stderr]    Compiling futures-macro v0.3.28
[INFO] [stderr]    Compiling thiserror-impl v1.0.44
[INFO] [stderr]     Checking crust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(box_patterns)]
[INFO] [stdout]   |            ^^^^^^^^^^^^ feature has been removed
[INFO] [stdout]   |
[INFO] [stdout]   = note: removed in CURRENT_RUSTC_VERSION
[INFO] [stdout]   = note: superseded by `deref_patterns`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]   --> src/semantics/expression.rs:59:32
[INFO] [stdout]    |
[INFO] [stdout] 59 |             Expression::AndExp(box expression, arith_op) => {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]   --> src/semantics/expression.rs:77:31
[INFO] [stdout]    |
[INFO] [stdout] 77 |             Expression::OrExp(box expression, arith_op) => {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:137:28
[INFO] [stdout]     |
[INFO] [stdout] 137 |             ArtihOp::AddOp(box arith_op, relation) => {
[INFO] [stdout]     |                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:147:34
[INFO] [stdout]     |
[INFO] [stdout] 147 |                     (Type::Array(box Type::Int, l_bound), Type::Array(box Type::Int, r_bound))
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:147:71
[INFO] [stdout]     |
[INFO] [stdout] 147 |                     (Type::Array(box Type::Int, l_bound), Type::Array(box Type::Int, r_bound))
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:149:37
[INFO] [stdout]     |
[INFO] [stdout] 149 |                         Type::Array(box Type::Float, l_bound),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:150:37
[INFO] [stdout]     |
[INFO] [stdout] 150 |                         Type::Array(box Type::Float, r_bound),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:164:34
[INFO] [stdout]     |
[INFO] [stdout] 164 |                     (Type::Array(box Type::Int, _), Type::Int) => Ok(
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:167:34
[INFO] [stdout]     |
[INFO] [stdout] 167 |                     (Type::Array(box Type::Int, _), Type::Float) => {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:173:34
[INFO] [stdout]     |
[INFO] [stdout] 173 |                     (Type::Array(box Type::Float, _), Type::Int) => {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:179:34
[INFO] [stdout]     |
[INFO] [stdout] 179 |                     (Type::Array(box Type::Float, _), Type::Float) => Ok(
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:183:45
[INFO] [stdout]     |
[INFO] [stdout] 183 |                     (Type::Int, Type::Array(box Type::Int, _)) => Ok(
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:186:47
[INFO] [stdout]     |
[INFO] [stdout] 186 |                     (Type::Float, Type::Array(box Type::Int, _)) => {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:192:45
[INFO] [stdout]     |
[INFO] [stdout] 192 |                     (Type::Int, Type::Array(box Type::Float, _)) => {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:198:47
[INFO] [stdout]     |
[INFO] [stdout] 198 |                     (Type::Float, Type::Array(box Type::Float, _)) => Ok(
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:204:28
[INFO] [stdout]     |
[INFO] [stdout] 204 |             ArtihOp::SubOp(box arith_op, relation) => {
[INFO] [stdout]     |                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:214:34
[INFO] [stdout]     |
[INFO] [stdout] 214 |                     (Type::Array(box Type::Int, l_bound), Type::Array(box Type::Int, r_bound))
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:214:71
[INFO] [stdout]     |
[INFO] [stdout] 214 |                     (Type::Array(box Type::Int, l_bound), Type::Array(box Type::Int, r_bound))
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:216:37
[INFO] [stdout]     |
[INFO] [stdout] 216 |                         Type::Array(box Type::Float, l_bound),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:217:37
[INFO] [stdout]     |
[INFO] [stdout] 217 |                         Type::Array(box Type::Float, r_bound),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:231:34
[INFO] [stdout]     |
[INFO] [stdout] 231 |                     (Type::Array(box Type::Int, _), Type::Int) => Ok(
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:234:34
[INFO] [stdout]     |
[INFO] [stdout] 234 |                     (Type::Array(box Type::Int, _), Type::Float) => {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:240:34
[INFO] [stdout]     |
[INFO] [stdout] 240 |                     (Type::Array(box Type::Float, _), Type::Int) => {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:246:34
[INFO] [stdout]     |
[INFO] [stdout] 246 |                     (Type::Array(box Type::Float, _), Type::Float) => Ok(
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:250:45
[INFO] [stdout]     |
[INFO] [stdout] 250 |                     (Type::Int, Type::Array(box Type::Int, _)) => Ok(
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:253:47
[INFO] [stdout]     |
[INFO] [stdout] 253 |                     (Type::Float, Type::Array(box Type::Int, _)) => {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:259:45
[INFO] [stdout]     |
[INFO] [stdout] 259 |                     (Type::Int, Type::Array(box Type::Float, _)) => {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:265:47
[INFO] [stdout]     |
[INFO] [stdout] 265 |                     (Type::Float, Type::Array(box Type::Float, _)) => Ok(
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:364:32
[INFO] [stdout]     |
[INFO] [stdout] 364 |             Relation::LessThan(box relation, term) => {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:369:34
[INFO] [stdout]     |
[INFO] [stdout] 369 |             Relation::LessThanEq(box relation, term) => {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:374:35
[INFO] [stdout]     |
[INFO] [stdout] 374 |             Relation::GreaterThan(box relation, term) => {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:379:37
[INFO] [stdout]     |
[INFO] [stdout] 379 |             Relation::GreaterThanEq(box relation, term) => {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:384:30
[INFO] [stdout]     |
[INFO] [stdout] 384 |             Relation::Equals(box relation, term) => {
[INFO] [stdout]     |                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:389:33
[INFO] [stdout]     |
[INFO] [stdout] 389 |             Relation::NotEquals(box relation, term) => {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:446:34
[INFO] [stdout]     |
[INFO] [stdout] 446 |                     (Type::Array(box Type::Int, l_bound), Type::Array(box Type::Int, r_bound))
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:446:71
[INFO] [stdout]     |
[INFO] [stdout] 446 |                     (Type::Array(box Type::Int, l_bound), Type::Array(box Type::Int, r_bound))
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:448:37
[INFO] [stdout]     |
[INFO] [stdout] 448 |                         Type::Array(box Type::Float, l_bound),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:449:37
[INFO] [stdout]     |
[INFO] [stdout] 449 |                         Type::Array(box Type::Float, r_bound),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:463:34
[INFO] [stdout]     |
[INFO] [stdout] 463 |                     (Type::Array(box Type::Int, _), Type::Int) => {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:466:34
[INFO] [stdout]     |
[INFO] [stdout] 466 |                     (Type::Array(box Type::Int, _), Type::Float) => Ok(
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:469:34
[INFO] [stdout]     |
[INFO] [stdout] 469 |                     (Type::Array(box Type::Float, _), Type::Int) => Ok(
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:472:34
[INFO] [stdout]     |
[INFO] [stdout] 472 |                     (Type::Array(box Type::Float, _), Type::Float) => {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:476:45
[INFO] [stdout]     |
[INFO] [stdout] 476 |                     (Type::Int, Type::Array(box Type::Int, _)) => {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:479:47
[INFO] [stdout]     |
[INFO] [stdout] 479 |                     (Type::Float, Type::Array(box Type::Int, _)) => Ok(
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:482:45
[INFO] [stdout]     |
[INFO] [stdout] 482 |                     (Type::Int, Type::Array(box Type::Float, _)) => Ok(
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:485:47
[INFO] [stdout]     |
[INFO] [stdout] 485 |                     (Type::Float, Type::Array(box Type::Float, _)) => {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:503:34
[INFO] [stdout]     |
[INFO] [stdout] 503 |                     (Type::Array(box Type::Int, l_bound), Type::Array(box Type::Int, r_bound))
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:503:71
[INFO] [stdout]     |
[INFO] [stdout] 503 |                     (Type::Array(box Type::Int, l_bound), Type::Array(box Type::Int, r_bound))
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:505:37
[INFO] [stdout]     |
[INFO] [stdout] 505 |                         Type::Array(box Type::Float, l_bound),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:506:37
[INFO] [stdout]     |
[INFO] [stdout] 506 |                         Type::Array(box Type::Float, r_bound),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:520:34
[INFO] [stdout]     |
[INFO] [stdout] 520 |                     (Type::Array(box Type::Int, _), Type::Int) => {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:523:34
[INFO] [stdout]     |
[INFO] [stdout] 523 |                     (Type::Array(box Type::Int, _), Type::Float) => Ok(
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:526:34
[INFO] [stdout]     |
[INFO] [stdout] 526 |                     (Type::Array(box Type::Float, _), Type::Int) => Ok(
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:529:34
[INFO] [stdout]     |
[INFO] [stdout] 529 |                     (Type::Array(box Type::Float, _), Type::Float) => {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:533:45
[INFO] [stdout]     |
[INFO] [stdout] 533 |                     (Type::Int, Type::Array(box Type::Int, _)) => {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:536:47
[INFO] [stdout]     |
[INFO] [stdout] 536 |                     (Type::Float, Type::Array(box Type::Int, _)) => Ok(
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:539:45
[INFO] [stdout]     |
[INFO] [stdout] 539 |                     (Type::Int, Type::Array(box Type::Float, _)) => Ok(
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:542:47
[INFO] [stdout]     |
[INFO] [stdout] 542 |                     (Type::Float, Type::Array(box Type::Float, _)) => {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:591:38
[INFO] [stdout]     |
[INFO] [stdout] 591 |             Factor::NestedExpression(box expression) => Ok(AnalyzedFactor::NestedExpression(
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:635:46
[INFO] [stdout]     |
[INFO] [stdout] 635 |             AnalyzedFactor::NestedExpression(box expression) => expression.get_type(context),
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_patterns` have been removed
[INFO] [stdout]    --> src/semantics/expression.rs:681:21
[INFO] [stdout]     |
[INFO] [stdout] 681 |         if let Some(box expression) = value.expression {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `expression` in this scope
[INFO] [stdout]   --> src/semantics/expression.rs:61:73
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 let expression = AnalyzedExpression::analyze_expression(expression, context)?;
[INFO] [stdout]    |                                                                         ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `expression` in this scope
[INFO] [stdout]   --> src/semantics/expression.rs:79:73
[INFO] [stdout]    |
[INFO] [stdout] 79 |                 let expression = AnalyzedExpression::analyze_expression(expression, context)?;
[INFO] [stdout]    |                                                                         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: the binding `expression` is available in a different scope in the same function
[INFO] [stdout]   --> src/semantics/expression.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 let expression = AnalyzedExpression::analyze_expression(expression, context)?;
[INFO] [stdout]    |                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `arith_op` in this scope
[INFO] [stdout]    --> src/semantics/expression.rs:138:68
[INFO] [stdout]     |
[INFO] [stdout] 138 |                 let arith_op = AnalyzedArithOp::analyze_expression(arith_op, context)?;
[INFO] [stdout]     |                                                                    ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `arith_op` in this scope
[INFO] [stdout]    --> src/semantics/expression.rs:205:68
[INFO] [stdout]     |
[INFO] [stdout] 205 |                 let arith_op = AnalyzedArithOp::analyze_expression(arith_op, context)?;
[INFO] [stdout]     |                                                                    ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: the binding `arith_op` is available in a different scope in the same function
[INFO] [stdout]    --> src/semantics/expression.rs:138:21
[INFO] [stdout]     |
[INFO] [stdout] 138 |                 let arith_op = AnalyzedArithOp::analyze_expression(arith_op, context)?;
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `relation` in this scope
[INFO] [stdout]    --> src/semantics/expression.rs:366:54
[INFO] [stdout]     |
[INFO] [stdout] 366 |                     AnalyzedRelation::try_compatible(relation, term, false, context)?;
[INFO] [stdout]     |                                                      ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `relation` in this scope
[INFO] [stdout]    --> src/semantics/expression.rs:371:54
[INFO] [stdout]     |
[INFO] [stdout] 371 |                     AnalyzedRelation::try_compatible(relation, term, false, context)?;
[INFO] [stdout]     |                                                      ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: the binding `relation` is available in a different scope in the same function
[INFO] [stdout]    --> src/semantics/expression.rs:365:22
[INFO] [stdout]     |
[INFO] [stdout] 365 |                 let (relation, term) =
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `relation` in this scope
[INFO] [stdout]    --> src/semantics/expression.rs:376:54
[INFO] [stdout]     |
[INFO] [stdout] 376 |                     AnalyzedRelation::try_compatible(relation, term, false, context)?;
[INFO] [stdout]     |                                                      ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: the binding `relation` is available in a different scope in the same function
[INFO] [stdout]    --> src/semantics/expression.rs:370:22
[INFO] [stdout]     |
[INFO] [stdout] 370 |                 let (relation, term) =
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `relation` in this scope
[INFO] [stdout]    --> src/semantics/expression.rs:381:54
[INFO] [stdout]     |
[INFO] [stdout] 381 |                     AnalyzedRelation::try_compatible(relation, term, false, context)?;
[INFO] [stdout]     |                                                      ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: the binding `relation` is available in a different scope in the same function
[INFO] [stdout]    --> src/semantics/expression.rs:375:22
[INFO] [stdout]     |
[INFO] [stdout] 375 |                 let (relation, term) =
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `relation` in this scope
[INFO] [stdout]    --> src/semantics/expression.rs:386:54
[INFO] [stdout]     |
[INFO] [stdout] 386 |                     AnalyzedRelation::try_compatible(relation, term, true, context)?;
[INFO] [stdout]     |                                                      ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: the binding `relation` is available in a different scope in the same function
[INFO] [stdout]    --> src/semantics/expression.rs:380:22
[INFO] [stdout]     |
[INFO] [stdout] 380 |                 let (relation, term) =
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `relation` in this scope
[INFO] [stdout]    --> src/semantics/expression.rs:391:54
[INFO] [stdout]     |
[INFO] [stdout] 391 |                     AnalyzedRelation::try_compatible(relation, term, true, context)?;
[INFO] [stdout]     |                                                      ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: the binding `relation` is available in a different scope in the same function
[INFO] [stdout]    --> src/semantics/expression.rs:385:22
[INFO] [stdout]     |
[INFO] [stdout] 385 |                 let (relation, term) =
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `expression` in this scope
[INFO] [stdout]    --> src/semantics/expression.rs:592:65
[INFO] [stdout]     |
[INFO] [stdout] 592 |                 Box::new(AnalyzedExpression::analyze_expression(expression, context)?),
[INFO] [stdout]     |                                                                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `expression` in this scope
[INFO] [stdout]    --> src/semantics/expression.rs:635:65
[INFO] [stdout]     |
[INFO] [stdout] 635 |             AnalyzedFactor::NestedExpression(box expression) => expression.get_type(context),
[INFO] [stdout]     |                                                                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `expression` in this scope
[INFO] [stdout]    --> src/semantics/expression.rs:682:69
[INFO] [stdout]     |
[INFO] [stdout] 682 |             let expression = AnalyzedExpression::analyze_expression(expression, context)?;
[INFO] [stdout]     |                                                                     ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error`
[INFO] [stdout]  --> src/parser.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use thiserror::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/parser/procedure.rs:3:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::declaratons::{self, Declaration, VariableDeclaration};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PathBuf` and `Path`
[INFO] [stdout]   --> src/scanner/stripper.rs:86:17
[INFO] [stdout]    |
[INFO] [stdout] 86 | use std::path::{Path, PathBuf};
[INFO] [stdout]    |                 ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `fs` and `io`
[INFO] [stdout]   --> src/scanner/stripper.rs:87:11
[INFO] [stdout]    |
[INFO] [stdout] 87 | use std::{fs, io};
[INFO] [stdout]    |           ^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]    --> src/scanner.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 | use std::fs;
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]    --> src/scanner.rs:132:5
[INFO] [stdout]     |
[INFO] [stdout] 132 | use std::path::PathBuf;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error`
[INFO] [stdout]  --> src/semantics/context.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use thiserror::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error`
[INFO] [stdout]  --> src/semantics/procedure.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use thiserror::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::parser::types::Identifier`
[INFO] [stdout]  --> src/semantics/procedure.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::parser::types::Identifier;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/scanner.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let mut line_number = 0u32;
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `line_number`
[INFO] [stdout]   --> src/scanner.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let mut line_number = 0u32;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_line_number`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> src/scanner.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 26 |     for (index, curr_char) in cleaned_file.chars().enumerate() {
[INFO] [stdout]    |          ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/semantics/expression.rs:657:42
[INFO] [stdout]     |
[INFO] [stdout] 657 |     fn analyze_expression(value: Number, context: &mut Context) -> Result<Self, SemanticsError> {
[INFO] [stdout]     |                                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/semantics/expression.rs:665:24
[INFO] [stdout]     |
[INFO] [stdout] 665 |     fn get_type(&self, context: &Context) -> Result<Type, SemanticsError> {
[INFO] [stdout]     |                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/semantics/procedure.rs:117:24
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn get_type(&self, context: &Context) -> Result<Type, SemanticsError> {
[INFO] [stdout]     |                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scope`
[INFO] [stdout]    --> src/semantics/statement.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |         scope: &super::context::Scope,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_scope`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parsed_output`
[INFO] [stdout]   --> src/main.rs:46:24
[INFO] [stdout]    |
[INFO] [stdout] 46 |     let (parsed_input, parsed_output) = parse_args()?;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parsed_output`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `main_result`
[INFO] [stdout]   --> src/main.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let main_result = compile_file(&parsed_input)?;
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_main_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let mut file_contents = fs::read_to_string(file_path)?;
[INFO] [stdout]    |         ----^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file_name`
[INFO] [stdout]   --> src/main.rs:88:9
[INFO] [stdout]    |
[INFO] [stdout] 88 |     let file_name = file_path.to_str();
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0557.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `crust` (bin "crust") due to 75 previous errors; 20 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "9c27df09b20529a25300164442ab056f14dc48bcb5775fe0dce331218e832eca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9c27df09b20529a25300164442ab056f14dc48bcb5775fe0dce331218e832eca", kill_on_drop: false }`
[INFO] [stdout] 9c27df09b20529a25300164442ab056f14dc48bcb5775fe0dce331218e832eca
