[INFO] fetching crate moss 0.0.4...
[INFO] building moss-0.0.4 against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237-1
[INFO] extracting crate moss 0.0.4 into /workspace/builds/worker-4-tc1/source
[INFO] started tweaking crates.io crate moss 0.0.4
[INFO] finished tweaking crates.io crate moss 0.0.4
[INFO] tweaked toml for crates.io crate moss 0.0.4 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate moss 0.0.4 on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 2 packages to latest compatible versions
[INFO] [stderr]       Adding termios v0.2.2 (available: v0.3.3)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded termios v0.2.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bd3bea35eb12f4445fcad07b08c22e265b1ebed08a9fcd0e94ef9fcf104657bd
[INFO] running `Command { std: "docker" "start" "-a" "bd3bea35eb12f4445fcad07b08c22e265b1ebed08a9fcd0e94ef9fcf104657bd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bd3bea35eb12f4445fcad07b08c22e265b1ebed08a9fcd0e94ef9fcf104657bd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bd3bea35eb12f4445fcad07b08c22e265b1ebed08a9fcd0e94ef9fcf104657bd", kill_on_drop: false }`
[INFO] [stdout] bd3bea35eb12f4445fcad07b08c22e265b1ebed08a9fcd0e94ef9fcf104657bd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d963f50d3a6d0e652f52b16c15cfeb872b962c8f82a729b2b5cbdf22e07db32b
[INFO] running `Command { std: "docker" "start" "-a" "d963f50d3a6d0e652f52b16c15cfeb872b962c8f82a729b2b5cbdf22e07db32b", kill_on_drop: false }`
[INFO] [stderr]    Compiling termios v0.2.2
[INFO] [stderr]    Compiling moss v0.0.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/objects/long-gmp.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/objects/long-gmp.rs:83:27
[INFO] [stdout]    |
[INFO] [stdout] 83 |             let mut mpz = uninitialized();
[INFO] [stdout]    |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/objects/long-gmp.rs:91:27
[INFO] [stdout]    |
[INFO] [stdout] 91 |             let mut mpz = uninitialized();
[INFO] [stdout]    |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/modules/graphics.rs:386:41
[INFO] [stdout]     |
[INFO] [stdout] 386 |         let mut event: SDL_Event = mem::uninitialized();
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/modules/format.rs:43:31
[INFO] [stdout]    |
[INFO] [stdout] 43 |     None, Left(usize), Center(usize), Right(usize)
[INFO] [stdout]    |                        ------ ^^^^^
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[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] 43 -     None, Left(usize), Center(usize), Right(usize)
[INFO] [stdout] 43 +     None, Left(usize), Center(()), Right(usize)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:118:16
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub fn env(&mut self) -> Env {
[INFO] [stdout]     |                ^^^^^^^^^     ^^^ the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub fn env(&mut self) -> Env<'_> {
[INFO] [stdout]     |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:129:17
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn lock(&self) -> InterpreterLock {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn lock(&self) -> InterpreterLock<'_> {
[INFO] [stdout]     |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]     --> src/compiler.rs:2961:5
[INFO] [stdout]      |
[INFO] [stdout] 2961 |     replace(&mut self.fn_indices,fn_indices);
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout]      = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 2961 |     let _ = replace(&mut self.fn_indices,fn_indices);
[INFO] [stdout]      |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/vm.rs:4452:23
[INFO] [stdout]      |
[INFO] [stdout] 4452 | pub fn get_env(state: &mut State) -> Env {
[INFO] [stdout]      |                       ^^^^^^^^^^     ^^^ the same lifetime is hidden here
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       the lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 4452 | pub fn get_env(state: &mut State) -> Env<'_> {
[INFO] [stdout]      |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]     --> src/vm.rs:4831:20
[INFO] [stdout]      |
[INFO] [stdout] 4831 |             panic!(self.exception_to_string(&e));
[INFO] [stdout]      |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this usage of `panic!()` 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: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]      |
[INFO] [stdout] 4831 |             panic!("{}", self.exception_to_string(&e));
[INFO] [stdout]      |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]   --> src/objects/long-gmp.rs:83:27
[INFO] [stdout]    |
[INFO] [stdout] 83 |             let mut mpz = uninitialized();
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           this code causes undefined behavior when executed
[INFO] [stdout]    |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]   --> src/objects/long-gmp.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     _mp_alloc: c_int,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]   --> src/objects/long-gmp.rs:91:27
[INFO] [stdout]    |
[INFO] [stdout] 91 |             let mut mpz = uninitialized();
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           this code causes undefined behavior when executed
[INFO] [stdout]    |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]   --> src/objects/long-gmp.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     _mp_alloc: c_int,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.54s
[INFO] running `Command { std: "docker" "inspect" "d963f50d3a6d0e652f52b16c15cfeb872b962c8f82a729b2b5cbdf22e07db32b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d963f50d3a6d0e652f52b16c15cfeb872b962c8f82a729b2b5cbdf22e07db32b", kill_on_drop: false }`
[INFO] [stdout] d963f50d3a6d0e652f52b16c15cfeb872b962c8f82a729b2b5cbdf22e07db32b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] df06d963d92d33905323e3d9cf06b1d50147fdb0d711dff2cb650835737b7a07
[INFO] running `Command { std: "docker" "start" "-a" "df06d963d92d33905323e3d9cf06b1d50147fdb0d711dff2cb650835737b7a07", kill_on_drop: false }`
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/objects/long-gmp.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/objects/long-gmp.rs:83:27
[INFO] [stdout]    |
[INFO] [stdout] 83 |             let mut mpz = uninitialized();
[INFO] [stdout]    |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/objects/long-gmp.rs:91:27
[INFO] [stdout]    |
[INFO] [stdout] 91 |             let mut mpz = uninitialized();
[INFO] [stdout]    |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/modules/graphics.rs:386:41
[INFO] [stdout]     |
[INFO] [stdout] 386 |         let mut event: SDL_Event = mem::uninitialized();
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/modules/format.rs:43:31
[INFO] [stdout]    |
[INFO] [stdout] 43 |     None, Left(usize), Center(usize), Right(usize)
[INFO] [stdout]    |                        ------ ^^^^^
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[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] 43 -     None, Left(usize), Center(usize), Right(usize)
[INFO] [stdout] 43 +     None, Left(usize), Center(()), Right(usize)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:118:16
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub fn env(&mut self) -> Env {
[INFO] [stdout]     |                ^^^^^^^^^     ^^^ the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub fn env(&mut self) -> Env<'_> {
[INFO] [stdout]     |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:129:17
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn lock(&self) -> InterpreterLock {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn lock(&self) -> InterpreterLock<'_> {
[INFO] [stdout]     |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]     --> src/compiler.rs:2961:5
[INFO] [stdout]      |
[INFO] [stdout] 2961 |     replace(&mut self.fn_indices,fn_indices);
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout]      = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 2961 |     let _ = replace(&mut self.fn_indices,fn_indices);
[INFO] [stdout]      |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/vm.rs:4452:23
[INFO] [stdout]      |
[INFO] [stdout] 4452 | pub fn get_env(state: &mut State) -> Env {
[INFO] [stdout]      |                       ^^^^^^^^^^     ^^^ the same lifetime is hidden here
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       the lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 4452 | pub fn get_env(state: &mut State) -> Env<'_> {
[INFO] [stdout]      |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]     --> src/vm.rs:4831:20
[INFO] [stdout]      |
[INFO] [stdout] 4831 |             panic!(self.exception_to_string(&e));
[INFO] [stdout]      |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this usage of `panic!()` 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: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]      |
[INFO] [stdout] 4831 |             panic!("{}", self.exception_to_string(&e));
[INFO] [stdout]      |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling moss v0.0.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]   --> src/objects/long-gmp.rs:83:27
[INFO] [stdout]    |
[INFO] [stdout] 83 |             let mut mpz = uninitialized();
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           this code causes undefined behavior when executed
[INFO] [stdout]    |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]   --> src/objects/long-gmp.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     _mp_alloc: c_int,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]   --> src/objects/long-gmp.rs:91:27
[INFO] [stdout]    |
[INFO] [stdout] 91 |             let mut mpz = uninitialized();
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           this code causes undefined behavior when executed
[INFO] [stdout]    |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]   --> src/objects/long-gmp.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     _mp_alloc: c_int,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/objects/long-gmp.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/objects/long-gmp.rs:83:27
[INFO] [stdout]    |
[INFO] [stdout] 83 |             let mut mpz = uninitialized();
[INFO] [stdout]    |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/objects/long-gmp.rs:91:27
[INFO] [stdout]    |
[INFO] [stdout] 91 |             let mut mpz = uninitialized();
[INFO] [stdout]    |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/modules/graphics.rs:386:41
[INFO] [stdout]     |
[INFO] [stdout] 386 |         let mut event: SDL_Event = mem::uninitialized();
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/modules/format.rs:43:31
[INFO] [stdout]    |
[INFO] [stdout] 43 |     None, Left(usize), Center(usize), Right(usize)
[INFO] [stdout]    |                        ------ ^^^^^
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[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] 43 -     None, Left(usize), Center(usize), Right(usize)
[INFO] [stdout] 43 +     None, Left(usize), Center(()), Right(usize)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:118:16
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub fn env(&mut self) -> Env {
[INFO] [stdout]     |                ^^^^^^^^^     ^^^ the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub fn env(&mut self) -> Env<'_> {
[INFO] [stdout]     |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:129:17
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn lock(&self) -> InterpreterLock {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn lock(&self) -> InterpreterLock<'_> {
[INFO] [stdout]     |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]     --> src/compiler.rs:2961:5
[INFO] [stdout]      |
[INFO] [stdout] 2961 |     replace(&mut self.fn_indices,fn_indices);
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout]      = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 2961 |     let _ = replace(&mut self.fn_indices,fn_indices);
[INFO] [stdout]      |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/vm.rs:4452:23
[INFO] [stdout]      |
[INFO] [stdout] 4452 | pub fn get_env(state: &mut State) -> Env {
[INFO] [stdout]      |                       ^^^^^^^^^^     ^^^ the same lifetime is hidden here
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       the lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 4452 | pub fn get_env(state: &mut State) -> Env<'_> {
[INFO] [stdout]      |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]     --> src/vm.rs:4831:20
[INFO] [stdout]      |
[INFO] [stdout] 4831 |             panic!(self.exception_to_string(&e));
[INFO] [stdout]      |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this usage of `panic!()` 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: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]      |
[INFO] [stdout] 4831 |             panic!("{}", self.exception_to_string(&e));
[INFO] [stdout]      |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]   --> src/objects/long-gmp.rs:83:27
[INFO] [stdout]    |
[INFO] [stdout] 83 |             let mut mpz = uninitialized();
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           this code causes undefined behavior when executed
[INFO] [stdout]    |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]   --> src/objects/long-gmp.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     _mp_alloc: c_int,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]   --> src/objects/long-gmp.rs:91:27
[INFO] [stdout]    |
[INFO] [stdout] 91 |             let mut mpz = uninitialized();
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           this code causes undefined behavior when executed
[INFO] [stdout]    |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]   --> src/objects/long-gmp.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     _mp_alloc: c_int,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.18s
[INFO] running `Command { std: "docker" "inspect" "df06d963d92d33905323e3d9cf06b1d50147fdb0d711dff2cb650835737b7a07", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "df06d963d92d33905323e3d9cf06b1d50147fdb0d711dff2cb650835737b7a07", kill_on_drop: false }`
[INFO] [stdout] df06d963d92d33905323e3d9cf06b1d50147fdb0d711dff2cb650835737b7a07
