[INFO] cloning repository https://github.com/jtdowney/som-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jtdowney/som-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjtdowney%2Fsom-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjtdowney%2Fsom-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2efe4a39b364bbe3d0ffbdb163ae3fb1eafad4b3
[INFO] testing jtdowney/som-rust against master#2fd6efc32704647e64d3d646d21c4c68eae100e4 for pr-149852-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjtdowney%2Fsom-rust" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jtdowney/som-rust
[INFO] finished tweaking git repo https://github.com/jtdowney/som-rust
[INFO] tweaked toml for git repo https://github.com/jtdowney/som-rust written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jtdowney/som-rust on toolchain 2fd6efc32704647e64d3d646d21c4c68eae100e4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jtdowney/som-rust 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" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "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] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 71fa2c7884a74182e451fc22b710fa140aeb9ef594164ee1555ee278c7886227
[INFO] running `Command { std: "docker" "start" "-a" "71fa2c7884a74182e451fc22b710fa140aeb9ef594164ee1555ee278c7886227", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "71fa2c7884a74182e451fc22b710fa140aeb9ef594164ee1555ee278c7886227", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "71fa2c7884a74182e451fc22b710fa140aeb9ef594164ee1555ee278c7886227", kill_on_drop: false }`
[INFO] [stdout] 71fa2c7884a74182e451fc22b710fa140aeb9ef594164ee1555ee278c7886227
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] af693ecfb6a2f50f3a15929b8ee75c1126c1ec91bdbdd39d8b102d18e630a683
[INFO] running `Command { std: "docker" "start" "-a" "af693ecfb6a2f50f3a15929b8ee75c1126c1ec91bdbdd39d8b102d18e630a683", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling som v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/compiler/lexer.rs:98:16
[INFO] [stdout]    |
[INFO] [stdout] 98 |             'a'...'z' | 'A'...'Z' => self.read_identifier(),
[INFO] [stdout]    |                ^^^ help: use `..=` for an inclusive range
[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(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/compiler/lexer.rs:98:28
[INFO] [stdout]    |
[INFO] [stdout] 98 |             'a'...'z' | 'A'...'Z' => self.read_identifier(),
[INFO] [stdout]    |                            ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/compiler/lexer.rs:99:16
[INFO] [stdout]    |
[INFO] [stdout] 99 |             '0'...'9' => self.read_number(),
[INFO] [stdout]    |                ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:204:37
[INFO] [stdout]     |
[INFO] [stdout] 204 |                         Some(c @ 'a'...'z') | Some(c @ 'A'...'Z') | Some(c @ '0'...'9') | Some(c @ ':') => {
[INFO] [stdout]     |                                     ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:204:59
[INFO] [stdout]     |
[INFO] [stdout] 204 |                         Some(c @ 'a'...'z') | Some(c @ 'A'...'Z') | Some(c @ '0'...'9') | Some(c @ ':') => {
[INFO] [stdout]     |                                                           ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:204:81
[INFO] [stdout]     |
[INFO] [stdout] 204 |                         Some(c @ 'a'...'z') | Some(c @ 'A'...'Z') | Some(c @ '0'...'9') | Some(c @ ':') => {
[INFO] [stdout]     |                                                                                 ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:243:29
[INFO] [stdout]     |
[INFO] [stdout] 243 |                 Some(c @ '0'...'9') => {
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:261:37
[INFO] [stdout]     |
[INFO] [stdout] 261 |                         Some(c @ '0'...'9') => {
[INFO] [stdout]     |                                     ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/compiler/lexer.rs:297:22
[INFO] [stdout]     |
[INFO] [stdout] 297 |             for _ in (0..count) {
[INFO] [stdout]     |                      ^        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 297 -             for _ in (0..count) {
[INFO] [stdout] 297 +             for _ in 0..count  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |         try!(self.expect(Symbol::Equal));
[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/compiler/parser.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |         try!(self.expect(Symbol::NewTerm));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 98 |         try!(self.expect(Symbol::EndTerm));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:62:20
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let name = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:64:26
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let superclass = try!(self.parse_superclass_name());
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:67:34
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let instance_variables = try!(self.parse_locals());
[INFO] [stdout]    |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:70:40
[INFO] [stdout]    |
[INFO] [stdout] 70 |             let (name, method) = match try!(self.peek(1)) {
[INFO] [stdout]    |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:71:49
[INFO] [stdout]    |
[INFO] [stdout] 71 |                 Token(Symbol::Identifier, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:72:46
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 Token(Symbol::Keyword, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:73:55
[INFO] [stdout]    |
[INFO] [stdout] 73 |                 Token(Symbol::OperatorSequence, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:74:71
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 Token(ref symbol, _) if is_binary_operator(symbol) => try!(self.parse_method()),
[INFO] [stdout]    |                                                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:84:31
[INFO] [stdout]    |
[INFO] [stdout] 84 |             class_variables = try!(self.parse_locals());
[INFO] [stdout]    |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:86:44
[INFO] [stdout]    |
[INFO] [stdout] 86 |                 let (name, method) = match try!(self.peek(1)) {
[INFO] [stdout]    |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:87:53
[INFO] [stdout]    |
[INFO] [stdout] 87 |                     Token(Symbol::Identifier, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:88:50
[INFO] [stdout]    |
[INFO] [stdout] 88 |                     Token(Symbol::Keyword, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:89:59
[INFO] [stdout]    |
[INFO] [stdout] 89 |                     Token(Symbol::OperatorSequence, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:90:75
[INFO] [stdout]    |
[INFO] [stdout] 90 |                     Token(ref symbol, _) if is_binary_operator(symbol) => try!(self.parse_method()),
[INFO] [stdout]    |                                                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |         try!(self.expect(Symbol::Equal));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:120:34
[INFO] [stdout]     |
[INFO] [stdout] 120 |         let (name, parameters) = try!(self.parse_pattern());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:130:13
[INFO] [stdout]     |
[INFO] [stdout] 130 |             try!(self.expect(Symbol::NewTerm));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 137 |             try!(self.expect(Symbol::EndTerm));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:134:25
[INFO] [stdout]     |
[INFO] [stdout] 134 |                 locals: try!(self.parse_locals()),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:135:23
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 body: try!(self.parse_block_body()),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:153:20
[INFO] [stdout]     |
[INFO] [stdout] 153 |         let name = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:158:24
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut name = try!(self.expect(Symbol::Keyword)).unwrap();
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:160:25
[INFO] [stdout]     |
[INFO] [stdout] 160 |         parameters.push(try!(self.expect(Symbol::Identifier)).unwrap());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:165:37
[INFO] [stdout]     |
[INFO] [stdout] 165 |                     parameters.push(try!(self.expect(Symbol::Identifier)).unwrap());
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 183 |         try!(self.consume(1));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:184:25
[INFO] [stdout]     |
[INFO] [stdout] 184 |         let parameter = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |             try!(self.expect(Symbol::Or));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:209:17
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 try!(self.expect(Symbol::Colon));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:210:33
[INFO] [stdout]     |
[INFO] [stdout] 210 |                 let parameter = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:214:21
[INFO] [stdout]     |
[INFO] [stdout] 214 |                     try!(self.expect(Symbol::Or));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:231:63
[INFO] [stdout]     |
[INFO] [stdout] 231 |                 Ok(Token(Symbol::Exit, _)) => statements.push(try!(self.parse_result())),
[INFO] [stdout]     |                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:232:42
[INFO] [stdout]     |
[INFO] [stdout] 232 |                 Ok(_) => statements.push(try!(self.parse_expression())),
[INFO] [stdout]     |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:248:9
[INFO] [stdout]     |
[INFO] [stdout] 248 |         try!(self.expect(Symbol::Exit));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:249:34
[INFO] [stdout]     |
[INFO] [stdout] 249 |         let statement = Box::new(try!(self.parse_expression()));
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:259:17
[INFO] [stdout]     |
[INFO] [stdout] 259 |                 try!(self.expect(Symbol::Assign));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:258:34
[INFO] [stdout]     |
[INFO] [stdout] 258 |                 assignments.push(try!(self.expect(Symbol::Identifier)).unwrap());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:271:28
[INFO] [stdout]     |
[INFO] [stdout] 271 |                 variables: try!(self.parse_assignments()),
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:272:33
[INFO] [stdout]     |
[INFO] [stdout] 272 |                 value: Box::new(try!(self.parse_expression())),
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:275:34
[INFO] [stdout]     |
[INFO] [stdout] 275 |             let mut expression = try!(self.parse_expression_primary());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:279:57
[INFO] [stdout]     |
[INFO] [stdout] 279 |                     Ok(Token(Symbol::Identifier, _)) => try!(self.parse_expression_messages(expression)),
[INFO] [stdout]     |                                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:280:54
[INFO] [stdout]     |
[INFO] [stdout] 280 |                     Ok(Token(Symbol::Keyword, _)) => try!(self.parse_expression_messages(expression)),
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:281:63
[INFO] [stdout]     |
[INFO] [stdout] 281 |                     Ok(Token(Symbol::OperatorSequence, _)) => try!(self.parse_expression_messages(expression)),
[INFO] [stdout]     |                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:282:79
[INFO] [stdout]     |
[INFO] [stdout] 282 |                     Ok(Token(ref symbol, _)) if is_binary_operator(symbol) => try!(self.parse_expression_messages(expression)),
[INFO] [stdout]     |                                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:308:32
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let Token(symbol, _) = try!(self.peek(1));
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:313:38
[INFO] [stdout]     |
[INFO] [stdout] 313 |                         expression = try!(self.parse_expression_unary_message(expression));
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:329:9
[INFO] [stdout]     |
[INFO] [stdout] 329 |         try!(self.expect(Symbol::NewBlock));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:335:9
[INFO] [stdout]     |
[INFO] [stdout] 335 |         try!(self.expect(Symbol::EndBlock));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:331:25
[INFO] [stdout]     |
[INFO] [stdout] 331 |             parameters: try!(self.parse_block_parameters()),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:332:21
[INFO] [stdout]     |
[INFO] [stdout] 332 |             locals: try!(self.parse_locals()),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:333:19
[INFO] [stdout]     |
[INFO] [stdout] 333 |             body: try!(self.parse_block_body()),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |         try!(self.expect(Symbol::NewTerm));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:343:9
[INFO] [stdout]     |
[INFO] [stdout] 343 |         try!(self.expect(Symbol::EndTerm));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:342:21
[INFO] [stdout]     |
[INFO] [stdout] 342 |         let value = try!(self.parse_expression());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:349:24
[INFO] [stdout]     |
[INFO] [stdout] 349 |         let variable = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:361:21
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let value = try!(self.expect(Symbol::String)).unwrap();
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:366:9
[INFO] [stdout]     |
[INFO] [stdout] 366 |         try!(self.expect(Symbol::Pound));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:378:9
[INFO] [stdout]     |
[INFO] [stdout] 378 |         try!(self.consume(1));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:384:9
[INFO] [stdout]     |
[INFO] [stdout] 384 |         try!(self.expect(Symbol::Minus));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:412:23
[INFO] [stdout]     |
[INFO] [stdout] 412 |         let message = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:423:37
[INFO] [stdout]     |
[INFO] [stdout] 423 |                     parameters.push(try!(self.parse_expression_formula()));
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:438:25
[INFO] [stdout]     |
[INFO] [stdout] 438 |         let mut value = try!(self.parse_expression_binary_operand());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:443:29
[INFO] [stdout]     |
[INFO] [stdout] 443 |                     value = try!(self.parse_expression_binary_message(value));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:446:29
[INFO] [stdout]     |
[INFO] [stdout] 446 |                     value = try!(self.parse_expression_binary_message(value));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:456:25
[INFO] [stdout]     |
[INFO] [stdout] 456 |         let mut value = try!(self.parse_expression_primary());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:461:29
[INFO] [stdout]     |
[INFO] [stdout] 461 |                     value = try!(self.parse_expression_unary_message(value));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:478:9
[INFO] [stdout]     |
[INFO] [stdout] 478 |         try!(self.consume(1));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:483:29
[INFO] [stdout]     |
[INFO] [stdout] 483 |             right: Box::new(try!(self.parse_expression_binary_operand())),
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/compiler/parser.rs:488:18
[INFO] [stdout]     |
[INFO] [stdout] 488 |         for _ in (self.queue.len()..n) {
[INFO] [stdout]     |                  ^                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 488 -         for _ in (self.queue.len()..n) {
[INFO] [stdout] 488 +         for _ in self.queue.len()..n  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/compiler/parser.rs:502:18
[INFO] [stdout]     |
[INFO] [stdout] 502 |         for _ in (0..n) {
[INFO] [stdout]     |                  ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 502 -         for _ in (0..n) {
[INFO] [stdout] 502 +         for _ in 0..n  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead
[INFO] [stdout]  --> src/compiler/lexer.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ascii::AsciiExt;
[INFO] [stdout]   |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ascii::AsciiExt`
[INFO] [stdout]  --> src/compiler/lexer.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ascii::AsciiExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Block` is never constructed
[INFO] [stdout]  --> src/compiler/ast.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Block {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/compiler/lexer.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |     IoError(io::Error),
[INFO] [stdout]    |     ------- ^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 22 -     IoError(io::Error),
[INFO] [stdout] 22 +     IoError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/compiler/parser.rs:301:35
[INFO] [stdout]     |
[INFO] [stdout] 301 |             Ok(t) => unreachable!(format!("token: {:#?}", t)),
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this usage of `unreachable!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `unreachable!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 301 -             Ok(t) => unreachable!(format!("token: {:#?}", t)),
[INFO] [stdout] 301 +             Ok(t) => unreachable!("token: {:#?}", t),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.29s
[INFO] running `Command { std: "docker" "inspect" "af693ecfb6a2f50f3a15929b8ee75c1126c1ec91bdbdd39d8b102d18e630a683", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "af693ecfb6a2f50f3a15929b8ee75c1126c1ec91bdbdd39d8b102d18e630a683", kill_on_drop: false }`
[INFO] [stdout] af693ecfb6a2f50f3a15929b8ee75c1126c1ec91bdbdd39d8b102d18e630a683
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c76fd649fe84d167a023efbd3b5f1728a67bb2ad37a36bfd5952a72167b074bf
[INFO] running `Command { std: "docker" "start" "-a" "c76fd649fe84d167a023efbd3b5f1728a67bb2ad37a36bfd5952a72167b074bf", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/compiler/lexer.rs:98:16
[INFO] [stdout]    |
[INFO] [stdout] 98 |             'a'...'z' | 'A'...'Z' => self.read_identifier(),
[INFO] [stdout]    |                ^^^ help: use `..=` for an inclusive range
[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(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/compiler/lexer.rs:98:28
[INFO] [stdout]    |
[INFO] [stdout] 98 |             'a'...'z' | 'A'...'Z' => self.read_identifier(),
[INFO] [stdout]    |                            ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/compiler/lexer.rs:99:16
[INFO] [stdout]    |
[INFO] [stdout] 99 |             '0'...'9' => self.read_number(),
[INFO] [stdout]    |                ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:204:37
[INFO] [stdout]     |
[INFO] [stdout] 204 |                         Some(c @ 'a'...'z') | Some(c @ 'A'...'Z') | Some(c @ '0'...'9') | Some(c @ ':') => {
[INFO] [stdout]     |                                     ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:204:59
[INFO] [stdout]     |
[INFO] [stdout] 204 |                         Some(c @ 'a'...'z') | Some(c @ 'A'...'Z') | Some(c @ '0'...'9') | Some(c @ ':') => {
[INFO] [stdout]     |                                                           ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:204:81
[INFO] [stdout]     |
[INFO] [stdout] 204 |                         Some(c @ 'a'...'z') | Some(c @ 'A'...'Z') | Some(c @ '0'...'9') | Some(c @ ':') => {
[INFO] [stdout]     |                                                                                 ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:243:29
[INFO] [stdout]     |
[INFO] [stdout] 243 |                 Some(c @ '0'...'9') => {
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:261:37
[INFO] [stdout]     |
[INFO] [stdout] 261 |                         Some(c @ '0'...'9') => {
[INFO] [stdout]     |                                     ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/compiler/lexer.rs:297:22
[INFO] [stdout]     |
[INFO] [stdout] 297 |             for _ in (0..count) {
[INFO] [stdout]     |                      ^        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 297 -             for _ in (0..count) {
[INFO] [stdout] 297 +             for _ in 0..count  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |         try!(self.expect(Symbol::Equal));
[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/compiler/parser.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |         try!(self.expect(Symbol::NewTerm));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 98 |         try!(self.expect(Symbol::EndTerm));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:62:20
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let name = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:64:26
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let superclass = try!(self.parse_superclass_name());
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:67:34
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let instance_variables = try!(self.parse_locals());
[INFO] [stdout]    |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:70:40
[INFO] [stdout]    |
[INFO] [stdout] 70 |             let (name, method) = match try!(self.peek(1)) {
[INFO] [stdout]    |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:71:49
[INFO] [stdout]    |
[INFO] [stdout] 71 |                 Token(Symbol::Identifier, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:72:46
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 Token(Symbol::Keyword, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:73:55
[INFO] [stdout]    |
[INFO] [stdout] 73 |                 Token(Symbol::OperatorSequence, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:74:71
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 Token(ref symbol, _) if is_binary_operator(symbol) => try!(self.parse_method()),
[INFO] [stdout]    |                                                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:84:31
[INFO] [stdout]    |
[INFO] [stdout] 84 |             class_variables = try!(self.parse_locals());
[INFO] [stdout]    |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:86:44
[INFO] [stdout]    |
[INFO] [stdout] 86 |                 let (name, method) = match try!(self.peek(1)) {
[INFO] [stdout]    |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:87:53
[INFO] [stdout]    |
[INFO] [stdout] 87 |                     Token(Symbol::Identifier, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:88:50
[INFO] [stdout]    |
[INFO] [stdout] 88 |                     Token(Symbol::Keyword, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:89:59
[INFO] [stdout]    |
[INFO] [stdout] 89 |                     Token(Symbol::OperatorSequence, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:90:75
[INFO] [stdout]    |
[INFO] [stdout] 90 |                     Token(ref symbol, _) if is_binary_operator(symbol) => try!(self.parse_method()),
[INFO] [stdout]    |                                                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |         try!(self.expect(Symbol::Equal));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:120:34
[INFO] [stdout]     |
[INFO] [stdout] 120 |         let (name, parameters) = try!(self.parse_pattern());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:130:13
[INFO] [stdout]     |
[INFO] [stdout] 130 |             try!(self.expect(Symbol::NewTerm));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 137 |             try!(self.expect(Symbol::EndTerm));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:134:25
[INFO] [stdout]     |
[INFO] [stdout] 134 |                 locals: try!(self.parse_locals()),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:135:23
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 body: try!(self.parse_block_body()),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:153:20
[INFO] [stdout]     |
[INFO] [stdout] 153 |         let name = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:158:24
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut name = try!(self.expect(Symbol::Keyword)).unwrap();
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:160:25
[INFO] [stdout]     |
[INFO] [stdout] 160 |         parameters.push(try!(self.expect(Symbol::Identifier)).unwrap());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:165:37
[INFO] [stdout]     |
[INFO] [stdout] 165 |                     parameters.push(try!(self.expect(Symbol::Identifier)).unwrap());
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 183 |         try!(self.consume(1));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:184:25
[INFO] [stdout]     |
[INFO] [stdout] 184 |         let parameter = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |             try!(self.expect(Symbol::Or));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:209:17
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 try!(self.expect(Symbol::Colon));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:210:33
[INFO] [stdout]     |
[INFO] [stdout] 210 |                 let parameter = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:214:21
[INFO] [stdout]     |
[INFO] [stdout] 214 |                     try!(self.expect(Symbol::Or));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:231:63
[INFO] [stdout]     |
[INFO] [stdout] 231 |                 Ok(Token(Symbol::Exit, _)) => statements.push(try!(self.parse_result())),
[INFO] [stdout]     |                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:232:42
[INFO] [stdout]     |
[INFO] [stdout] 232 |                 Ok(_) => statements.push(try!(self.parse_expression())),
[INFO] [stdout]     |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:248:9
[INFO] [stdout]     |
[INFO] [stdout] 248 |         try!(self.expect(Symbol::Exit));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:249:34
[INFO] [stdout]     |
[INFO] [stdout] 249 |         let statement = Box::new(try!(self.parse_expression()));
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:259:17
[INFO] [stdout]     |
[INFO] [stdout] 259 |                 try!(self.expect(Symbol::Assign));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:258:34
[INFO] [stdout]     |
[INFO] [stdout] 258 |                 assignments.push(try!(self.expect(Symbol::Identifier)).unwrap());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:271:28
[INFO] [stdout]     |
[INFO] [stdout] 271 |                 variables: try!(self.parse_assignments()),
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:272:33
[INFO] [stdout]     |
[INFO] [stdout] 272 |                 value: Box::new(try!(self.parse_expression())),
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:275:34
[INFO] [stdout]     |
[INFO] [stdout] 275 |             let mut expression = try!(self.parse_expression_primary());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:279:57
[INFO] [stdout]     |
[INFO] [stdout] 279 |                     Ok(Token(Symbol::Identifier, _)) => try!(self.parse_expression_messages(expression)),
[INFO] [stdout]     |                                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:280:54
[INFO] [stdout]     |
[INFO] [stdout] 280 |                     Ok(Token(Symbol::Keyword, _)) => try!(self.parse_expression_messages(expression)),
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:281:63
[INFO] [stdout]     |
[INFO] [stdout] 281 |                     Ok(Token(Symbol::OperatorSequence, _)) => try!(self.parse_expression_messages(expression)),
[INFO] [stdout]     |                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:282:79
[INFO] [stdout]     |
[INFO] [stdout] 282 |                     Ok(Token(ref symbol, _)) if is_binary_operator(symbol) => try!(self.parse_expression_messages(expression)),
[INFO] [stdout]     |                                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:308:32
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let Token(symbol, _) = try!(self.peek(1));
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:313:38
[INFO] [stdout]     |
[INFO] [stdout] 313 |                         expression = try!(self.parse_expression_unary_message(expression));
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:329:9
[INFO] [stdout]     |
[INFO] [stdout] 329 |         try!(self.expect(Symbol::NewBlock));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:335:9
[INFO] [stdout]     |
[INFO] [stdout] 335 |         try!(self.expect(Symbol::EndBlock));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:331:25
[INFO] [stdout]     |
[INFO] [stdout] 331 |             parameters: try!(self.parse_block_parameters()),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:332:21
[INFO] [stdout]     |
[INFO] [stdout] 332 |             locals: try!(self.parse_locals()),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:333:19
[INFO] [stdout]     |
[INFO] [stdout] 333 |             body: try!(self.parse_block_body()),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |         try!(self.expect(Symbol::NewTerm));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:343:9
[INFO] [stdout]     |
[INFO] [stdout] 343 |         try!(self.expect(Symbol::EndTerm));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:342:21
[INFO] [stdout]     |
[INFO] [stdout] 342 |         let value = try!(self.parse_expression());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:349:24
[INFO] [stdout]     |
[INFO] [stdout] 349 |         let variable = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:361:21
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let value = try!(self.expect(Symbol::String)).unwrap();
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:366:9
[INFO] [stdout]     |
[INFO] [stdout] 366 |         try!(self.expect(Symbol::Pound));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:378:9
[INFO] [stdout]     |
[INFO] [stdout] 378 |         try!(self.consume(1));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:384:9
[INFO] [stdout]     |
[INFO] [stdout] 384 |         try!(self.expect(Symbol::Minus));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:412:23
[INFO] [stdout]     |
[INFO] [stdout] 412 |         let message = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:423:37
[INFO] [stdout]     |
[INFO] [stdout] 423 |                     parameters.push(try!(self.parse_expression_formula()));
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:438:25
[INFO] [stdout]     |
[INFO] [stdout] 438 |         let mut value = try!(self.parse_expression_binary_operand());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:443:29
[INFO] [stdout]     |
[INFO] [stdout] 443 |                     value = try!(self.parse_expression_binary_message(value));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:446:29
[INFO] [stdout]     |
[INFO] [stdout] 446 |                     value = try!(self.parse_expression_binary_message(value));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:456:25
[INFO] [stdout]     |
[INFO] [stdout] 456 |         let mut value = try!(self.parse_expression_primary());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:461:29
[INFO] [stdout]     |
[INFO] [stdout] 461 |                     value = try!(self.parse_expression_unary_message(value));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:478:9
[INFO] [stdout]     |
[INFO] [stdout] 478 |         try!(self.consume(1));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:483:29
[INFO] [stdout]     |
[INFO] [stdout] 483 |             right: Box::new(try!(self.parse_expression_binary_operand())),
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/compiler/parser.rs:488:18
[INFO] [stdout]     |
[INFO] [stdout] 488 |         for _ in (self.queue.len()..n) {
[INFO] [stdout]     |                  ^                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 488 -         for _ in (self.queue.len()..n) {
[INFO] [stdout] 488 +         for _ in self.queue.len()..n  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/compiler/parser.rs:502:18
[INFO] [stdout]     |
[INFO] [stdout] 502 |         for _ in (0..n) {
[INFO] [stdout]     |                  ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 502 -         for _ in (0..n) {
[INFO] [stdout] 502 +         for _ in 0..n  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead
[INFO] [stdout]  --> src/compiler/lexer.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ascii::AsciiExt;
[INFO] [stdout]   |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ascii::AsciiExt`
[INFO] [stdout]  --> src/compiler/lexer.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ascii::AsciiExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Block` is never constructed
[INFO] [stdout]  --> src/compiler/ast.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Block {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/compiler/lexer.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |     IoError(io::Error),
[INFO] [stdout]    |     ------- ^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 22 -     IoError(io::Error),
[INFO] [stdout] 22 +     IoError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/compiler/parser.rs:301:35
[INFO] [stdout]     |
[INFO] [stdout] 301 |             Ok(t) => unreachable!(format!("token: {:#?}", t)),
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this usage of `unreachable!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `unreachable!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 301 -             Ok(t) => unreachable!(format!("token: {:#?}", t)),
[INFO] [stdout] 301 +             Ok(t) => unreachable!("token: {:#?}", t),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling som v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/compiler/lexer.rs:98:16
[INFO] [stdout]    |
[INFO] [stdout] 98 |             'a'...'z' | 'A'...'Z' => self.read_identifier(),
[INFO] [stdout]    |                ^^^ help: use `..=` for an inclusive range
[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(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/compiler/lexer.rs:98:28
[INFO] [stdout]    |
[INFO] [stdout] 98 |             'a'...'z' | 'A'...'Z' => self.read_identifier(),
[INFO] [stdout]    |                            ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/compiler/lexer.rs:99:16
[INFO] [stdout]    |
[INFO] [stdout] 99 |             '0'...'9' => self.read_number(),
[INFO] [stdout]    |                ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:204:37
[INFO] [stdout]     |
[INFO] [stdout] 204 |                         Some(c @ 'a'...'z') | Some(c @ 'A'...'Z') | Some(c @ '0'...'9') | Some(c @ ':') => {
[INFO] [stdout]     |                                     ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:204:59
[INFO] [stdout]     |
[INFO] [stdout] 204 |                         Some(c @ 'a'...'z') | Some(c @ 'A'...'Z') | Some(c @ '0'...'9') | Some(c @ ':') => {
[INFO] [stdout]     |                                                           ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:204:81
[INFO] [stdout]     |
[INFO] [stdout] 204 |                         Some(c @ 'a'...'z') | Some(c @ 'A'...'Z') | Some(c @ '0'...'9') | Some(c @ ':') => {
[INFO] [stdout]     |                                                                                 ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:243:29
[INFO] [stdout]     |
[INFO] [stdout] 243 |                 Some(c @ '0'...'9') => {
[INFO] [stdout]     |                             ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/compiler/lexer.rs:261:37
[INFO] [stdout]     |
[INFO] [stdout] 261 |                         Some(c @ '0'...'9') => {
[INFO] [stdout]     |                                     ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/compiler/lexer.rs:297:22
[INFO] [stdout]     |
[INFO] [stdout] 297 |             for _ in (0..count) {
[INFO] [stdout]     |                      ^        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 297 -             for _ in (0..count) {
[INFO] [stdout] 297 +             for _ in 0..count  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/compiler/lexer.rs:499:80
[INFO] [stdout]     |
[INFO] [stdout] 499 |         assert_eq!(lexer.read_token().unwrap(), Token(Symbol::Identifier, Some(("run".to_string()))));
[INFO] [stdout]     |                                                                                ^                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 499 -         assert_eq!(lexer.read_token().unwrap(), Token(Symbol::Identifier, Some(("run".to_string()))));
[INFO] [stdout] 499 +         assert_eq!(lexer.read_token().unwrap(), Token(Symbol::Identifier, Some("run".to_string() )));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |         try!(self.expect(Symbol::Equal));
[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/compiler/parser.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |         try!(self.expect(Symbol::NewTerm));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 98 |         try!(self.expect(Symbol::EndTerm));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:62:20
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let name = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:64:26
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let superclass = try!(self.parse_superclass_name());
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:67:34
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let instance_variables = try!(self.parse_locals());
[INFO] [stdout]    |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:70:40
[INFO] [stdout]    |
[INFO] [stdout] 70 |             let (name, method) = match try!(self.peek(1)) {
[INFO] [stdout]    |                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:71:49
[INFO] [stdout]    |
[INFO] [stdout] 71 |                 Token(Symbol::Identifier, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:72:46
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 Token(Symbol::Keyword, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:73:55
[INFO] [stdout]    |
[INFO] [stdout] 73 |                 Token(Symbol::OperatorSequence, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:74:71
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 Token(ref symbol, _) if is_binary_operator(symbol) => try!(self.parse_method()),
[INFO] [stdout]    |                                                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:84:31
[INFO] [stdout]    |
[INFO] [stdout] 84 |             class_variables = try!(self.parse_locals());
[INFO] [stdout]    |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:86:44
[INFO] [stdout]    |
[INFO] [stdout] 86 |                 let (name, method) = match try!(self.peek(1)) {
[INFO] [stdout]    |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:87:53
[INFO] [stdout]    |
[INFO] [stdout] 87 |                     Token(Symbol::Identifier, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:88:50
[INFO] [stdout]    |
[INFO] [stdout] 88 |                     Token(Symbol::Keyword, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:89:59
[INFO] [stdout]    |
[INFO] [stdout] 89 |                     Token(Symbol::OperatorSequence, _) => try!(self.parse_method()),
[INFO] [stdout]    |                                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler/parser.rs:90:75
[INFO] [stdout]    |
[INFO] [stdout] 90 |                     Token(ref symbol, _) if is_binary_operator(symbol) => try!(self.parse_method()),
[INFO] [stdout]    |                                                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |         try!(self.expect(Symbol::Equal));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:120:34
[INFO] [stdout]     |
[INFO] [stdout] 120 |         let (name, parameters) = try!(self.parse_pattern());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:130:13
[INFO] [stdout]     |
[INFO] [stdout] 130 |             try!(self.expect(Symbol::NewTerm));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 137 |             try!(self.expect(Symbol::EndTerm));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:134:25
[INFO] [stdout]     |
[INFO] [stdout] 134 |                 locals: try!(self.parse_locals()),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:135:23
[INFO] [stdout]     |
[INFO] [stdout] 135 |                 body: try!(self.parse_block_body()),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:153:20
[INFO] [stdout]     |
[INFO] [stdout] 153 |         let name = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:158:24
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut name = try!(self.expect(Symbol::Keyword)).unwrap();
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:160:25
[INFO] [stdout]     |
[INFO] [stdout] 160 |         parameters.push(try!(self.expect(Symbol::Identifier)).unwrap());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:165:37
[INFO] [stdout]     |
[INFO] [stdout] 165 |                     parameters.push(try!(self.expect(Symbol::Identifier)).unwrap());
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 183 |         try!(self.consume(1));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:184:25
[INFO] [stdout]     |
[INFO] [stdout] 184 |         let parameter = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |             try!(self.expect(Symbol::Or));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:209:17
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 try!(self.expect(Symbol::Colon));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:210:33
[INFO] [stdout]     |
[INFO] [stdout] 210 |                 let parameter = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:214:21
[INFO] [stdout]     |
[INFO] [stdout] 214 |                     try!(self.expect(Symbol::Or));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:231:63
[INFO] [stdout]     |
[INFO] [stdout] 231 |                 Ok(Token(Symbol::Exit, _)) => statements.push(try!(self.parse_result())),
[INFO] [stdout]     |                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:232:42
[INFO] [stdout]     |
[INFO] [stdout] 232 |                 Ok(_) => statements.push(try!(self.parse_expression())),
[INFO] [stdout]     |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:248:9
[INFO] [stdout]     |
[INFO] [stdout] 248 |         try!(self.expect(Symbol::Exit));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:249:34
[INFO] [stdout]     |
[INFO] [stdout] 249 |         let statement = Box::new(try!(self.parse_expression()));
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:259:17
[INFO] [stdout]     |
[INFO] [stdout] 259 |                 try!(self.expect(Symbol::Assign));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:258:34
[INFO] [stdout]     |
[INFO] [stdout] 258 |                 assignments.push(try!(self.expect(Symbol::Identifier)).unwrap());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:271:28
[INFO] [stdout]     |
[INFO] [stdout] 271 |                 variables: try!(self.parse_assignments()),
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:272:33
[INFO] [stdout]     |
[INFO] [stdout] 272 |                 value: Box::new(try!(self.parse_expression())),
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:275:34
[INFO] [stdout]     |
[INFO] [stdout] 275 |             let mut expression = try!(self.parse_expression_primary());
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:279:57
[INFO] [stdout]     |
[INFO] [stdout] 279 |                     Ok(Token(Symbol::Identifier, _)) => try!(self.parse_expression_messages(expression)),
[INFO] [stdout]     |                                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:280:54
[INFO] [stdout]     |
[INFO] [stdout] 280 |                     Ok(Token(Symbol::Keyword, _)) => try!(self.parse_expression_messages(expression)),
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:281:63
[INFO] [stdout]     |
[INFO] [stdout] 281 |                     Ok(Token(Symbol::OperatorSequence, _)) => try!(self.parse_expression_messages(expression)),
[INFO] [stdout]     |                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:282:79
[INFO] [stdout]     |
[INFO] [stdout] 282 |                     Ok(Token(ref symbol, _)) if is_binary_operator(symbol) => try!(self.parse_expression_messages(expression)),
[INFO] [stdout]     |                                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:308:32
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let Token(symbol, _) = try!(self.peek(1));
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:313:38
[INFO] [stdout]     |
[INFO] [stdout] 313 |                         expression = try!(self.parse_expression_unary_message(expression));
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:329:9
[INFO] [stdout]     |
[INFO] [stdout] 329 |         try!(self.expect(Symbol::NewBlock));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:335:9
[INFO] [stdout]     |
[INFO] [stdout] 335 |         try!(self.expect(Symbol::EndBlock));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:331:25
[INFO] [stdout]     |
[INFO] [stdout] 331 |             parameters: try!(self.parse_block_parameters()),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:332:21
[INFO] [stdout]     |
[INFO] [stdout] 332 |             locals: try!(self.parse_locals()),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:333:19
[INFO] [stdout]     |
[INFO] [stdout] 333 |             body: try!(self.parse_block_body()),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |         try!(self.expect(Symbol::NewTerm));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:343:9
[INFO] [stdout]     |
[INFO] [stdout] 343 |         try!(self.expect(Symbol::EndTerm));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:342:21
[INFO] [stdout]     |
[INFO] [stdout] 342 |         let value = try!(self.parse_expression());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:349:24
[INFO] [stdout]     |
[INFO] [stdout] 349 |         let variable = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:361:21
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let value = try!(self.expect(Symbol::String)).unwrap();
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:366:9
[INFO] [stdout]     |
[INFO] [stdout] 366 |         try!(self.expect(Symbol::Pound));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:378:9
[INFO] [stdout]     |
[INFO] [stdout] 378 |         try!(self.consume(1));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:384:9
[INFO] [stdout]     |
[INFO] [stdout] 384 |         try!(self.expect(Symbol::Minus));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:412:23
[INFO] [stdout]     |
[INFO] [stdout] 412 |         let message = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:423:37
[INFO] [stdout]     |
[INFO] [stdout] 423 |                     parameters.push(try!(self.parse_expression_formula()));
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:438:25
[INFO] [stdout]     |
[INFO] [stdout] 438 |         let mut value = try!(self.parse_expression_binary_operand());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:443:29
[INFO] [stdout]     |
[INFO] [stdout] 443 |                     value = try!(self.parse_expression_binary_message(value));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:446:29
[INFO] [stdout]     |
[INFO] [stdout] 446 |                     value = try!(self.parse_expression_binary_message(value));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:456:25
[INFO] [stdout]     |
[INFO] [stdout] 456 |         let mut value = try!(self.parse_expression_primary());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:461:29
[INFO] [stdout]     |
[INFO] [stdout] 461 |                     value = try!(self.parse_expression_unary_message(value));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:478:9
[INFO] [stdout]     |
[INFO] [stdout] 478 |         try!(self.consume(1));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/compiler/parser.rs:483:29
[INFO] [stdout]     |
[INFO] [stdout] 483 |             right: Box::new(try!(self.parse_expression_binary_operand())),
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/compiler/parser.rs:488:18
[INFO] [stdout]     |
[INFO] [stdout] 488 |         for _ in (self.queue.len()..n) {
[INFO] [stdout]     |                  ^                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 488 -         for _ in (self.queue.len()..n) {
[INFO] [stdout] 488 +         for _ in self.queue.len()..n  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/compiler/parser.rs:502:18
[INFO] [stdout]     |
[INFO] [stdout] 502 |         for _ in (0..n) {
[INFO] [stdout]     |                  ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 502 -         for _ in (0..n) {
[INFO] [stdout] 502 +         for _ in 0..n  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead
[INFO] [stdout]  --> src/compiler/lexer.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ascii::AsciiExt;
[INFO] [stdout]   |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ascii::AsciiExt`
[INFO] [stdout]  --> src/compiler/lexer.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ascii::AsciiExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Block` is never constructed
[INFO] [stdout]  --> src/compiler/ast.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Block {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/compiler/lexer.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |     IoError(io::Error),
[INFO] [stdout]    |     ------- ^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 22 -     IoError(io::Error),
[INFO] [stdout] 22 +     IoError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/compiler/parser.rs:301:35
[INFO] [stdout]     |
[INFO] [stdout] 301 |             Ok(t) => unreachable!(format!("token: {:#?}", t)),
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this usage of `unreachable!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `unreachable!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 301 -             Ok(t) => unreachable!(format!("token: {:#?}", t)),
[INFO] [stdout] 301 +             Ok(t) => unreachable!("token: {:#?}", t),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.57s
[INFO] running `Command { std: "docker" "inspect" "c76fd649fe84d167a023efbd3b5f1728a67bb2ad37a36bfd5952a72167b074bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c76fd649fe84d167a023efbd3b5f1728a67bb2ad37a36bfd5952a72167b074bf", kill_on_drop: false }`
[INFO] [stdout] c76fd649fe84d167a023efbd3b5f1728a67bb2ad37a36bfd5952a72167b074bf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 1e839511709daf94215921d71d9ce868d5ddba1cc7c3da0ac5b616a6e88af3b3
[INFO] running `Command { std: "docker" "start" "-a" "1e839511709daf94215921d71d9ce868d5ddba1cc7c3da0ac5b616a6e88af3b3", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/compiler/lexer.rs:98:16
[INFO] [stderr]    |
[INFO] [stderr] 98 |             'a'...'z' | 'A'...'Z' => self.read_identifier(),
[INFO] [stderr]    |                ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/compiler/lexer.rs:98:28
[INFO] [stderr]    |
[INFO] [stderr] 98 |             'a'...'z' | 'A'...'Z' => self.read_identifier(),
[INFO] [stderr]    |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/compiler/lexer.rs:99:16
[INFO] [stderr]    |
[INFO] [stderr] 99 |             '0'...'9' => self.read_number(),
[INFO] [stderr]    |                ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/compiler/lexer.rs:204:37
[INFO] [stderr]     |
[INFO] [stderr] 204 |                         Some(c @ 'a'...'z') | Some(c @ 'A'...'Z') | Some(c @ '0'...'9') | Some(c @ ':') => {
[INFO] [stderr]     |                                     ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/compiler/lexer.rs:204:59
[INFO] [stderr]     |
[INFO] [stderr] 204 |                         Some(c @ 'a'...'z') | Some(c @ 'A'...'Z') | Some(c @ '0'...'9') | Some(c @ ':') => {
[INFO] [stderr]     |                                                           ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/compiler/lexer.rs:204:81
[INFO] [stderr]     |
[INFO] [stderr] 204 |                         Some(c @ 'a'...'z') | Some(c @ 'A'...'Z') | Some(c @ '0'...'9') | Some(c @ ':') => {
[INFO] [stderr]     |                                                                                 ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/compiler/lexer.rs:243:29
[INFO] [stderr]     |
[INFO] [stderr] 243 |                 Some(c @ '0'...'9') => {
[INFO] [stderr]     |                             ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/compiler/lexer.rs:261:37
[INFO] [stderr]     |
[INFO] [stderr] 261 |                         Some(c @ '0'...'9') => {
[INFO] [stderr]     |                                     ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stderr]    --> src/compiler/lexer.rs:297:22
[INFO] [stderr]     |
[INFO] [stderr] 297 |             for _ in (0..count) {
[INFO] [stderr]     |                      ^        ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 297 -             for _ in (0..count) {
[INFO] [stderr] 297 +             for _ in 0..count  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:63:9
[INFO] [stderr]    |
[INFO] [stderr] 63 |         try!(self.expect(Symbol::Equal));
[INFO] [stderr]    |         ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:65:9
[INFO] [stderr]    |
[INFO] [stderr] 65 |         try!(self.expect(Symbol::NewTerm));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:98:9
[INFO] [stderr]    |
[INFO] [stderr] 98 |         try!(self.expect(Symbol::EndTerm));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:62:20
[INFO] [stderr]    |
[INFO] [stderr] 62 |         let name = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stderr]    |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:64:26
[INFO] [stderr]    |
[INFO] [stderr] 64 |         let superclass = try!(self.parse_superclass_name());
[INFO] [stderr]    |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:67:34
[INFO] [stderr]    |
[INFO] [stderr] 67 |         let instance_variables = try!(self.parse_locals());
[INFO] [stderr]    |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:70:40
[INFO] [stderr]    |
[INFO] [stderr] 70 |             let (name, method) = match try!(self.peek(1)) {
[INFO] [stderr]    |                                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:71:49
[INFO] [stderr]    |
[INFO] [stderr] 71 |                 Token(Symbol::Identifier, _) => try!(self.parse_method()),
[INFO] [stderr]    |                                                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:72:46
[INFO] [stderr]    |
[INFO] [stderr] 72 |                 Token(Symbol::Keyword, _) => try!(self.parse_method()),
[INFO] [stderr]    |                                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:73:55
[INFO] [stderr]    |
[INFO] [stderr] 73 |                 Token(Symbol::OperatorSequence, _) => try!(self.parse_method()),
[INFO] [stderr]    |                                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:74:71
[INFO] [stderr]    |
[INFO] [stderr] 74 |                 Token(ref symbol, _) if is_binary_operator(symbol) => try!(self.parse_method()),
[INFO] [stderr]    |                                                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:84:31
[INFO] [stderr]    |
[INFO] [stderr] 84 |             class_variables = try!(self.parse_locals());
[INFO] [stderr]    |                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:86:44
[INFO] [stderr]    |
[INFO] [stderr] 86 |                 let (name, method) = match try!(self.peek(1)) {
[INFO] [stderr]    |                                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:87:53
[INFO] [stderr]    |
[INFO] [stderr] 87 |                     Token(Symbol::Identifier, _) => try!(self.parse_method()),
[INFO] [stderr]    |                                                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:88:50
[INFO] [stderr]    |
[INFO] [stderr] 88 |                     Token(Symbol::Keyword, _) => try!(self.parse_method()),
[INFO] [stderr]    |                                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:89:59
[INFO] [stderr]    |
[INFO] [stderr] 89 |                     Token(Symbol::OperatorSequence, _) => try!(self.parse_method()),
[INFO] [stderr]    |                                                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/compiler/parser.rs:90:75
[INFO] [stderr]    |
[INFO] [stderr] 90 |                     Token(ref symbol, _) if is_binary_operator(symbol) => try!(self.parse_method()),
[INFO] [stderr]    |                                                                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:121:9
[INFO] [stderr]     |
[INFO] [stderr] 121 |         try!(self.expect(Symbol::Equal));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:120:34
[INFO] [stderr]     |
[INFO] [stderr] 120 |         let (name, parameters) = try!(self.parse_pattern());
[INFO] [stderr]     |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:130:13
[INFO] [stderr]     |
[INFO] [stderr] 130 |             try!(self.expect(Symbol::NewTerm));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:137:13
[INFO] [stderr]     |
[INFO] [stderr] 137 |             try!(self.expect(Symbol::EndTerm));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:134:25
[INFO] [stderr]     |
[INFO] [stderr] 134 |                 locals: try!(self.parse_locals()),
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:135:23
[INFO] [stderr]     |
[INFO] [stderr] 135 |                 body: try!(self.parse_block_body()),
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:153:20
[INFO] [stderr]     |
[INFO] [stderr] 153 |         let name = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:158:24
[INFO] [stderr]     |
[INFO] [stderr] 158 |         let mut name = try!(self.expect(Symbol::Keyword)).unwrap();
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:160:25
[INFO] [stderr]     |
[INFO] [stderr] 160 |         parameters.push(try!(self.expect(Symbol::Identifier)).unwrap());
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:165:37
[INFO] [stderr]     |
[INFO] [stderr] 165 |                     parameters.push(try!(self.expect(Symbol::Identifier)).unwrap());
[INFO] [stderr]     |                                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:183:9
[INFO] [stderr]     |
[INFO] [stderr] 183 |         try!(self.consume(1));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:184:25
[INFO] [stderr]     |
[INFO] [stderr] 184 |         let parameter = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:199:13
[INFO] [stderr]     |
[INFO] [stderr] 199 |             try!(self.expect(Symbol::Or));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:209:17
[INFO] [stderr]     |
[INFO] [stderr] 209 |                 try!(self.expect(Symbol::Colon));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:210:33
[INFO] [stderr]     |
[INFO] [stderr] 210 |                 let parameter = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stderr]     |                                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:214:21
[INFO] [stderr]     |
[INFO] [stderr] 214 |                     try!(self.expect(Symbol::Or));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:231:63
[INFO] [stderr]     |
[INFO] [stderr] 231 |                 Ok(Token(Symbol::Exit, _)) => statements.push(try!(self.parse_result())),
[INFO] [stderr]     |                                                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:232:42
[INFO] [stderr]     |
[INFO] [stderr] 232 |                 Ok(_) => statements.push(try!(self.parse_expression())),
[INFO] [stderr]     |                                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:248:9
[INFO] [stderr]     |
[INFO] [stderr] 248 |         try!(self.expect(Symbol::Exit));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:249:34
[INFO] [stderr]     |
[INFO] [stderr] 249 |         let statement = Box::new(try!(self.parse_expression()));
[INFO] [stderr]     |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:259:17
[INFO] [stderr]     |
[INFO] [stderr] 259 |                 try!(self.expect(Symbol::Assign));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:258:34
[INFO] [stderr]     |
[INFO] [stderr] 258 |                 assignments.push(try!(self.expect(Symbol::Identifier)).unwrap());
[INFO] [stderr]     |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:271:28
[INFO] [stderr]     |
[INFO] [stderr] 271 |                 variables: try!(self.parse_assignments()),
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:272:33
[INFO] [stderr]     |
[INFO] [stderr] 272 |                 value: Box::new(try!(self.parse_expression())),
[INFO] [stderr]     |                                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:275:34
[INFO] [stderr]     |
[INFO] [stderr] 275 |             let mut expression = try!(self.parse_expression_primary());
[INFO] [stderr]     |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:279:57
[INFO] [stderr]     |
[INFO] [stderr] 279 |                     Ok(Token(Symbol::Identifier, _)) => try!(self.parse_expression_messages(expression)),
[INFO] [stderr]     |                                                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:280:54
[INFO] [stderr]     |
[INFO] [stderr] 280 |                     Ok(Token(Symbol::Keyword, _)) => try!(self.parse_expression_messages(expression)),
[INFO] [stderr]     |                                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:281:63
[INFO] [stderr]     |
[INFO] [stderr] 281 |                     Ok(Token(Symbol::OperatorSequence, _)) => try!(self.parse_expression_messages(expression)),
[INFO] [stderr]     |                                                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:282:79
[INFO] [stderr]     |
[INFO] [stderr] 282 |                     Ok(Token(ref symbol, _)) if is_binary_operator(symbol) => try!(self.parse_expression_messages(expression)),
[INFO] [stderr]     |                                                                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:308:32
[INFO] [stderr]     |
[INFO] [stderr] 308 |         let Token(symbol, _) = try!(self.peek(1));
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:313:38
[INFO] [stderr]     |
[INFO] [stderr] 313 |                         expression = try!(self.parse_expression_unary_message(expression));
[INFO] [stderr]     |                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:329:9
[INFO] [stderr]     |
[INFO] [stderr] 329 |         try!(self.expect(Symbol::NewBlock));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:335:9
[INFO] [stderr]     |
[INFO] [stderr] 335 |         try!(self.expect(Symbol::EndBlock));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:331:25
[INFO] [stderr]     |
[INFO] [stderr] 331 |             parameters: try!(self.parse_block_parameters()),
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:332:21
[INFO] [stderr]     |
[INFO] [stderr] 332 |             locals: try!(self.parse_locals()),
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:333:19
[INFO] [stderr]     |
[INFO] [stderr] 333 |             body: try!(self.parse_block_body()),
[INFO] [stderr]     |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:341:9
[INFO] [stderr]     |
[INFO] [stderr] 341 |         try!(self.expect(Symbol::NewTerm));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:343:9
[INFO] [stderr]     |
[INFO] [stderr] 343 |         try!(self.expect(Symbol::EndTerm));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:342:21
[INFO] [stderr]     |
[INFO] [stderr] 342 |         let value = try!(self.parse_expression());
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:349:24
[INFO] [stderr]     |
[INFO] [stderr] 349 |         let variable = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:361:21
[INFO] [stderr]     |
[INFO] [stderr] 361 |         let value = try!(self.expect(Symbol::String)).unwrap();
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:366:9
[INFO] [stderr]     |
[INFO] [stderr] 366 |         try!(self.expect(Symbol::Pound));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:378:9
[INFO] [stderr]     |
[INFO] [stderr] 378 |         try!(self.consume(1));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:384:9
[INFO] [stderr]     |
[INFO] [stderr] 384 |         try!(self.expect(Symbol::Minus));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:412:23
[INFO] [stderr]     |
[INFO] [stderr] 412 |         let message = try!(self.expect(Symbol::Identifier)).unwrap();
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:423:37
[INFO] [stderr]     |
[INFO] [stderr] 423 |                     parameters.push(try!(self.parse_expression_formula()));
[INFO] [stderr]     |                                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:438:25
[INFO] [stderr]     |
[INFO] [stderr] 438 |         let mut value = try!(self.parse_expression_binary_operand());
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:443:29
[INFO] [stderr]     |
[INFO] [stderr] 443 |                     value = try!(self.parse_expression_binary_message(value));
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:446:29
[INFO] [stderr]     |
[INFO] [stderr] 446 |                     value = try!(self.parse_expression_binary_message(value));
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:456:25
[INFO] [stderr]     |
[INFO] [stderr] 456 |         let mut value = try!(self.parse_expression_primary());
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:461:29
[INFO] [stderr]     |
[INFO] [stderr] 461 |                     value = try!(self.parse_expression_unary_message(value));
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:478:9
[INFO] [stderr]     |
[INFO] [stderr] 478 |         try!(self.consume(1));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/compiler/parser.rs:483:29
[INFO] [stderr]     |
[INFO] [stderr] 483 |             right: Box::new(try!(self.parse_expression_binary_operand())),
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stderr]    --> src/compiler/parser.rs:488:18
[INFO] [stderr]     |
[INFO] [stderr] 488 |         for _ in (self.queue.len()..n) {
[INFO] [stderr]     |                  ^                   ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 488 -         for _ in (self.queue.len()..n) {
[INFO] [stderr] 488 +         for _ in self.queue.len()..n  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stderr]    --> src/compiler/parser.rs:502:18
[INFO] [stderr]     |
[INFO] [stderr] 502 |         for _ in (0..n) {
[INFO] [stderr]     |                  ^    ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 502 -         for _ in (0..n) {
[INFO] [stderr] 502 +         for _ in 0..n  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead
[INFO] [stderr]  --> src/compiler/lexer.rs:2:17
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::ascii::AsciiExt;
[INFO] [stderr]   |                 ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::ascii::AsciiExt`
[INFO] [stderr]  --> src/compiler/lexer.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::ascii::AsciiExt;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Block` is never constructed
[INFO] [stderr]  --> src/compiler/ast.rs:4:12
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub struct Block {
[INFO] [stderr]   |            ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/compiler/lexer.rs:22:13
[INFO] [stderr]    |
[INFO] [stderr] 22 |     IoError(io::Error),
[INFO] [stderr]    |     ------- ^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 22 -     IoError(io::Error),
[INFO] [stderr] 22 +     IoError(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/compiler/parser.rs:301:35
[INFO] [stderr]     |
[INFO] [stderr] 301 |             Ok(t) => unreachable!(format!("token: {:#?}", t)),
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: this usage of `unreachable!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: the `unreachable!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]     |
[INFO] [stderr] 301 -             Ok(t) => unreachable!(format!("token: {:#?}", t)),
[INFO] [stderr] 301 +             Ok(t) => unreachable!("token: {:#?}", t),
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `som` (lib) generated 86 warnings (run `cargo fix --lib -p som` to apply 12 suggestions)
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]    --> src/compiler/lexer.rs:499:80
[INFO] [stderr]     |
[INFO] [stderr] 499 |         assert_eq!(lexer.read_token().unwrap(), Token(Symbol::Identifier, Some(("run".to_string()))));
[INFO] [stderr]     |                                                                                ^                 ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 499 -         assert_eq!(lexer.read_token().unwrap(), Token(Symbol::Identifier, Some(("run".to_string()))));
[INFO] [stderr] 499 +         assert_eq!(lexer.read_token().unwrap(), Token(Symbol::Identifier, Some("run".to_string() )));
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `som` (lib test) generated 87 warnings (86 duplicates) (run `cargo fix --lib -p som --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.10s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/som-00f68376988c9307)
[INFO] [stdout] 
[INFO] [stdout] running 61 tests
[INFO] [stdout] test compiler::lexer::tests::assignment ... ok
[INFO] [stdout] test compiler::lexer::tests::double ... ok
[INFO] [stdout] test compiler::lexer::tests::location ... ok
[INFO] [stdout] test compiler::lexer::tests::minus ... ok
[INFO] [stdout] test compiler::lexer::tests::operator_sequence ... ok
[INFO] [stdout] test compiler::lexer::tests::keyword ... ok
[INFO] [stdout] test compiler::lexer::tests::primitive ... ok
[INFO] [stdout] test compiler::lexer::tests::identifier ... ok
[INFO] [stdout] test compiler::lexer::tests::integer_and_period ... ok
[INFO] [stdout] test compiler::lexer::tests::separator ... ok
[INFO] [stdout] test compiler::lexer::tests::simple_symbols ... ok
[INFO] [stdout] test compiler::lexer::tests::simple_operators ... ok
[INFO] [stdout] test compiler::lexer::tests::skipping_comments ... ok
[INFO] [stdout] test compiler::lexer::tests::skipping_whitespace ... ok
[INFO] [stdout] test compiler::lexer::tests::three_minus ... ok
[INFO] [stdout] test compiler::lexer::tests::three_keyword_sequence ... ok
[INFO] [stdout] test compiler::lexer::tests::two_keyword_sequence ... ok
[INFO] [stdout] test compiler::lexer::tests::integer ... ok
[INFO] [stdout] test compiler::lexer::tests::lexer ... ok
[INFO] [stdout] test compiler::lexer::tests::long_separator ... ok
[INFO] [stdout] test compiler::lexer::tests::colon ... ok
[INFO] [stdout] test compiler::lexer::tests::two_minus ... ok
[INFO] [stdout] test compiler::parser::tests::keyword_message_expression ... ok
[INFO] [stdout] test compiler::parser::tests::binary_message_expression ... ok
[INFO] [stdout] test compiler::parser::tests::complex_keyword_message_expression ... ok
[INFO] [stdout] test compiler::parser::tests::literal_boolean_expression ... ok
[INFO] [stdout] test compiler::parser::tests::literal_negative_integer_expression ... ok
[INFO] [stdout] test compiler::parser::tests::literal_symbol_expression ... ok
[INFO] [stdout] test compiler::parser::tests::method_with_locals ... ok
[INFO] [stdout] test compiler::parser::tests::method_with_parameters ... ok
[INFO] [stdout] test compiler::parser::tests::multiple_unary_messages ... ok
[INFO] [stdout] test compiler::parser::tests::nested_block_expression ... ok
[INFO] [stdout] test compiler::parser::tests::nested_terms ... ok
[INFO] [stdout] test compiler::parser::tests::operator_sequence_expression ... ok
[INFO] [stdout] test compiler::parser::tests::parse_assignment ... ok
[INFO] [stdout] test compiler::parser::tests::parse_body_evaluation ... ok
[INFO] [stdout] test compiler::parser::tests::parse_error ... ok
[INFO] [stdout] test compiler::parser::tests::parse_error_position_information ... ok
[INFO] [stdout] test compiler::parser::tests::parse_method_primitive ... ok
[INFO] [stdout] test compiler::parser::tests::parse_multiple_assignment ... ok
[INFO] [stdout] test compiler::parser::tests::superclass_parsing ... ok
[INFO] [stdout] test compiler::parser::tests::unary_message_binds_higher ... ok
[INFO] [stdout] test compiler::parser::tests::unary_message_expression ... ok
[INFO] [stdout] test compiler::parser::tests::variable_expression ... ok
[INFO] [stdout] test util::peekable_buffer::tests::consume ... ok
[INFO] [stdout] test compiler::parser::tests::literal_double_expression ... ok
[INFO] [stdout] test compiler::parser::tests::literal_integer_expression ... ok
[INFO] [stdout] test util::peekable_buffer::tests::location ... ok
[INFO] [stdout] test compiler::parser::tests::literal_negative_double_expression ... ok
[INFO] [stdout] test util::peekable_buffer::tests::next_consumes_peeked ... ok
[INFO] [stdout] test compiler::parser::tests::method_with_multiple_statements ... ok
[INFO] [stdout] test compiler::parser::tests::literal_string_expression ... ok
[INFO] [stdout] test compiler::parser::tests::literal_nil_expression ... ok
[INFO] [stdout] test compiler::parser::tests::method_with_exit ... ok
[INFO] [stdout] test util::peekable_buffer::tests::next_returns_peeked ... ok
[INFO] [stdout] test util::peekable_buffer::tests::next_consumes_value ... ok
[INFO] [stdout] test util::peekable_buffer::tests::peek_returns_existing_peeked_value ... ok
[INFO] [stdout] test util::peekable_buffer::tests::next_reads_values ... ok
[INFO] [stdout] test util::peekable_buffer::tests::peek_returns_second_peeked_value ... ok
[INFO] [stderr]      Running tests/lib.rs (/opt/rustwide/target/debug/deps/lib-a1cac149b85b5197)
[INFO] [stdout] test util::peekable_buffer::tests::peek_returns_first_value ... ok
[INFO] [stdout] test util::peekable_buffer::tests::next_reloads_buffer ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 61 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr] error: test failed, to rerun pass `--test lib`
[INFO] [stdout] test compiler::parser::parse_test_cases ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- compiler::parser::parse_test_cases stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'compiler::parser::parse_test_cases' (78) panicked at tests/compiler/parser.rs:23:13:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: "Class {\n    name: \"Echo\",\n    superclass: \"Object\",\n    instance_methods: {\n        \"run:\": Native {\n            name: \"run:\",\n            parameters: [\n                \"args\",\n            ],\n            locals: [],\n            body: [\n                KeywordMessage {\n                    message: \"from:to:do:\",\n                    receiver: Variable(\n                        \"args\",\n                    ),\n                    parameters: [\n                        LiteralInteger(\n                            2,\n                        ),\n                        UnaryMessage {\n                            message: \"length\",\n                            receiver: Variable(\n                                \"args\",\n                            ),\n                        },\n                        Block {\n                            parameters: [\n                                \"arg\",\n                            ],\n                            locals: [],\n                            body: [\n                                UnaryMessage {\n                                    message: \"print\",\n                                    receiver: Variable(\n                                        \"arg\",\n                                    ),\n                                },\n                                UnaryMessage {\n                                    message: \"print\",\n                                    receiver: LiteralString(\n                                        \" \",\n                                    ),\n                                },\n                            ],\n                        },\n                    ],\n                },\n                UnaryMessage {\n                    message: \"println\",\n                    receiver: LiteralString(\n                        \"\",\n                    ),\n                },\n            ],\n        },\n    },\n    instance_variables: [],\n    class_methods: {},\n    class_variables: [],\n}"
[INFO] [stdout]  right: "Class {\n    name: \"Echo\",\n    superclass: \"Object\",\n    instance_methods: {\n        \"run:\": Native {\n            name: \"run:\",\n            parameters: [\n                \"args\"\n            ],\n            locals: [],\n            body: [\n                KeywordMessage {\n                    message: \"from:to:do:\",\n                    receiver: Variable(\n                        \"args\"\n                    ),\n                    parameters: [\n                        LiteralInteger(\n                            2\n                        ),\n                        UnaryMessage {\n                            message: \"length\",\n                            receiver: Variable(\n                                \"args\"\n                            )\n                        },\n                        Block {\n                            parameters: [\n                                \"arg\"\n                            ],\n                            locals: [],\n                            body: [\n                                UnaryMessage {\n                                    message: \"print\",\n                                    receiver: Variable(\n                                        \"arg\"\n                                    )\n                                },\n                                UnaryMessage {\n                                    message: \"print\",\n                                    receiver: LiteralString(\n                                        \" \"\n                                    )\n                                }\n                            ]\n                        }\n                    ]\n                },\n                UnaryMessage {\n                    message: \"println\",\n                    receiver: LiteralString(\n                        \"\"\n                    )\n                }\n            ]\n        }\n    },\n    instance_variables: [],\n    class_methods: {},\n    class_variables: []\n}"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x585a0f5cdc52 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x585a0f5cdc52 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized::<std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x585a0f5cdc52 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x585a0f5cdc52 - <<std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x585a0f5e37ba - <core[c5ed12ab89cc536a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x585a0f5e37ba - core[c5ed12ab89cc536a]::fmt::write
[INFO] [stdout]    6:     0x585a0f5d2cf6 - std[716c9a7a72e5c14e]::io::default_write_fmt::<alloc[9c68fdf4f4f29218]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x585a0f5d2cf6 - <alloc[9c68fdf4f4f29218]::vec::Vec<u8> as std[716c9a7a72e5c14e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x585a0f5ab9cf - <std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x585a0f5ab9cf - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x585a0f5c5d69 - std[716c9a7a72e5c14e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x585a0f56022e - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x585a0f56022e - test[64760d2bdea328cc]::test_main_with_exit_callback::<test[64760d2bdea328cc]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x585a0f5c5f22 - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x585a0f5c5f22 - std[716c9a7a72e5c14e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x585a0f5aba88 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x585a0f5a33c9 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace::<std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x585a0f5ac8dd - __rustc[4f0b026143eab78e]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x585a0f5e3ecc - core[c5ed12ab89cc536a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x585a0f5e3d83 - core[c5ed12ab89cc536a]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x585a0f5434f9 - core[c5ed12ab89cc536a]::panicking::assert_failed::<&str, &str>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x585a0f54940c - lib[8b43cf16f5f2daa6]::compiler::parser::parse_test_cases
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/compiler/parser.rs:23:13
[INFO] [stdout]   22:     0x585a0f5482a7 - lib[8b43cf16f5f2daa6]::compiler::parser::parse_test_cases::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/compiler/parser.rs:8:22
[INFO] [stdout]   23:     0x585a0f546b46 - <lib[8b43cf16f5f2daa6]::compiler::parser::parse_test_cases::{closure#0} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x585a0f5545db - <fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x585a0f5545db - test[64760d2bdea328cc]::__rust_begin_short_backtrace::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x585a0f560e3a - test[64760d2bdea328cc]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x585a0f560e3a - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x585a0f560e3a - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x585a0f560e3a - std[716c9a7a72e5c14e]::panicking::catch_unwind::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x585a0f560e3a - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x585a0f560e3a - test[64760d2bdea328cc]::run_test_in_process
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x585a0f560e3a - test[64760d2bdea328cc]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x585a0f55b304 - test[64760d2bdea328cc]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x585a0f55b304 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x585a0f563932 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x585a0f563932 - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x585a0f563932 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x585a0f563932 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x585a0f563932 - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x585a0f563932 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x585a0f563932 - <std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x585a0f5cd4ff - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn core[c5ed12ab89cc536a]::ops::function::FnOnce<(), Output = ()> + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   43:     0x585a0f5cd4ff - <std[716c9a7a72e5c14e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   44:     0x719407a99aa4 - <unknown>
[INFO] [stdout]   45:     0x719407b26a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     compiler::parser::parse_test_cases
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "1e839511709daf94215921d71d9ce868d5ddba1cc7c3da0ac5b616a6e88af3b3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1e839511709daf94215921d71d9ce868d5ddba1cc7c3da0ac5b616a6e88af3b3", kill_on_drop: false }`
[INFO] [stdout] 1e839511709daf94215921d71d9ce868d5ddba1cc7c3da0ac5b616a6e88af3b3
