[INFO] fetching crate truth 0.0.1...
[INFO] testing truth-0.0.1 against 1.91.0 for beta-1.92-2
[INFO] extracting crate truth 0.0.1 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate truth 0.0.1
[INFO] finished tweaking crates.io crate truth 0.0.1
[INFO] tweaked toml for crates.io crate truth 0.0.1 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate truth 0.0.1 on toolchain 1.91.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.91.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.91.0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.91.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 23dea0af2d18c7ba1ec5c7ca5bba587e0978538f44c2fed65a2ec3f083b8e127
[INFO] running `Command { std: "docker" "start" "-a" "23dea0af2d18c7ba1ec5c7ca5bba587e0978538f44c2fed65a2ec3f083b8e127", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "23dea0af2d18c7ba1ec5c7ca5bba587e0978538f44c2fed65a2ec3f083b8e127", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "23dea0af2d18c7ba1ec5c7ca5bba587e0978538f44c2fed65a2ec3f083b8e127", kill_on_drop: false }`
[INFO] [stdout] 23dea0af2d18c7ba1ec5c7ca5bba587e0978538f44c2fed65a2ec3f083b8e127
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 93b91fd390b7030ba032d06445d46917499e54fbd27ed3b446ef163df19a9077
[INFO] running `Command { std: "docker" "start" "-a" "93b91fd390b7030ba032d06445d46917499e54fbd27ed3b446ef163df19a9077", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling truth v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `std::num::Int`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::num::Int;
[INFO] [stdout]   |     ^^^^^^^^^^^^^ no `Int` in `num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `deriving` in this scope
[INFO] [stdout]   --> src/main.rs:68:3
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[deriving(Show)]
[INFO] [stdout]    |   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `deriving` in this scope
[INFO] [stdout]    --> src/main.rs:140:3
[INFO] [stdout]     |
[INFO] [stdout] 140 | #[deriving(Show)]
[INFO] [stdout]     |   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `deriving` in this scope
[INFO] [stdout]    --> src/main.rs:141:3
[INFO] [stdout]     |
[INFO] [stdout] 141 | #[deriving(Clone)]
[INFO] [stdout]     |   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `deriving` in this scope
[INFO] [stdout]    --> src/main.rs:156:3
[INFO] [stdout]     |
[INFO] [stdout] 156 | #[deriving(Clone)]
[INFO] [stdout]     |   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `deriving` in this scope
[INFO] [stdout]    --> src/main.rs:157:3
[INFO] [stdout]     |
[INFO] [stdout] 157 | #[deriving(Show)]
[INFO] [stdout]     |   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `deriving` in this scope
[INFO] [stdout]    --> src/main.rs:164:3
[INFO] [stdout]     |
[INFO] [stdout] 164 | #[deriving(Show)]
[INFO] [stdout]     |   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `deriving` in this scope
[INFO] [stdout]    --> src/main.rs:235:3
[INFO] [stdout]     |
[INFO] [stdout] 235 | #[deriving(Show)]
[INFO] [stdout]     |   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `deriving` in this scope
[INFO] [stdout]    --> src/main.rs:241:3
[INFO] [stdout]     |
[INFO] [stdout] 241 | #[deriving(Show)]
[INFO] [stdout]     |   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/main.rs:16:28
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn repeat(self, times: uint) -> String;
[INFO] [stdout]    |                            ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/main.rs:20:28
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn repeat(self, times: uint) -> String {
[INFO] [stdout]    |                            ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/main.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pos:    uint,
[INFO] [stdout]    |             ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/main.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |     col:    uint,
[INFO] [stdout]    |             ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/main.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |     line:   uint
[INFO] [stdout]    |             ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/main.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |     line:       uint,
[INFO] [stdout]    |                 ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/main.rs:72:18
[INFO] [stdout]    |
[INFO] [stdout] 72 |     col_range:  (uint, uint)
[INFO] [stdout]    |                  ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/main.rs:72:24
[INFO] [stdout]    |
[INFO] [stdout] 72 |     col_range:  (uint, uint)
[INFO] [stdout]    |                        ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]    --> src/main.rs:160:17
[INFO] [stdout]     |
[INFO] [stdout] 160 |     col:        uint,
[INFO] [stdout]     |                 ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]    --> src/main.rs:161:17
[INFO] [stdout]     |
[INFO] [stdout] 161 |     line:       uint
[INFO] [stdout]     |                 ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `range` in this scope
[INFO] [stdout]    --> src/main.rs:177:20
[INFO] [stdout]     |
[INFO] [stdout] 177 |         for idx in range(1u, self.components.len()) {
[INFO] [stdout]     |                    ^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this function
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::slice::range;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `range` in this scope
[INFO] [stdout]    --> src/main.rs:223:20
[INFO] [stdout]     |
[INFO] [stdout] 223 |         for num in range(0i, tests) {
[INFO] [stdout]     |                    ^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this function
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::slice::range;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `range` in this scope
[INFO] [stdout]    --> src/main.rs:225:24
[INFO] [stdout]     |
[INFO] [stdout] 225 |             for pos in range(0u, vars.len()) {
[INFO] [stdout]     |                        ^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this function
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::slice::range;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]    --> src/main.rs:260:10
[INFO] [stdout]     |
[INFO] [stdout] 260 |     pos: uint
[INFO] [stdout]     |          ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:174:19
[INFO] [stdout]     |
[INFO] [stdout] 174 |             val = try!(self.components[0].eval(env));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:178:24
[INFO] [stdout]     |
[INFO] [stdout] 178 |             let eval = try!(self.components[idx].eval(env));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:228:44
[INFO] [stdout]     |
[INFO] [stdout] 228 |             result.push((env.vars.clone(), try!(self.eval(&env))));
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:251:40
[INFO] [stdout]     |
[INFO] [stdout] 251 |             VarOrExpr::Expr(ref op) => try!(op.eval(env))
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:268:21
[INFO] [stdout]     |
[INFO] [stdout] 268 |             token = try!(lexer.next_token());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:293:28
[INFO] [stdout]     |
[INFO] [stdout] 293 |         op.components.push(try!(self.component()));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:300:40
[INFO] [stdout]     |
[INFO] [stdout] 300 |                     op.components.push(try!(self.component()));
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:322:43
[INFO] [stdout]     |
[INFO] [stdout] 322 |                     val = VarOrExpr::Expr(try!(self.parse()));
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:390:22
[INFO] [stdout]     |
[INFO] [stdout] 390 |     let mut parser = try!(Parser::new(&mut lexer));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:391:16
[INFO] [stdout]     |
[INFO] [stdout] 391 |     let root = try!(parser.parse());
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/main.rs:393:17
[INFO] [stdout]     |
[INFO] [stdout] 393 |     let table = try!(root.truth_table());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid suffix `u` for number literal
[INFO] [stdout]   --> src/main.rs:22:21
[INFO] [stdout]    |
[INFO] [stdout] 22 |         let mut i = 0u;
[INFO] [stdout]    |                     ^^ invalid suffix `u`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the suffix must be one of the numeric types (`u32`, `isize`, `f32`, etc.)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid suffix `u` for number literal
[INFO] [stdout]    --> src/main.rs:177:26
[INFO] [stdout]     |
[INFO] [stdout] 177 |         for idx in range(1u, self.components.len()) {
[INFO] [stdout]     |                          ^^ invalid suffix `u`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the suffix must be one of the numeric types (`u32`, `isize`, `f32`, etc.)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid suffix `i` for number literal
[INFO] [stdout]    --> src/main.rs:221:21
[INFO] [stdout]     |
[INFO] [stdout] 221 |         let tests = 2i.pow(vars.len());
[INFO] [stdout]     |                     ^^ invalid suffix `i`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the suffix must be one of the numeric types (`u32`, `isize`, `f32`, etc.)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid suffix `i` for number literal
[INFO] [stdout]    --> src/main.rs:223:26
[INFO] [stdout]     |
[INFO] [stdout] 223 |         for num in range(0i, tests) {
[INFO] [stdout]     |                          ^^ invalid suffix `i`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the suffix must be one of the numeric types (`u32`, `isize`, `f32`, etc.)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid suffix `u` for number literal
[INFO] [stdout]    --> src/main.rs:225:30
[INFO] [stdout]     |
[INFO] [stdout] 225 |             for pos in range(0u, vars.len()) {
[INFO] [stdout]     |                              ^^ invalid suffix `u`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the suffix must be one of the numeric types (`u32`, `isize`, `f32`, etc.)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:171:26
[INFO] [stdout]     |
[INFO] [stdout] 171 |     fn eval(&self, env: &Environment) -> Result<bool, ErrorPosition> {
[INFO] [stdout]     |                          ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 171 |     fn eval(&self, env: &dyn Environment) -> Result<bool, ErrorPosition> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/main.rs:248:26
[INFO] [stdout]     |
[INFO] [stdout] 248 |     fn eval(&self, env: &Environment) -> Result<bool, ErrorPosition> {
[INFO] [stdout]     |                          ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 248 |     fn eval(&self, env: &dyn Environment) -> Result<bool, ErrorPosition> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for struct `String` in the current scope
[INFO] [stdout]   --> src/main.rs:47:30
[INFO] [stdout]    |
[INFO] [stdout] 47 |             Some(self.source.as_slice().char_at(self.pos))
[INFO] [stdout]    |                              ^^^^^^^^ method not found in `String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `clone` found for struct `Token` in the current scope
[INFO] [stdout]    --> src/main.rs:299:39
[INFO] [stdout]     |
[INFO] [stdout] 158 | struct Token {
[INFO] [stdout]     | ------------ method `clone` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 299 |                     op.ops.push(token.clone());
[INFO] [stdout]     |                                       ^^^^^ method not found in `Token`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `clone`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Clone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `Type` doesn't implement `std::fmt::Display`
[INFO] [stdout]    --> src/main.rs:328:65
[INFO] [stdout]     |
[INFO] [stdout] 328 | ...                   format!("Unexpected token: {}", other), next.clone()
[INFO] [stdout]     |                                                  --   ^^^^^ `Type` cannot be formatted with the default formatter
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  required by this formatting parameter
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `std::fmt::Display` is not implemented for `Type`
[INFO] [stdout]    --> src/main.rs:142:1
[INFO] [stdout]     |
[INFO] [stdout] 142 | enum Type {
[INFO] [stdout]     | ^^^^^^^^^
[INFO] [stdout]     = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead
[INFO] [stdout]     = note: required for `&Type` to implement `std::fmt::Display`
[INFO] [stdout]     = note: this error originates in the macro `$crate::__export::format_args` which comes from the expansion of the macro `format` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `clone` found for struct `Token` in the current scope
[INFO] [stdout]    --> src/main.rs:328:78
[INFO] [stdout]     |
[INFO] [stdout] 158 | struct Token {
[INFO] [stdout]     | ------------ method `clone` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 328 |                                 format!("Unexpected token: {}", other), next.clone()
[INFO] [stdout]     |                                                                              ^^^^^ method not found in `Token`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `clone`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Clone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `Type` doesn't implement `std::fmt::Display`
[INFO] [stdout]    --> src/main.rs:340:57
[INFO] [stdout]     |
[INFO] [stdout] 340 |                         format!("Unexpected token: {}", other), token.clone()
[INFO] [stdout]     |                                                    --   ^^^^^ `Type` cannot be formatted with the default formatter
[INFO] [stdout]     |                                                    |
[INFO] [stdout]     |                                                    required by this formatting parameter
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `std::fmt::Display` is not implemented for `Type`
[INFO] [stdout]    --> src/main.rs:142:1
[INFO] [stdout]     |
[INFO] [stdout] 142 | enum Type {
[INFO] [stdout]     | ^^^^^^^^^
[INFO] [stdout]     = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead
[INFO] [stdout]     = note: required for `&Type` to implement `std::fmt::Display`
[INFO] [stdout]     = note: this error originates in the macro `$crate::__export::format_args` which comes from the expansion of the macro `format` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `clone` found for struct `Token` in the current scope
[INFO] [stdout]    --> src/main.rs:340:71
[INFO] [stdout]     |
[INFO] [stdout] 158 | struct Token {
[INFO] [stdout]     | ------------ method `clone` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 340 |                         format!("Unexpected token: {}", other), token.clone()
[INFO] [stdout]     |                                                                       ^^^^^ method not found in `Token`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `clone`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Clone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `val0` found for reference `&(&String, &bool)` in the current scope
[INFO] [stdout]    --> src/main.rs:407:33
[INFO] [stdout]     |
[INFO] [stdout] 407 |         sorted.sort_by(|a, b| a.val0().cmp(b.val0()));
[INFO] [stdout]     |                                 ^^^^ method not found in `&(&String, &bool)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `val0` found for reference `&(&String, &bool)` in the current scope
[INFO] [stdout]    --> src/main.rs:407:46
[INFO] [stdout]     |
[INFO] [stdout] 407 |         sorted.sort_by(|a, b| a.val0().cmp(b.val0()));
[INFO] [stdout]     |                                              ^^^^ method not found in `&(&String, &bool)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `Operation` doesn't implement `std::fmt::Display`
[INFO] [stdout]    --> src/main.rs:414:36
[INFO] [stdout]     |
[INFO] [stdout] 414 |     println!("> Parsed tree:\n{}", root);
[INFO] [stdout]     |                               --   ^^^^ `Operation` cannot be formatted with the default formatter
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               required by this formatting parameter
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `std::fmt::Display` is not implemented for `Operation`
[INFO] [stdout]    --> src/main.rs:165:1
[INFO] [stdout]     |
[INFO] [stdout] 165 | struct Operation {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead
[INFO] [stdout]     = note: this error originates in the macro `$crate::format_args_nl` which comes from the expansion of the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `Vec<String>` doesn't implement `std::fmt::Display`
[INFO] [stdout]    --> src/main.rs:415:33
[INFO] [stdout]     |
[INFO] [stdout] 415 |     println!("> Variables: {}", vars);
[INFO] [stdout]     |                            --   ^^^^ `Vec<String>` cannot be formatted with the default formatter
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            required by this formatting parameter
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `std::fmt::Display` is not implemented for `Vec<String>`
[INFO] [stdout]     = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead
[INFO] [stdout]     = note: this error originates in the macro `$crate::format_args_nl` which comes from the expansion of the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0412, E0425, E0432, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `truth` (bin "truth") due to 38 previous errors; 13 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "93b91fd390b7030ba032d06445d46917499e54fbd27ed3b446ef163df19a9077", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "93b91fd390b7030ba032d06445d46917499e54fbd27ed3b446ef163df19a9077", kill_on_drop: false }`
[INFO] [stdout] 93b91fd390b7030ba032d06445d46917499e54fbd27ed3b446ef163df19a9077
