[INFO] fetching crate piske 0.1.2...
[INFO] building piske-0.1.2 against try#d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 for pr-146237-1
[INFO] extracting crate piske 0.1.2 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate piske 0.1.2
[INFO] finished tweaking crates.io crate piske 0.1.2
[INFO] tweaked toml for crates.io crate piske 0.1.2 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate piske 0.1.2 on toolchain d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 88 packages to latest compatible versions
[INFO] [stderr]       Adding clap v2.34.0 (available: v4.5.48)
[INFO] [stderr]       Adding lazy_static v0.2.11 (available: v1.5.0)
[INFO] [stderr]       Adding quote v0.3.15 (available: v1.0.40)
[INFO] [stderr]       Adding regex v0.2.11 (available: v1.11.3)
[INFO] [stderr]       Adding rustyline v4.1.0 (available: v17.0.1)
[INFO] [stderr]       Adding tempfile v2.2.0 (available: v3.23.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 003173e2bb682222a55275aa68d15db2fe85a3f399b6966a141b7290aef5f305
[INFO] running `Command { std: "docker" "start" "-a" "003173e2bb682222a55275aa68d15db2fe85a3f399b6966a141b7290aef5f305", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "003173e2bb682222a55275aa68d15db2fe85a3f399b6966a141b7290aef5f305", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "003173e2bb682222a55275aa68d15db2fe85a3f399b6966a141b7290aef5f305", kill_on_drop: false }`
[INFO] [stdout] 003173e2bb682222a55275aa68d15db2fe85a3f399b6966a141b7290aef5f305
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9738a1b737cf9430661d1a9220b23c1e306edd16b20e9ea2fe5c57f85ff4ed82
[INFO] running `Command { std: "docker" "start" "-a" "9738a1b737cf9430661d1a9220b23c1e306edd16b20e9ea2fe5c57f85ff4ed82", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling termcolor v1.4.1
[INFO] [stderr]    Compiling codemap v0.1.3
[INFO] [stderr]    Compiling quote v0.3.15
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling adler32 v1.2.0
[INFO] [stderr]    Compiling num-rational v0.1.43
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling regex v0.2.11
[INFO] [stderr]    Compiling nix v0.13.1
[INFO] [stderr]    Compiling ucd-util v0.1.10
[INFO] [stderr]    Compiling lzw v0.10.0
[INFO] [stderr]    Compiling thread_local v0.3.6
[INFO] [stderr]    Compiling scoped_threadpool v0.1.9
[INFO] [stderr]    Compiling regex-syntax v0.5.6
[INFO] [stderr]    Compiling utf8-ranges v1.0.5
[INFO] [stderr]    Compiling deflate v0.7.20
[INFO] [stderr]    Compiling inflate v0.3.4
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling gif v0.9.2
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling dirs v1.0.5
[INFO] [stderr]    Compiling lazy_static v0.2.11
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling log v0.4.28
[INFO] [stderr]    Compiling utf8parse v0.1.1
[INFO] [stderr]    Compiling codemap-diagnostic v0.1.2
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling wee-peg v0.5.4
[INFO] [stderr]    Compiling aho-corasick v0.6.10
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-traits v0.1.43
[INFO] [stderr]    Compiling enum_primitive v0.1.1
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling png v0.11.0
[INFO] [stderr]    Compiling sindra v0.1.0
[INFO] [stderr]    Compiling piske v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling rustyline v4.1.0
[INFO] [stderr]    Compiling jpeg-decoder v0.1.22
[INFO] [stderr]    Compiling image v0.18.0
[INFO] [stderr]    Compiling psk_std v0.1.0
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         try!(write!(fmt, "error at {}:{}: expected ", self.line,
[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]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 |         { try!(write!(fmt, "EOF")); } else if self.expected.len() == 1
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |             try!(write!(fmt, "`{}`",
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             try!(write!(fmt, "one of `{}`",
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:29:15
[INFO] [stdout]    |
[INFO] [stdout] 29 |             { try!(write!(fmt, ", `{}`", escape_default(elem))); }
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:271:358
[INFO] [stdout]     |
[INFO] [stdout] 271 | ...feff}' | '\u{1680}' | '\u{180e}' | '\u{2000}' ... '\u{200a}' | '\u{202f}' | '\u{205f}' | '\u{3000}' => Matched ( __next , ( ) ) , _ =>...
[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: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/visitor/eval.rs:26:21
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn visit(&self, &mut State) -> Result;
[INFO] [stdout]    |                     ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut State`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/visitor/symbol.rs:20:21
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn visit(&self, &mut State) -> Result;
[INFO] [stdout]    |                     ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut State`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/visitor/type_visitor.rs:28:21
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn visit(&self, &mut State) -> Result;
[INFO] [stdout]    |                     ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut State`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/visitor/transpile.rs:22:21
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn visit(&self, &mut State) -> Result;
[INFO] [stdout]    |                     ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut State`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> src/ast/inference.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / lazy_static! {
[INFO] [stdout]  9 | |     /// Result type definition for all arithmetic infix operations. `Some(...)` indicates that the
[INFO] [stdout] 10 | |     /// operation is possible and has the given result type, `None` indicates that the operation
[INFO] [stdout] 11 | |     /// is invalid on the supplied types.
[INFO] [stdout] ...  |
[INFO] [stdout] 27 | |     ];
[INFO] [stdout] 28 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> src/ast/inference.rs:30:1
[INFO] [stdout]    |
[INFO] [stdout] 30 | / lazy_static! {
[INFO] [stdout] 31 | |     /// Table of comparable (via comparison operators; e.g. <, <=, >, >=) types. 'Some(...)'
[INFO] [stdout] 32 | |     /// indicates the types are comparable but both sides need to be the specified type. 'None'
[INFO] [stdout] 33 | |     /// indicates they are not comparable.
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | |     ];
[INFO] [stdout] 50 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/visitor/state.rs:75:16
[INFO] [stdout]    |
[INFO] [stdout] 75 |     stdin: Box<Read>,
[INFO] [stdout]    |                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 75 |     stdin: Box<dyn Read>,
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/visitor/state.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 |     stdout: Box<Write>,
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 77 |     stdout: Box<dyn Write>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/visitor/state.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |     stderr: Box<Write>,
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 79 |     stderr: Box<dyn Write>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/visitor/state.rs:105:37
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn stdin(&mut self) -> &mut Read { self.stdin.as_mut() }
[INFO] [stdout]     |                                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn stdin(&mut self) -> &mut dyn Read { self.stdin.as_mut() }
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/visitor/state.rs:107:38
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn stdout(&mut self) -> &mut Write { self.stdout.as_mut() }
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn stdout(&mut self) -> &mut dyn Write { self.stdout.as_mut() }
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/visitor/state.rs:109:38
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn stderr(&mut self) -> &mut Write { self.stderr.as_mut() }
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn stderr(&mut self) -> &mut dyn Write { self.stderr.as_mut() }
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a macro
[INFO] [stdout]  --> src/visitor/interp/macros.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | macro_rules! add_interpreter_func {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![warn(missing_docs)]
[INFO] [stdout]   |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a macro
[INFO] [stdout]   --> src/visitor/interp/macros.rs:32:1
[INFO] [stdout]    |
[INFO] [stdout] 32 | macro_rules! add_func {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 20.28s
[INFO] running `Command { std: "docker" "inspect" "9738a1b737cf9430661d1a9220b23c1e306edd16b20e9ea2fe5c57f85ff4ed82", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9738a1b737cf9430661d1a9220b23c1e306edd16b20e9ea2fe5c57f85ff4ed82", kill_on_drop: false }`
[INFO] [stdout] 9738a1b737cf9430661d1a9220b23c1e306edd16b20e9ea2fe5c57f85ff4ed82
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a7cd046a7b69f6868129e3d9c61f5a136df8614653608d9d764de4c2f1bab5ed
[INFO] running `Command { std: "docker" "start" "-a" "a7cd046a7b69f6868129e3d9c61f5a136df8614653608d9d764de4c2f1bab5ed", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         try!(write!(fmt, "error at {}:{}: expected ", self.line,
[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]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 |         { try!(write!(fmt, "EOF")); } else if self.expected.len() == 1
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |             try!(write!(fmt, "`{}`",
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             try!(write!(fmt, "one of `{}`",
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:29:15
[INFO] [stdout]    |
[INFO] [stdout] 29 |             { try!(write!(fmt, ", `{}`", escape_default(elem))); }
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:271:358
[INFO] [stdout]     |
[INFO] [stdout] 271 | ...feff}' | '\u{1680}' | '\u{180e}' | '\u{2000}' ... '\u{200a}' | '\u{202f}' | '\u{205f}' | '\u{3000}' => Matched ( __next , ( ) ) , _ =>...
[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: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/visitor/eval.rs:26:21
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn visit(&self, &mut State) -> Result;
[INFO] [stdout]    |                     ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut State`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/visitor/symbol.rs:20:21
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn visit(&self, &mut State) -> Result;
[INFO] [stdout]    |                     ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut State`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/visitor/type_visitor.rs:28:21
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn visit(&self, &mut State) -> Result;
[INFO] [stdout]    |                     ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut State`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/visitor/transpile.rs:22:21
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn visit(&self, &mut State) -> Result;
[INFO] [stdout]    |                     ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut State`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> src/ast/inference.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / lazy_static! {
[INFO] [stdout]  9 | |     /// Result type definition for all arithmetic infix operations. `Some(...)` indicates that the
[INFO] [stdout] 10 | |     /// operation is possible and has the given result type, `None` indicates that the operation
[INFO] [stdout] 11 | |     /// is invalid on the supplied types.
[INFO] [stdout] ...  |
[INFO] [stdout] 27 | |     ];
[INFO] [stdout] 28 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> src/ast/inference.rs:30:1
[INFO] [stdout]    |
[INFO] [stdout] 30 | / lazy_static! {
[INFO] [stdout] 31 | |     /// Table of comparable (via comparison operators; e.g. <, <=, >, >=) types. 'Some(...)'
[INFO] [stdout] 32 | |     /// indicates the types are comparable but both sides need to be the specified type. 'None'
[INFO] [stdout] 33 | |     /// indicates they are not comparable.
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | |     ];
[INFO] [stdout] 50 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/visitor/state.rs:75:16
[INFO] [stdout]    |
[INFO] [stdout] 75 |     stdin: Box<Read>,
[INFO] [stdout]    |                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 75 |     stdin: Box<dyn Read>,
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/visitor/state.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 |     stdout: Box<Write>,
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 77 |     stdout: Box<dyn Write>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/visitor/state.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |     stderr: Box<Write>,
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 79 |     stderr: Box<dyn Write>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/visitor/state.rs:105:37
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn stdin(&mut self) -> &mut Read { self.stdin.as_mut() }
[INFO] [stdout]     |                                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn stdin(&mut self) -> &mut dyn Read { self.stdin.as_mut() }
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/visitor/state.rs:107:38
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn stdout(&mut self) -> &mut Write { self.stdout.as_mut() }
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn stdout(&mut self) -> &mut dyn Write { self.stdout.as_mut() }
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/visitor/state.rs:109:38
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn stderr(&mut self) -> &mut Write { self.stderr.as_mut() }
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn stderr(&mut self) -> &mut dyn Write { self.stderr.as_mut() }
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a macro
[INFO] [stdout]  --> src/visitor/interp/macros.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | macro_rules! add_interpreter_func {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![warn(missing_docs)]
[INFO] [stdout]   |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a macro
[INFO] [stdout]   --> src/visitor/interp/macros.rs:32:1
[INFO] [stdout]    |
[INFO] [stdout] 32 | macro_rules! add_func {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rand v0.3.23
[INFO] [stderr]    Compiling tempfile v2.2.0
[INFO] [stderr]    Compiling piske v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         try!(write!(fmt, "error at {}:{}: expected ", self.line,
[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]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 |         { try!(write!(fmt, "EOF")); } else if self.expected.len() == 1
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |             try!(write!(fmt, "`{}`",
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             try!(write!(fmt, "one of `{}`",
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:29:15
[INFO] [stdout]    |
[INFO] [stdout] 29 |             { try!(write!(fmt, ", `{}`", escape_default(elem))); }
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/piske-93e137085b72e688/out/piske.rs:271:358
[INFO] [stdout]     |
[INFO] [stdout] 271 | ...feff}' | '\u{1680}' | '\u{180e}' | '\u{2000}' ... '\u{200a}' | '\u{202f}' | '\u{205f}' | '\u{3000}' => Matched ( __next , ( ) ) , _ =>...
[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: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/visitor/eval.rs:26:21
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn visit(&self, &mut State) -> Result;
[INFO] [stdout]    |                     ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut State`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/visitor/symbol.rs:20:21
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn visit(&self, &mut State) -> Result;
[INFO] [stdout]    |                     ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut State`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/visitor/type_visitor.rs:28:21
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn visit(&self, &mut State) -> Result;
[INFO] [stdout]    |                     ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut State`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/visitor/transpile.rs:22:21
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn visit(&self, &mut State) -> Result;
[INFO] [stdout]    |                     ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut State`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> src/ast/inference.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / lazy_static! {
[INFO] [stdout]  9 | |     /// Result type definition for all arithmetic infix operations. `Some(...)` indicates that the
[INFO] [stdout] 10 | |     /// operation is possible and has the given result type, `None` indicates that the operation
[INFO] [stdout] 11 | |     /// is invalid on the supplied types.
[INFO] [stdout] ...  |
[INFO] [stdout] 27 | |     ];
[INFO] [stdout] 28 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> src/ast/inference.rs:30:1
[INFO] [stdout]    |
[INFO] [stdout] 30 | / lazy_static! {
[INFO] [stdout] 31 | |     /// Table of comparable (via comparison operators; e.g. <, <=, >, >=) types. 'Some(...)'
[INFO] [stdout] 32 | |     /// indicates the types are comparable but both sides need to be the specified type. 'None'
[INFO] [stdout] 33 | |     /// indicates they are not comparable.
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | |     ];
[INFO] [stdout] 50 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/visitor/state.rs:75:16
[INFO] [stdout]    |
[INFO] [stdout] 75 |     stdin: Box<Read>,
[INFO] [stdout]    |                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 75 |     stdin: Box<dyn Read>,
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/visitor/state.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 |     stdout: Box<Write>,
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 77 |     stdout: Box<dyn Write>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/visitor/state.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |     stderr: Box<Write>,
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 79 |     stderr: Box<dyn Write>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/visitor/state.rs:105:37
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn stdin(&mut self) -> &mut Read { self.stdin.as_mut() }
[INFO] [stdout]     |                                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn stdin(&mut self) -> &mut dyn Read { self.stdin.as_mut() }
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/visitor/state.rs:107:38
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn stdout(&mut self) -> &mut Write { self.stdout.as_mut() }
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn stdout(&mut self) -> &mut dyn Write { self.stdout.as_mut() }
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/visitor/state.rs:109:38
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn stderr(&mut self) -> &mut Write { self.stderr.as_mut() }
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn stderr(&mut self) -> &mut dyn Write { self.stderr.as_mut() }
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a macro
[INFO] [stdout]  --> src/visitor/interp/macros.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | macro_rules! add_interpreter_func {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![warn(missing_docs)]
[INFO] [stdout]   |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a macro
[INFO] [stdout]   --> src/visitor/interp/macros.rs:32:1
[INFO] [stdout]    |
[INFO] [stdout] 32 | macro_rules! add_func {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 4.69s
[INFO] running `Command { std: "docker" "inspect" "a7cd046a7b69f6868129e3d9c61f5a136df8614653608d9d764de4c2f1bab5ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a7cd046a7b69f6868129e3d9c61f5a136df8614653608d9d764de4c2f1bab5ed", kill_on_drop: false }`
[INFO] [stdout] a7cd046a7b69f6868129e3d9c61f5a136df8614653608d9d764de4c2f1bab5ed
