[INFO] cloning repository https://github.com/agalakhov/nc
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/agalakhov/nc" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fagalakhov%2Fnc", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fagalakhov%2Fnc'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 22019f497a9f4ae5cae4665e2ce95fb67fe7d7a1
[INFO] checking agalakhov/nc against master#30f74ff0dc4d66debc8b50724c446f817e5f75f4 for pr-121848-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fagalakhov%2Fnc" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/agalakhov/nc on toolchain 30f74ff0dc4d66debc8b50724c446f817e5f75f4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/agalakhov/nc
[INFO] finished tweaking git repo https://github.com/agalakhov/nc
[INFO] tweaked toml for git repo https://github.com/agalakhov/nc written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/agalakhov/nc 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" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[ERROR] this task or one of its parent failed!
[ERROR] no output for 300 seconds
[ERROR] note: run with `RUST_BACKTRACE=1` to display a backtrace.
[INFO] checking agalakhov/nc against try#72eda894eb3548c7ba774079ce0afab42958d4ee for pr-121848-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fagalakhov%2Fnc" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/agalakhov/nc on toolchain 72eda894eb3548c7ba774079ce0afab42958d4ee
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/agalakhov/nc
[INFO] finished tweaking git repo https://github.com/agalakhov/nc
[INFO] tweaked toml for git repo https://github.com/agalakhov/nc written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/agalakhov/nc 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" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking agalakhov/nc against try#72eda894eb3548c7ba774079ce0afab42958d4ee for pr-121848-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fagalakhov%2Fnc" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/agalakhov/nc on toolchain 72eda894eb3548c7ba774079ce0afab42958d4ee
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/agalakhov/nc
[INFO] finished tweaking git repo https://github.com/agalakhov/nc
[INFO] tweaked toml for git repo https://github.com/agalakhov/nc written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/agalakhov/nc 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" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] aafba49d54c9c018ae86115927313e2dd1d760308121e829f2dec0a660f8a0b8
[INFO] running `Command { std: "docker" "start" "-a" "aafba49d54c9c018ae86115927313e2dd1d760308121e829f2dec0a660f8a0b8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "aafba49d54c9c018ae86115927313e2dd1d760308121e829f2dec0a660f8a0b8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "aafba49d54c9c018ae86115927313e2dd1d760308121e829f2dec0a660f8a0b8", kill_on_drop: false }`
[INFO] [stdout] aafba49d54c9c018ae86115927313e2dd1d760308121e829f2dec0a660f8a0b8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cc866ea092df6c85a7271bd5731ca96cedf5435b731229b4758148dac5c21dff
[INFO] running `Command { std: "docker" "start" "-a" "cc866ea092df6c85a7271bd5731ca96cedf5435b731229b4758148dac5c21dff", kill_on_drop: false }`
[INFO] [stderr]     Checking nc v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]  --> src/main.rs:8:23
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let x = Expr::Mul(box Expr::Val(42.0), box Expr::Var('a'));
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let x = Expr::Mul(Box::new(Expr::Val(42.0)), box Expr::Var('a'));
[INFO] [stdout]   |                       ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]  --> src/main.rs:8:23
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let x = Expr::Mul(box Expr::Val(42.0), box Expr::Var('a'));
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let x = Expr::Mul(Box::new(Expr::Val(42.0)), box Expr::Var('a'));
[INFO] [stdout]   |                       ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]  --> src/main.rs:8:44
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let x = Expr::Mul(box Expr::Val(42.0), box Expr::Var('a'));
[INFO] [stdout]   |                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let x = Expr::Mul(box Expr::Val(42.0), Box::new(Expr::Var('a')));
[INFO] [stdout]   |                                            ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]  --> src/main.rs:8:44
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let x = Expr::Mul(box Expr::Val(42.0), box Expr::Var('a'));
[INFO] [stdout]   |                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let x = Expr::Mul(box Expr::Val(42.0), Box::new(Expr::Var('a')));
[INFO] [stdout]   |                                            ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(box_syntax, box_patterns)]
[INFO] [stdout]   |            ^^^^^^^^^^ feature has been removed
[INFO] [stdout]   |
[INFO] [stdout]   = note: replaced with `#[rustc_box]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(box_syntax, box_patterns)]
[INFO] [stdout]   |            ^^^^^^^^^^ feature has been removed
[INFO] [stdout]   |
[INFO] [stdout]   = note: replaced with `#[rustc_box]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:20:50
[INFO] [stdout]    |
[INFO] [stdout] 20 |             Expr::Add(box a, box b) => Expr::Add(box a.diff(var), box b.diff(var)),
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 20 |             Expr::Add(box a, box b) => Expr::Add(Box::new(a.diff(var)), box b.diff(var)),
[INFO] [stdout]    |                                                  ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:20:50
[INFO] [stdout]    |
[INFO] [stdout] 20 |             Expr::Add(box a, box b) => Expr::Add(box a.diff(var), box b.diff(var)),
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 20 |             Expr::Add(box a, box b) => Expr::Add(Box::new(a.diff(var)), box b.diff(var)),
[INFO] [stdout]    |                                                  ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:20:67
[INFO] [stdout]    |
[INFO] [stdout] 20 |             Expr::Add(box a, box b) => Expr::Add(box a.diff(var), box b.diff(var)),
[INFO] [stdout]    |                                                                   ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 20 |             Expr::Add(box a, box b) => Expr::Add(box a.diff(var), Box::new(b.diff(var))),
[INFO] [stdout]    |                                                                   ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:20:67
[INFO] [stdout]    |
[INFO] [stdout] 20 |             Expr::Add(box a, box b) => Expr::Add(box a.diff(var), box b.diff(var)),
[INFO] [stdout]    |                                                                   ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 20 |             Expr::Add(box a, box b) => Expr::Add(box a.diff(var), Box::new(b.diff(var))),
[INFO] [stdout]    |                                                                   ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:21:64
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...   Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 21 |             Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(Box::new(a.clone().diff(var)), box b.clone()), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:21:64
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...   Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 21 |             Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(Box::new(a.clone().diff(var)), box b.clone()), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:21:89
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...   Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 21 |             Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), Box::new(b.clone())), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                                                         ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:21:50
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...   Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 21 |             Expr::Mul(box a, box b) => Expr::Add(Box::new(Expr::Mul(box a.clone().diff(var), box b.clone())), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:21:89
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...   Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 21 |             Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), Box::new(b.clone())), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                                                         ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:21:119
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...   Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                                                                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 21 |             Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(Box::new(a), box b.diff(var))),
[INFO] [stdout]    |                                                                                                                       ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:21:50
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...   Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 21 |             Expr::Mul(box a, box b) => Expr::Add(Box::new(Expr::Mul(box a.clone().diff(var), box b.clone())), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:21:126
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...   Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                                                                                        ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 21 |             Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(box a, Box::new(b.diff(var)))),
[INFO] [stdout]    |                                                                                                                              ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:21:119
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...   Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                                                                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 21 |             Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(Box::new(a), box b.diff(var))),
[INFO] [stdout]    |                                                                                                                       ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:21:105
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...r::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 21 |             Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), Box::new(Expr::Mul(box a, box b.diff(var)))),
[INFO] [stdout]    |                                                                                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:21:126
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...   Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                                                                                        ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 21 |             Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(box a, Box::new(b.diff(var)))),
[INFO] [stdout]    |                                                                                                                              ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `)`, `,`, `...`, `..=`, `..`, `::`, `{`, or `|`, found `a`
[INFO] [stdout]   --> src/expr.rs:31:37
[INFO] [stdout]    |
[INFO] [stdout] 31 |             Expr::Add(box Expr::Val a, box b) if a == 0.0   => b,
[INFO] [stdout]    |                                    -^ expected one of 10 possible tokens
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: missing `,`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/expr.rs:21:105
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...r::Mul(box a.clone().diff(var), box b.clone()), box Expr::Mul(box a, box b.diff(var))),
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 21 |             Expr::Mul(box a, box b) => Expr::Add(box Expr::Mul(box a.clone().diff(var), box b.clone()), Box::new(Expr::Mul(box a, box b.diff(var)))),
[INFO] [stdout]    |                                                                                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `)`, `,`, `...`, `..=`, `..`, `::`, `{`, or `|`, found `a`
[INFO] [stdout]   --> src/expr.rs:31:37
[INFO] [stdout]    |
[INFO] [stdout] 31 |             Expr::Add(box Expr::Val a, box b) if a == 0.0   => b,
[INFO] [stdout]    |                                    -^ expected one of 10 possible tokens
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: missing `,`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `)`, `,`, `...`, `..=`, `..`, `::`, `{`, or `|`, found `a`
[INFO] [stdout]   --> src/expr.rs:32:44
[INFO] [stdout]    |
[INFO] [stdout] 32 |             Expr::Add(box b, box Expr::Val a) if a == 0.0   => b,
[INFO] [stdout]    |                                           -^ expected one of 10 possible tokens
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           help: missing `,`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `)`, `,`, `...`, `..=`, `..`, `::`, `{`, or `|`, found `a`
[INFO] [stdout]   --> src/expr.rs:35:37
[INFO] [stdout]    |
[INFO] [stdout] 35 |             Expr::Mul(box Expr::Val a, _)     if a == 0.0   => Expr::Val(0.0),
[INFO] [stdout]    |                                    -^ expected one of 10 possible tokens
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: missing `,`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `)`, `,`, `...`, `..=`, `..`, `::`, `{`, or `|`, found `a`
[INFO] [stdout]   --> src/expr.rs:32:44
[INFO] [stdout]    |
[INFO] [stdout] 32 |             Expr::Add(box b, box Expr::Val a) if a == 0.0   => b,
[INFO] [stdout]    |                                           -^ expected one of 10 possible tokens
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           help: missing `,`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `)`, `,`, `...`, `..=`, `..`, `::`, `{`, or `|`, found `a`
[INFO] [stdout]   --> src/expr.rs:37:37
[INFO] [stdout]    |
[INFO] [stdout] 37 |             Expr::Mul(box Expr::Val a, box b) if a == 1.0   => b,
[INFO] [stdout]    |                                    -^ expected one of 10 possible tokens
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: missing `,`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `)`, `,`, `...`, `..=`, `..`, `::`, `{`, or `|`, found `a`
[INFO] [stdout]   --> src/expr.rs:35:37
[INFO] [stdout]    |
[INFO] [stdout] 35 |             Expr::Mul(box Expr::Val a, _)     if a == 0.0   => Expr::Val(0.0),
[INFO] [stdout]    |                                    -^ expected one of 10 possible tokens
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: missing `,`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `)`, `,`, `...`, `..=`, `..`, `::`, `{`, or `|`, found `a`
[INFO] [stdout]   --> src/expr.rs:38:44
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Expr::Mul(box b, box Expr::Val a) if a == 1.0   => b,
[INFO] [stdout]    |                                           -^ expected one of 10 possible tokens
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           help: missing `,`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `)`, `,`, `...`, `..=`, `..`, `::`, `{`, or `|`, found `a`
[INFO] [stdout]   --> src/expr.rs:37:37
[INFO] [stdout]    |
[INFO] [stdout] 37 |             Expr::Mul(box Expr::Val a, box b) if a == 1.0   => b,
[INFO] [stdout]    |                                    -^ expected one of 10 possible tokens
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: missing `,`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `)`, `,`, `...`, `..=`, `..`, `::`, `{`, or `|`, found `a`
[INFO] [stdout]   --> src/expr.rs:38:44
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Expr::Mul(box b, box Expr::Val a) if a == 1.0   => b,
[INFO] [stdout]    |                                           -^ expected one of 10 possible tokens
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           help: missing `,`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0532]: expected unit struct, unit variant or constant, found tuple variant `Expr::Val`
[INFO] [stdout]   --> src/expr.rs:31:27
[INFO] [stdout]    |
[INFO] [stdout] 5  |     Val(f64),
[INFO] [stdout]    |     -------- `Expr::Val` defined here
[INFO] [stdout] ...
[INFO] [stdout] 31 |             Expr::Add(box Expr::Val a, box b) if a == 0.0   => b,
[INFO] [stdout]    |                           ^^^^^^^^^ help: use the tuple variant pattern syntax instead: `Expr::Val(_)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0532]: expected unit struct, unit variant or constant, found tuple variant `Expr::Val`
[INFO] [stdout]   --> src/expr.rs:32:34
[INFO] [stdout]    |
[INFO] [stdout] 5  |     Val(f64),
[INFO] [stdout]    |     -------- `Expr::Val` defined here
[INFO] [stdout] ...
[INFO] [stdout] 32 |             Expr::Add(box b, box Expr::Val a) if a == 0.0   => b,
[INFO] [stdout]    |                                  ^^^^^^^^^ help: use the tuple variant pattern syntax instead: `Expr::Val(_)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0532]: expected unit struct, unit variant or constant, found tuple variant `Expr::Val`
[INFO] [stdout]   --> src/expr.rs:35:27
[INFO] [stdout]    |
[INFO] [stdout] 5  |     Val(f64),
[INFO] [stdout]    |     -------- `Expr::Val` defined here
[INFO] [stdout] ...
[INFO] [stdout] 35 |             Expr::Mul(box Expr::Val a, _)     if a == 0.0   => Expr::Val(0.0),
[INFO] [stdout]    |                           ^^^^^^^^^ help: use the tuple variant pattern syntax instead: `Expr::Val(_)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0532]: expected unit struct, unit variant or constant, found tuple variant `Expr::Val`
[INFO] [stdout]   --> src/expr.rs:36:30
[INFO] [stdout]    |
[INFO] [stdout] 5  |     Val(f64),
[INFO] [stdout]    |     -------- `Expr::Val` defined here
[INFO] [stdout] ...
[INFO] [stdout] 36 |             Expr::Mul(_, box Expr::Val)       if a == 0.0   => Expr::Val(0.0),
[INFO] [stdout]    |                              ^^^^^^^^^ help: use the tuple variant pattern syntax instead: `Expr::Val(_)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `a` in this scope
[INFO] [stdout]   --> src/expr.rs:36:50
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Expr::Mul(_, box Expr::Val)       if a == 0.0   => Expr::Val(0.0),
[INFO] [stdout]    |                                                  ^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0532]: expected unit struct, unit variant or constant, found tuple variant `Expr::Val`
[INFO] [stdout]   --> src/expr.rs:37:27
[INFO] [stdout]    |
[INFO] [stdout] 5  |     Val(f64),
[INFO] [stdout]    |     -------- `Expr::Val` defined here
[INFO] [stdout] ...
[INFO] [stdout] 37 |             Expr::Mul(box Expr::Val a, box b) if a == 1.0   => b,
[INFO] [stdout]    |                           ^^^^^^^^^ help: use the tuple variant pattern syntax instead: `Expr::Val(_)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0532]: expected unit struct, unit variant or constant, found tuple variant `Expr::Val`
[INFO] [stdout]   --> src/expr.rs:38:34
[INFO] [stdout]    |
[INFO] [stdout] 5  |     Val(f64),
[INFO] [stdout]    |     -------- `Expr::Val` defined here
[INFO] [stdout] ...
[INFO] [stdout] 38 |             Expr::Mul(box b, box Expr::Val a) if a == 1.0   => b,
[INFO] [stdout]    |                                  ^^^^^^^^^ help: use the tuple variant pattern syntax instead: `Expr::Val(_)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate-level attribute should be in the root module
[INFO] [stdout]  --> src/expr.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(box_syntax, box_patterns)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0532]: expected unit struct, unit variant or constant, found tuple variant `Expr::Val`
[INFO] [stdout]   --> src/expr.rs:31:27
[INFO] [stdout]    |
[INFO] [stdout] 5  |     Val(f64),
[INFO] [stdout]    |     -------- `Expr::Val` defined here
[INFO] [stdout] ...
[INFO] [stdout] 31 |             Expr::Add(box Expr::Val a, box b) if a == 0.0   => b,
[INFO] [stdout]    |                           ^^^^^^^^^ help: use the tuple variant pattern syntax instead: `Expr::Val(_)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0532]: expected unit struct, unit variant or constant, found tuple variant `Expr::Val`
[INFO] [stdout]   --> src/expr.rs:32:34
[INFO] [stdout]    |
[INFO] [stdout] 5  |     Val(f64),
[INFO] [stdout]    |     -------- `Expr::Val` defined here
[INFO] [stdout] ...
[INFO] [stdout] 32 |             Expr::Add(box b, box Expr::Val a) if a == 0.0   => b,
[INFO] [stdout]    |                                  ^^^^^^^^^ help: use the tuple variant pattern syntax instead: `Expr::Val(_)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0532]: expected unit struct, unit variant or constant, found tuple variant `Expr::Val`
[INFO] [stdout]   --> src/expr.rs:35:27
[INFO] [stdout]    |
[INFO] [stdout] 5  |     Val(f64),
[INFO] [stdout]    |     -------- `Expr::Val` defined here
[INFO] [stdout] ...
[INFO] [stdout] 35 |             Expr::Mul(box Expr::Val a, _)     if a == 0.0   => Expr::Val(0.0),
[INFO] [stdout]    |                           ^^^^^^^^^ help: use the tuple variant pattern syntax instead: `Expr::Val(_)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0532]: expected unit struct, unit variant or constant, found tuple variant `Expr::Val`
[INFO] [stdout]   --> src/expr.rs:36:30
[INFO] [stdout]    |
[INFO] [stdout] 5  |     Val(f64),
[INFO] [stdout]    |     -------- `Expr::Val` defined here
[INFO] [stdout] ...
[INFO] [stdout] 36 |             Expr::Mul(_, box Expr::Val)       if a == 0.0   => Expr::Val(0.0),
[INFO] [stdout]    |                              ^^^^^^^^^ help: use the tuple variant pattern syntax instead: `Expr::Val(_)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `a` in this scope
[INFO] [stdout]   --> src/expr.rs:36:50
[INFO] [stdout]    |
[INFO] [stdout] 36 |             Expr::Mul(_, box Expr::Val)       if a == 0.0   => Expr::Val(0.0),
[INFO] [stdout]    |                                                  ^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0532]: expected unit struct, unit variant or constant, found tuple variant `Expr::Val`
[INFO] [stdout]   --> src/expr.rs:37:27
[INFO] [stdout]    |
[INFO] [stdout] 5  |     Val(f64),
[INFO] [stdout]    |     -------- `Expr::Val` defined here
[INFO] [stdout] ...
[INFO] [stdout] 37 |             Expr::Mul(box Expr::Val a, box b) if a == 1.0   => b,
[INFO] [stdout]    |                           ^^^^^^^^^ help: use the tuple variant pattern syntax instead: `Expr::Val(_)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0532]: expected unit struct, unit variant or constant, found tuple variant `Expr::Val`
[INFO] [stdout]   --> src/expr.rs:38:34
[INFO] [stdout]    |
[INFO] [stdout] 5  |     Val(f64),
[INFO] [stdout]    |     -------- `Expr::Val` defined here
[INFO] [stdout] ...
[INFO] [stdout] 38 |             Expr::Mul(box b, box Expr::Val a) if a == 1.0   => b,
[INFO] [stdout]    |                                  ^^^^^^^^^ help: use the tuple variant pattern syntax instead: `Expr::Val(_)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate-level attribute should be in the root module
[INFO] [stdout]  --> src/expr.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(box_syntax, box_patterns)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0023]: this pattern has 3 fields, but the corresponding tuple variant has 2 fields
[INFO] [stdout]   --> src/expr.rs:31:23
[INFO] [stdout]    |
[INFO] [stdout] 7  |     Add(Box<Expr>, Box<Expr>),
[INFO] [stdout]    |         ---------  --------- tuple variant has 2 fields
[INFO] [stdout] ...
[INFO] [stdout] 31 |             Expr::Add(box Expr::Val a, box b) if a == 0.0   => b,
[INFO] [stdout]    |                       ^^^^^^^^^^^^^ ^  ^^^^^ expected 2 fields, found 3
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0023]: this pattern has 3 fields, but the corresponding tuple variant has 2 fields
[INFO] [stdout]   --> src/expr.rs:32:23
[INFO] [stdout]    |
[INFO] [stdout] 7  |     Add(Box<Expr>, Box<Expr>),
[INFO] [stdout]    |         ---------  --------- tuple variant has 2 fields
[INFO] [stdout] ...
[INFO] [stdout] 32 |             Expr::Add(box b, box Expr::Val a) if a == 0.0   => b,
[INFO] [stdout]    |                       ^^^^^  ^^^^^^^^^^^^^ ^ expected 2 fields, found 3
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0023]: this pattern has 3 fields, but the corresponding tuple variant has 2 fields
[INFO] [stdout]   --> src/expr.rs:35:23
[INFO] [stdout]    |
[INFO] [stdout] 8  |     Mul(Box<Expr>, Box<Expr>),
[INFO] [stdout]    |         ---------  --------- tuple variant has 2 fields
[INFO] [stdout] ...
[INFO] [stdout] 35 |             Expr::Mul(box Expr::Val a, _)     if a == 0.0   => Expr::Val(0.0),
[INFO] [stdout]    |                       ^^^^^^^^^^^^^ ^  ^ expected 2 fields, found 3
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0023]: this pattern has 3 fields, but the corresponding tuple variant has 2 fields
[INFO] [stdout]   --> src/expr.rs:37:23
[INFO] [stdout]    |
[INFO] [stdout] 8  |     Mul(Box<Expr>, Box<Expr>),
[INFO] [stdout]    |         ---------  --------- tuple variant has 2 fields
[INFO] [stdout] ...
[INFO] [stdout] 37 |             Expr::Mul(box Expr::Val a, box b) if a == 1.0   => b,
[INFO] [stdout]    |                       ^^^^^^^^^^^^^ ^  ^^^^^ expected 2 fields, found 3
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0023]: this pattern has 3 fields, but the corresponding tuple variant has 2 fields
[INFO] [stdout]   --> src/expr.rs:38:23
[INFO] [stdout]    |
[INFO] [stdout] 8  |     Mul(Box<Expr>, Box<Expr>),
[INFO] [stdout]    |         ---------  --------- tuple variant has 2 fields
[INFO] [stdout] ...
[INFO] [stdout] 38 |             Expr::Mul(box b, box Expr::Val a) if a == 1.0   => b,
[INFO] [stdout]    |                       ^^^^^  ^^^^^^^^^^^^^ ^ expected 2 fields, found 3
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 28 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0023, E0425, E0532, E0557.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0023`.
[INFO] [stdout] 
[INFO] [stdout] error[E0023]: this pattern has 3 fields, but the corresponding tuple variant has 2 fields
[INFO] [stdout]   --> src/expr.rs:31:23
[INFO] [stdout]    |
[INFO] [stdout] 7  |     Add(Box<Expr>, Box<Expr>),
[INFO] [stdout]    |         ---------  --------- tuple variant has 2 fields
[INFO] [stdout] ...
[INFO] [stdout] 31 |             Expr::Add(box Expr::Val a, box b) if a == 0.0   => b,
[INFO] [stdout]    |                       ^^^^^^^^^^^^^ ^  ^^^^^ expected 2 fields, found 3
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0023]: this pattern has 3 fields, but the corresponding tuple variant has 2 fields
[INFO] [stdout]   --> src/expr.rs:32:23
[INFO] [stdout]    |
[INFO] [stdout] 7  |     Add(Box<Expr>, Box<Expr>),
[INFO] [stdout]    |         ---------  --------- tuple variant has 2 fields
[INFO] [stdout] ...
[INFO] [stdout] 32 |             Expr::Add(box b, box Expr::Val a) if a == 0.0   => b,
[INFO] [stdout]    |                       ^^^^^  ^^^^^^^^^^^^^ ^ expected 2 fields, found 3
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0023]: this pattern has 3 fields, but the corresponding tuple variant has 2 fields
[INFO] [stdout]   --> src/expr.rs:35:23
[INFO] [stdout]    |
[INFO] [stdout] 8  |     Mul(Box<Expr>, Box<Expr>),
[INFO] [stdout]    |         ---------  --------- tuple variant has 2 fields
[INFO] [stdout] ...
[INFO] [stdout] 35 |             Expr::Mul(box Expr::Val a, _)     if a == 0.0   => Expr::Val(0.0),
[INFO] [stdout]    |                       ^^^^^^^^^^^^^ ^  ^ expected 2 fields, found 3
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0023]: this pattern has 3 fields, but the corresponding tuple variant has 2 fields
[INFO] [stdout]   --> src/expr.rs:37:23
[INFO] [stdout]    |
[INFO] [stdout] 8  |     Mul(Box<Expr>, Box<Expr>),
[INFO] [stdout]    |         ---------  --------- tuple variant has 2 fields
[INFO] [stdout] ...
[INFO] [stdout] 37 |             Expr::Mul(box Expr::Val a, box b) if a == 1.0   => b,
[INFO] [stdout]    |                       ^^^^^^^^^^^^^ ^  ^^^^^ expected 2 fields, found 3
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0023]: this pattern has 3 fields, but the corresponding tuple variant has 2 fields
[INFO] [stdout]   --> src/expr.rs:38:23
[INFO] [stdout]    |
[INFO] [stdout] 8  |     Mul(Box<Expr>, Box<Expr>),
[INFO] [stdout]    |         ---------  --------- tuple variant has 2 fields
[INFO] [stdout] ...
[INFO] [stdout] 38 |             Expr::Mul(box b, box Expr::Val a) if a == 1.0   => b,
[INFO] [stdout]    |                       ^^^^^  ^^^^^^^^^^^^^ ^ expected 2 fields, found 3
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `nc` (bin "nc") due to 29 previous errors; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: aborting due to 28 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0023, E0425, E0532, E0557.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0023`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `nc` (bin "nc" test) due to 29 previous errors; 1 warning emitted
[INFO] running `Command { std: "docker" "inspect" "cc866ea092df6c85a7271bd5731ca96cedf5435b731229b4758148dac5c21dff", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cc866ea092df6c85a7271bd5731ca96cedf5435b731229b4758148dac5c21dff", kill_on_drop: false }`
[INFO] [stdout] cc866ea092df6c85a7271bd5731ca96cedf5435b731229b4758148dac5c21dff
