[INFO] fetching crate nixterm 0.1.2...
[INFO] testing nixterm-0.1.2 against beta-2023-04-20 for beta-1.70-1
[INFO] extracting crate nixterm 0.1.2 into /workspace/builds/worker-7-tc2/source
[INFO] validating manifest of crates.io crate nixterm 0.1.2 on toolchain beta-2023-04-20
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-04-20" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate nixterm 0.1.2
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate nixterm 0.1.2
[INFO] tweaked toml for crates.io crate nixterm 0.1.2 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" __CARGO_TEST_CHANNEL_OVERRIDE_DO_NOT_USE_THIS="nightly" "/workspace/cargo-home/bin/cargo" "+beta-2023-04-20" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-04-20" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 01b5a47976758bca32016b5533d4a24f7ecdb00d11b6b58066fbd27f52e8e6bf
[INFO] running `Command { std: "docker" "start" "-a" "01b5a47976758bca32016b5533d4a24f7ecdb00d11b6b58066fbd27f52e8e6bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "01b5a47976758bca32016b5533d4a24f7ecdb00d11b6b58066fbd27f52e8e6bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "01b5a47976758bca32016b5533d4a24f7ecdb00d11b6b58066fbd27f52e8e6bf", kill_on_drop: false }`
[INFO] [stdout] 01b5a47976758bca32016b5533d4a24f7ecdb00d11b6b58066fbd27f52e8e6bf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 06e58465931c47d48ff28cce25c4907fd0247a2fcd16493688cdd25d8c4bac8f
[INFO] running `Command { std: "docker" "start" "-a" "06e58465931c47d48ff28cce25c4907fd0247a2fcd16493688cdd25d8c4bac8f", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling gimli v0.27.2
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling backtrace v0.3.67
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]    Compiling object v0.30.3
[INFO] [stderr]    Compiling miniz_oxide v0.6.2
[INFO] [stderr]    Compiling nix v0.11.1
[INFO] [stderr]    Compiling rustc-demangle v0.1.23
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling addr2line v0.19.0
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling failure v0.1.8
[INFO] [stderr]    Compiling nixterm v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:133:24
[INFO] [stdout]     |
[INFO] [stdout] 133 |                     '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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:184:16
[INFO] [stdout]     |
[INFO] [stdout] 184 |             '0'...'9' => Ok(Color::Index(
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:211:27
[INFO] [stdout]     |
[INFO] [stdout] 211 |         Color::Index(x @ 0...7) => write!(w, "\x1b[{}m", x + 30),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:212:27
[INFO] [stdout]     |
[INFO] [stdout] 212 |         Color::Index(x @ 8...15) => write!(w, "\x1b[{}m", x + 82),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:220:27
[INFO] [stdout]     |
[INFO] [stdout] 220 |         Color::Index(x @ 0...7) => write!(w, "\x1b[{}m", x + 40),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:221:27
[INFO] [stdout]     |
[INFO] [stdout] 221 |         Color::Index(x @ 8...15) => write!(w, "\x1b[{}m", x + 92),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:14
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:23
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:33
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:43
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:251:15
[INFO] [stdout]     |
[INFO] [stdout] 251 |             32...126 => Key::Char(ch as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 | /     /// Turn off canonical mode.
[INFO] [stdout] 161 | |     /// In non-canonical mode the terminal does perform line editing, the input buffer is 4096 characters long,
[INFO] [stdout] 162 | |     /// and timeouts may be set for input.
[INFO] [stdout]     | |_____-------------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 165 | /     /// Set the minimum number of characters for the `Term::read` function to return.
[INFO] [stdout] 166 | |     ///
[INFO] [stdout] 167 | |     /// __*non-canonical mode only__
[INFO] [stdout]     | |_____-------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 | /     /// Set the maximum time the `Term::read` function will wait before returning (time in deciseconds)
[INFO] [stdout] 171 | |     ///
[INFO] [stdout] 172 | |     ///
[INFO] [stdout] 173 | |     /// __*non-canonical mode only__
[INFO] [stdout]     | |_____-------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     /// Set the character that will signal the stdout buffer should be flushed.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     /// Set an extra end-of-line character
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     /// Set the erase char (typically it will be something like `DEL` by default)
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     /// Set the interrupt char, when this character is read the running process will be sent `SIGINT`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     /// Set the suspend char, when this character is read the running process will be sent `SIGTSTP`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 |     /// Set the kill char, when this character is read the running process will be sent `SIGKILL`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     /// Set the quit char, when this character is read the running process will be sent `SIGQUIT`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:197:5
[INFO] [stdout]     |
[INFO] [stdout] 197 |     /// stop showing output until the `start_output` char is reached.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:200:5
[INFO] [stdout]     |
[INFO] [stdout] 200 |     /// Set the character the will restart  output, ofter the `stop_output` char.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]    --> src/term.rs:374:51
[INFO] [stdout]     |
[INFO] [stdout] 374 |                 ansi::Color::Index(x @ 8..=15) => (x - 8),
[INFO] [stdout]     |                                                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 374 -                 ansi::Color::Index(x @ 8..=15) => (x - 8),
[INFO] [stdout] 374 +                 ansi::Color::Index(x @ 8..=15) => x - 8,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:674:12
[INFO] [stdout]     |
[INFO] [stdout] 674 |         if (x > 0) {
[INFO] [stdout]     |            ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 674 -         if (x > 0) {
[INFO] [stdout] 674 +         if x > 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:678:19
[INFO] [stdout]     |
[INFO] [stdout] 678 |         } else if (x < 0) {
[INFO] [stdout]     |                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 678 -         } else if (x < 0) {
[INFO] [stdout] 678 +         } else if x < 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:688:12
[INFO] [stdout]     |
[INFO] [stdout] 688 |         if (y > 0) {
[INFO] [stdout]     |            ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 688 -         if (y > 0) {
[INFO] [stdout] 688 +         if y > 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:692:19
[INFO] [stdout]     |
[INFO] [stdout] 692 |         } else if (y < 0) {
[INFO] [stdout]     |                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 692 -         } else if (y < 0) {
[INFO] [stdout] 692 +         } else if y < 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `size_of`, `transmute`
[INFO] [stdout]  --> src/util.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::mem::{size_of, transmute};
[INFO] [stdout]   |                ^^^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::slice::from_raw_parts`
[INFO] [stdout]  --> src/util.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::slice::from_raw_parts;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior may be unexpected on Windows. Consider using a crate from crates.io instead.
[INFO] [stdout]   --> src/terminfo/mod.rs:31:30
[INFO] [stdout]    |
[INFO] [stdout] 31 |     if let Some(home) = env::home_dir() {
[INFO] [stdout]    |                              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:98:32
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn cause(&self) -> Option<&failure::Fail> {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/terminfo/errors.rs:100:32
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn cause(&self) -> Option<&failure::Fail> {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/events.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 248 |             10 | 13 => Key::Enter,
[INFO] [stdout]     |             ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/term.rs:701:31
[INFO] [stdout]     |
[INFO] [stdout] 701 |     pub fn default_background(mut self) -> Self {
[INFO] [stdout]     |                               ----^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/term.rs:705:31
[INFO] [stdout]     |
[INFO] [stdout] 705 |     pub fn default_foreground(mut self) -> Self {
[INFO] [stdout]     |                               ----^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_u8` is never used
[INFO] [stdout]    --> src/term.rs:419:8
[INFO] [stdout]     |
[INFO] [stdout] 338 | impl<'a, O> TermWriter<'a, O>
[INFO] [stdout]     | ----------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 419 |     fn write_u8(mut self, x: u8) -> Self {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:675:13
[INFO] [stdout]     |
[INFO] [stdout] 675 | /             self.exec(terminfo::ParmRightCursor)
[INFO] [stdout] 676 | |                 .map(|ctx| ctx.arg(x).write(&mut self))
[INFO] [stdout] 677 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 |             let _ = self.exec(terminfo::ParmRightCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:679:13
[INFO] [stdout]     |
[INFO] [stdout] 679 | /             self.exec(terminfo::ParmLeftCursor)
[INFO] [stdout] 680 | |                 .map(|ctx| ctx.arg(-x).write(&mut self))
[INFO] [stdout] 681 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 679 |             let _ = self.exec(terminfo::ParmLeftCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:689:13
[INFO] [stdout]     |
[INFO] [stdout] 689 | /             self.exec(terminfo::ParmUpCursor)
[INFO] [stdout] 690 | |                 .map(|ctx| ctx.arg(y).write(&mut self))
[INFO] [stdout] 691 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 689 |             let _ = self.exec(terminfo::ParmUpCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:693:13
[INFO] [stdout]     |
[INFO] [stdout] 693 | /             self.exec(terminfo::ParmDownCursor)
[INFO] [stdout] 694 | |                 .map(|ctx| ctx.arg(-y).write(&mut self))
[INFO] [stdout] 695 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 693 |             let _ = self.exec(terminfo::ParmDownCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/terminfo/lang/executor.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         self.env.write(&mut Parser::new(self.src), &mut w);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let _ = self.env.write(&mut Parser::new(self.src), &mut w);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 42 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 5.51s
[INFO] running `Command { std: "docker" "inspect" "06e58465931c47d48ff28cce25c4907fd0247a2fcd16493688cdd25d8c4bac8f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "06e58465931c47d48ff28cce25c4907fd0247a2fcd16493688cdd25d8c4bac8f", kill_on_drop: false }`
[INFO] [stdout] 06e58465931c47d48ff28cce25c4907fd0247a2fcd16493688cdd25d8c4bac8f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 90674b3371a106ec0665259d71ce6d1aef8dfab163634d0f24ee9457d69a5436
[INFO] running `Command { std: "docker" "start" "-a" "90674b3371a106ec0665259d71ce6d1aef8dfab163634d0f24ee9457d69a5436", kill_on_drop: false }`
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:133:24
[INFO] [stdout]     |
[INFO] [stdout] 133 |                     '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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:184:16
[INFO] [stdout]     |
[INFO] [stdout] 184 |             '0'...'9' => Ok(Color::Index(
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:211:27
[INFO] [stdout]     |
[INFO] [stdout] 211 |         Color::Index(x @ 0...7) => write!(w, "\x1b[{}m", x + 30),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:212:27
[INFO] [stdout]     |
[INFO] [stdout] 212 |         Color::Index(x @ 8...15) => write!(w, "\x1b[{}m", x + 82),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:220:27
[INFO] [stdout]     |
[INFO] [stdout] 220 |         Color::Index(x @ 0...7) => write!(w, "\x1b[{}m", x + 40),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:221:27
[INFO] [stdout]     |
[INFO] [stdout] 221 |         Color::Index(x @ 8...15) => write!(w, "\x1b[{}m", x + 92),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:14
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:23
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:33
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:43
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:251:15
[INFO] [stdout]     |
[INFO] [stdout] 251 |             32...126 => Key::Char(ch as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 | /     /// Turn off canonical mode.
[INFO] [stdout] 161 | |     /// In non-canonical mode the terminal does perform line editing, the input buffer is 4096 characters long,
[INFO] [stdout] 162 | |     /// and timeouts may be set for input.
[INFO] [stdout]     | |_____-------------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 165 | /     /// Set the minimum number of characters for the `Term::read` function to return.
[INFO] [stdout] 166 | |     ///
[INFO] [stdout] 167 | |     /// __*non-canonical mode only__
[INFO] [stdout]     | |_____-------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 | /     /// Set the maximum time the `Term::read` function will wait before returning (time in deciseconds)
[INFO] [stdout] 171 | |     ///
[INFO] [stdout] 172 | |     ///
[INFO] [stdout] 173 | |     /// __*non-canonical mode only__
[INFO] [stdout]     | |_____-------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     /// Set the character that will signal the stdout buffer should be flushed.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     /// Set an extra end-of-line character
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     /// Set the erase char (typically it will be something like `DEL` by default)
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     /// Set the interrupt char, when this character is read the running process will be sent `SIGINT`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     /// Set the suspend char, when this character is read the running process will be sent `SIGTSTP`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 |     /// Set the kill char, when this character is read the running process will be sent `SIGKILL`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     /// Set the quit char, when this character is read the running process will be sent `SIGQUIT`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:197:5
[INFO] [stdout]     |
[INFO] [stdout] 197 |     /// stop showing output until the `start_output` char is reached.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:200:5
[INFO] [stdout]     |
[INFO] [stdout] 200 |     /// Set the character the will restart  output, ofter the `stop_output` char.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]    --> src/term.rs:374:51
[INFO] [stdout]     |
[INFO] [stdout] 374 |                 ansi::Color::Index(x @ 8..=15) => (x - 8),
[INFO] [stdout]     |                                                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 374 -                 ansi::Color::Index(x @ 8..=15) => (x - 8),
[INFO] [stdout] 374 +                 ansi::Color::Index(x @ 8..=15) => x - 8,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:674:12
[INFO] [stdout]     |
[INFO] [stdout] 674 |         if (x > 0) {
[INFO] [stdout]     |            ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 674 -         if (x > 0) {
[INFO] [stdout] 674 +         if x > 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:678:19
[INFO] [stdout]     |
[INFO] [stdout] 678 |         } else if (x < 0) {
[INFO] [stdout]     |                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 678 -         } else if (x < 0) {
[INFO] [stdout] 678 +         } else if x < 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:688:12
[INFO] [stdout]     |
[INFO] [stdout] 688 |         if (y > 0) {
[INFO] [stdout]     |            ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 688 -         if (y > 0) {
[INFO] [stdout] 688 +         if y > 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:692:19
[INFO] [stdout]     |
[INFO] [stdout] 692 |         } else if (y < 0) {
[INFO] [stdout]     |                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 692 -         } else if (y < 0) {
[INFO] [stdout] 692 +         } else if y < 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `size_of`, `transmute`
[INFO] [stdout]  --> src/util.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::mem::{size_of, transmute};
[INFO] [stdout]   |                ^^^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::slice::from_raw_parts`
[INFO] [stdout]  --> src/util.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::slice::from_raw_parts;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior may be unexpected on Windows. Consider using a crate from crates.io instead.
[INFO] [stdout]   --> src/terminfo/mod.rs:31:30
[INFO] [stdout]    |
[INFO] [stdout] 31 |     if let Some(home) = env::home_dir() {
[INFO] [stdout]    |                              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:98:32
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn cause(&self) -> Option<&failure::Fail> {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/terminfo/errors.rs:100:32
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn cause(&self) -> Option<&failure::Fail> {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/events.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 248 |             10 | 13 => Key::Enter,
[INFO] [stdout]     |             ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/term.rs:701:31
[INFO] [stdout]     |
[INFO] [stdout] 701 |     pub fn default_background(mut self) -> Self {
[INFO] [stdout]     |                               ----^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/term.rs:705:31
[INFO] [stdout]     |
[INFO] [stdout] 705 |     pub fn default_foreground(mut self) -> Self {
[INFO] [stdout]     |                               ----^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_u8` is never used
[INFO] [stdout]    --> src/term.rs:419:8
[INFO] [stdout]     |
[INFO] [stdout] 338 | impl<'a, O> TermWriter<'a, O>
[INFO] [stdout]     | ----------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 419 |     fn write_u8(mut self, x: u8) -> Self {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:675:13
[INFO] [stdout]     |
[INFO] [stdout] 675 | /             self.exec(terminfo::ParmRightCursor)
[INFO] [stdout] 676 | |                 .map(|ctx| ctx.arg(x).write(&mut self))
[INFO] [stdout] 677 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 |             let _ = self.exec(terminfo::ParmRightCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:679:13
[INFO] [stdout]     |
[INFO] [stdout] 679 | /             self.exec(terminfo::ParmLeftCursor)
[INFO] [stdout] 680 | |                 .map(|ctx| ctx.arg(-x).write(&mut self))
[INFO] [stdout] 681 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 679 |             let _ = self.exec(terminfo::ParmLeftCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:689:13
[INFO] [stdout]     |
[INFO] [stdout] 689 | /             self.exec(terminfo::ParmUpCursor)
[INFO] [stdout] 690 | |                 .map(|ctx| ctx.arg(y).write(&mut self))
[INFO] [stdout] 691 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 689 |             let _ = self.exec(terminfo::ParmUpCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:693:13
[INFO] [stdout]     |
[INFO] [stdout] 693 | /             self.exec(terminfo::ParmDownCursor)
[INFO] [stdout] 694 | |                 .map(|ctx| ctx.arg(-y).write(&mut self))
[INFO] [stdout] 695 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 693 |             let _ = self.exec(terminfo::ParmDownCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/terminfo/lang/executor.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         self.env.write(&mut Parser::new(self.src), &mut w);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let _ = self.env.write(&mut Parser::new(self.src), &mut w);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 42 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling nixterm v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> examples/term.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     term.println("");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let _ = term.println("");
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> examples/term.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     term.println("");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let _ = term.println("");
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> examples/term.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     term.println("");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let _ = term.println("");
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:133:24
[INFO] [stdout]     |
[INFO] [stdout] 133 |                     '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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:184:16
[INFO] [stdout]     |
[INFO] [stdout] 184 |             '0'...'9' => Ok(Color::Index(
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:211:27
[INFO] [stdout]     |
[INFO] [stdout] 211 |         Color::Index(x @ 0...7) => write!(w, "\x1b[{}m", x + 30),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:212:27
[INFO] [stdout]     |
[INFO] [stdout] 212 |         Color::Index(x @ 8...15) => write!(w, "\x1b[{}m", x + 82),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:220:27
[INFO] [stdout]     |
[INFO] [stdout] 220 |         Color::Index(x @ 0...7) => write!(w, "\x1b[{}m", x + 40),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/ansi.rs:221:27
[INFO] [stdout]     |
[INFO] [stdout] 221 |         Color::Index(x @ 8...15) => write!(w, "\x1b[{}m", x + 92),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:14
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:23
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:33
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:246:43
[INFO] [stdout]     |
[INFO] [stdout] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/events.rs:251:15
[INFO] [stdout]     |
[INFO] [stdout] 251 |             32...126 => Key::Char(ch as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 | /     /// Turn off canonical mode.
[INFO] [stdout] 161 | |     /// In non-canonical mode the terminal does perform line editing, the input buffer is 4096 characters long,
[INFO] [stdout] 162 | |     /// and timeouts may be set for input.
[INFO] [stdout]     | |_____-------------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 165 | /     /// Set the minimum number of characters for the `Term::read` function to return.
[INFO] [stdout] 166 | |     ///
[INFO] [stdout] 167 | |     /// __*non-canonical mode only__
[INFO] [stdout]     | |_____-------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 | /     /// Set the maximum time the `Term::read` function will wait before returning (time in deciseconds)
[INFO] [stdout] 171 | |     ///
[INFO] [stdout] 172 | |     ///
[INFO] [stdout] 173 | |     /// __*non-canonical mode only__
[INFO] [stdout]     | |_____-------------------------------^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     /// Set the character that will signal the stdout buffer should be flushed.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     /// Set an extra end-of-line character
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     /// Set the erase char (typically it will be something like `DEL` by default)
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     /// Set the interrupt char, when this character is read the running process will be sent `SIGINT`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     /// Set the suspend char, when this character is read the running process will be sent `SIGTSTP`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 |     /// Set the kill char, when this character is read the running process will be sent `SIGKILL`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     /// Set the quit char, when this character is read the running process will be sent `SIGQUIT`.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:197:5
[INFO] [stdout]     |
[INFO] [stdout] 197 |     /// stop showing output until the `start_output` char is reached.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/term.rs:200:5
[INFO] [stdout]     |
[INFO] [stdout] 200 |     /// Set the character the will restart  output, ofter the `stop_output` char.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]    --> src/term.rs:374:51
[INFO] [stdout]     |
[INFO] [stdout] 374 |                 ansi::Color::Index(x @ 8..=15) => (x - 8),
[INFO] [stdout]     |                                                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 374 -                 ansi::Color::Index(x @ 8..=15) => (x - 8),
[INFO] [stdout] 374 +                 ansi::Color::Index(x @ 8..=15) => x - 8,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:674:12
[INFO] [stdout]     |
[INFO] [stdout] 674 |         if (x > 0) {
[INFO] [stdout]     |            ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 674 -         if (x > 0) {
[INFO] [stdout] 674 +         if x > 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:678:19
[INFO] [stdout]     |
[INFO] [stdout] 678 |         } else if (x < 0) {
[INFO] [stdout]     |                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 678 -         } else if (x < 0) {
[INFO] [stdout] 678 +         } else if x < 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:688:12
[INFO] [stdout]     |
[INFO] [stdout] 688 |         if (y > 0) {
[INFO] [stdout]     |            ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 688 -         if (y > 0) {
[INFO] [stdout] 688 +         if y > 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/term.rs:692:19
[INFO] [stdout]     |
[INFO] [stdout] 692 |         } else if (y < 0) {
[INFO] [stdout]     |                   ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 692 -         } else if (y < 0) {
[INFO] [stdout] 692 +         } else if y < 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `size_of`, `transmute`
[INFO] [stdout]  --> src/util.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::mem::{size_of, transmute};
[INFO] [stdout]   |                ^^^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::slice::from_raw_parts`
[INFO] [stdout]  --> src/util.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::slice::from_raw_parts;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior may be unexpected on Windows. Consider using a crate from crates.io instead.
[INFO] [stdout]   --> src/terminfo/mod.rs:31:30
[INFO] [stdout]    |
[INFO] [stdout] 31 |     if let Some(home) = env::home_dir() {
[INFO] [stdout]    |                              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:98:32
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn cause(&self) -> Option<&failure::Fail> {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/terminfo/errors.rs:100:32
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn cause(&self) -> Option<&failure::Fail> {
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/events.rs:248:13
[INFO] [stdout]     |
[INFO] [stdout] 248 |             10 | 13 => Key::Enter,
[INFO] [stdout]     |             ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/term.rs:701:31
[INFO] [stdout]     |
[INFO] [stdout] 701 |     pub fn default_background(mut self) -> Self {
[INFO] [stdout]     |                               ----^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/term.rs:705:31
[INFO] [stdout]     |
[INFO] [stdout] 705 |     pub fn default_foreground(mut self) -> Self {
[INFO] [stdout]     |                               ----^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_u8` is never used
[INFO] [stdout]    --> src/term.rs:419:8
[INFO] [stdout]     |
[INFO] [stdout] 338 | impl<'a, O> TermWriter<'a, O>
[INFO] [stdout]     | ----------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 419 |     fn write_u8(mut self, x: u8) -> Self {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:675:13
[INFO] [stdout]     |
[INFO] [stdout] 675 | /             self.exec(terminfo::ParmRightCursor)
[INFO] [stdout] 676 | |                 .map(|ctx| ctx.arg(x).write(&mut self))
[INFO] [stdout] 677 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 675 |             let _ = self.exec(terminfo::ParmRightCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:679:13
[INFO] [stdout]     |
[INFO] [stdout] 679 | /             self.exec(terminfo::ParmLeftCursor)
[INFO] [stdout] 680 | |                 .map(|ctx| ctx.arg(-x).write(&mut self))
[INFO] [stdout] 681 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 679 |             let _ = self.exec(terminfo::ParmLeftCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:689:13
[INFO] [stdout]     |
[INFO] [stdout] 689 | /             self.exec(terminfo::ParmUpCursor)
[INFO] [stdout] 690 | |                 .map(|ctx| ctx.arg(y).write(&mut self))
[INFO] [stdout] 691 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 689 |             let _ = self.exec(terminfo::ParmUpCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/term.rs:693:13
[INFO] [stdout]     |
[INFO] [stdout] 693 | /             self.exec(terminfo::ParmDownCursor)
[INFO] [stdout] 694 | |                 .map(|ctx| ctx.arg(-y).write(&mut self))
[INFO] [stdout] 695 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stdout]     | |________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 693 |             let _ = self.exec(terminfo::ParmDownCursor)
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/terminfo/lang/executor.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         self.env.write(&mut Parser::new(self.src), &mut w);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let _ = self.env.write(&mut Parser::new(self.src), &mut w);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 42 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 1.11s
[INFO] running `Command { std: "docker" "inspect" "90674b3371a106ec0665259d71ce6d1aef8dfab163634d0f24ee9457d69a5436", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "90674b3371a106ec0665259d71ce6d1aef8dfab163634d0f24ee9457d69a5436", kill_on_drop: false }`
[INFO] [stdout] 90674b3371a106ec0665259d71ce6d1aef8dfab163634d0f24ee9457d69a5436
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] e7d985410b711a5597e61b0e39800780b6412b30139a2ad1bbad0441fa0056e6
[INFO] running `Command { std: "docker" "start" "-a" "e7d985410b711a5597e61b0e39800780b6412b30139a2ad1bbad0441fa0056e6", kill_on_drop: false }`
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/ansi.rs:133:24
[INFO] [stderr]     |
[INFO] [stderr] 133 |                     '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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/ansi.rs:184:16
[INFO] [stderr]     |
[INFO] [stderr] 184 |             '0'...'9' => Ok(Color::Index(
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/ansi.rs:211:27
[INFO] [stderr]     |
[INFO] [stderr] 211 |         Color::Index(x @ 0...7) => write!(w, "\x1b[{}m", x + 30),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/ansi.rs:212:27
[INFO] [stderr]     |
[INFO] [stderr] 212 |         Color::Index(x @ 8...15) => write!(w, "\x1b[{}m", x + 82),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/ansi.rs:220:27
[INFO] [stderr]     |
[INFO] [stderr] 220 |         Color::Index(x @ 0...7) => write!(w, "\x1b[{}m", x + 40),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/ansi.rs:221:27
[INFO] [stderr]     |
[INFO] [stderr] 221 |         Color::Index(x @ 8...15) => write!(w, "\x1b[{}m", x + 92),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/events.rs:246:14
[INFO] [stderr]     |
[INFO] [stderr] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/events.rs:246:23
[INFO] [stderr]     |
[INFO] [stderr] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/events.rs:246:33
[INFO] [stderr]     |
[INFO] [stderr] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/events.rs:246:43
[INFO] [stderr]     |
[INFO] [stderr] 246 |             0...8 | 10...12 | 14...26 | 28...31 => Key::Control((ch + 64) as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/events.rs:251:15
[INFO] [stderr]     |
[INFO] [stderr] 251 |             32...126 => Key::Char(ch as char),
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/term.rs:160:5
[INFO] [stderr]     |
[INFO] [stderr] 160 | /     /// Turn off canonical mode.
[INFO] [stderr] 161 | |     /// In non-canonical mode the terminal does perform line editing, the input buffer is 4096 characters long,
[INFO] [stderr] 162 | |     /// and timeouts may be set for input.
[INFO] [stderr]     | |_____-------------------------------------^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stderr]     |
[INFO] [stderr]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/term.rs:165:5
[INFO] [stderr]     |
[INFO] [stderr] 165 | /     /// Set the minimum number of characters for the `Term::read` function to return.
[INFO] [stderr] 166 | |     ///
[INFO] [stderr] 167 | |     /// __*non-canonical mode only__
[INFO] [stderr]     | |_____-------------------------------^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stderr]     |
[INFO] [stderr]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/term.rs:170:5
[INFO] [stderr]     |
[INFO] [stderr] 170 | /     /// Set the maximum time the `Term::read` function will wait before returning (time in deciseconds)
[INFO] [stderr] 171 | |     ///
[INFO] [stderr] 172 | |     ///
[INFO] [stderr] 173 | |     /// __*non-canonical mode only__
[INFO] [stderr]     | |_____-------------------------------^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       rustdoc does not generate documentation for macro invocations
[INFO] [stderr]     |
[INFO] [stderr]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/term.rs:176:5
[INFO] [stderr]     |
[INFO] [stderr] 176 |     /// Set the character that will signal the stdout buffer should be flushed.
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]     |
[INFO] [stderr]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/term.rs:179:5
[INFO] [stderr]     |
[INFO] [stderr] 179 |     /// Set an extra end-of-line character
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]     |
[INFO] [stderr]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/term.rs:182:5
[INFO] [stderr]     |
[INFO] [stderr] 182 |     /// Set the erase char (typically it will be something like `DEL` by default)
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]     |
[INFO] [stderr]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/term.rs:185:5
[INFO] [stderr]     |
[INFO] [stderr] 185 |     /// Set the interrupt char, when this character is read the running process will be sent `SIGINT`.
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]     |
[INFO] [stderr]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/term.rs:188:5
[INFO] [stderr]     |
[INFO] [stderr] 188 |     /// Set the suspend char, when this character is read the running process will be sent `SIGTSTP`.
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]     |
[INFO] [stderr]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/term.rs:191:5
[INFO] [stderr]     |
[INFO] [stderr] 191 |     /// Set the kill char, when this character is read the running process will be sent `SIGKILL`.
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]     |
[INFO] [stderr]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/term.rs:194:5
[INFO] [stderr]     |
[INFO] [stderr] 194 |     /// Set the quit char, when this character is read the running process will be sent `SIGQUIT`.
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]     |
[INFO] [stderr]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/term.rs:197:5
[INFO] [stderr]     |
[INFO] [stderr] 197 |     /// stop showing output until the `start_output` char is reached.
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]     |
[INFO] [stderr]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/term.rs:200:5
[INFO] [stderr]     |
[INFO] [stderr] 200 |     /// Set the character the will restart  output, ofter the `stop_output` char.
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]     |
[INFO] [stderr]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around match arm expression
[INFO] [stderr]    --> src/term.rs:374:51
[INFO] [stderr]     |
[INFO] [stderr] 374 |                 ansi::Color::Index(x @ 8..=15) => (x - 8),
[INFO] [stderr]     |                                                   ^     ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 374 -                 ansi::Color::Index(x @ 8..=15) => (x - 8),
[INFO] [stderr] 374 +                 ansi::Color::Index(x @ 8..=15) => x - 8,
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/term.rs:674:12
[INFO] [stderr]     |
[INFO] [stderr] 674 |         if (x > 0) {
[INFO] [stderr]     |            ^     ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 674 -         if (x > 0) {
[INFO] [stderr] 674 +         if x > 0 {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/term.rs:678:19
[INFO] [stderr]     |
[INFO] [stderr] 678 |         } else if (x < 0) {
[INFO] [stderr]     |                   ^     ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 678 -         } else if (x < 0) {
[INFO] [stderr] 678 +         } else if x < 0 {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/term.rs:688:12
[INFO] [stderr]     |
[INFO] [stderr] 688 |         if (y > 0) {
[INFO] [stderr]     |            ^     ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 688 -         if (y > 0) {
[INFO] [stderr] 688 +         if y > 0 {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/term.rs:692:19
[INFO] [stderr]     |
[INFO] [stderr] 692 |         } else if (y < 0) {
[INFO] [stderr]     |                   ^     ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 692 -         } else if (y < 0) {
[INFO] [stderr] 692 +         } else if y < 0 {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `size_of`, `transmute`
[INFO] [stderr]  --> src/util.rs:6:16
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::mem::{size_of, transmute};
[INFO] [stderr]   |                ^^^^^^^  ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::slice::from_raw_parts`
[INFO] [stderr]  --> src/util.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::slice::from_raw_parts;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::env::home_dir`: This function's behavior may be unexpected on Windows. Consider using a crate from crates.io instead.
[INFO] [stderr]   --> src/terminfo/mod.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |     if let Some(home) = env::home_dir() {
[INFO] [stderr]    |                              ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/errors.rs:98:32
[INFO] [stderr]    |
[INFO] [stderr] 98 |     fn cause(&self) -> Option<&failure::Fail> {
[INFO] [stderr]    |                                ^^^^^^^^^^^^^
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 98 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stderr]    |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/terminfo/errors.rs:100:32
[INFO] [stderr]     |
[INFO] [stderr] 100 |     fn cause(&self) -> Option<&failure::Fail> {
[INFO] [stderr]     |                                ^^^^^^^^^^^^^
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 100 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/events.rs:248:13
[INFO] [stderr]     |
[INFO] [stderr] 248 |             10 | 13 => Key::Enter,
[INFO] [stderr]     |             ^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/term.rs:701:31
[INFO] [stderr]     |
[INFO] [stderr] 701 |     pub fn default_background(mut self) -> Self {
[INFO] [stderr]     |                               ----^^^^
[INFO] [stderr]     |                               |
[INFO] [stderr]     |                               help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/term.rs:705:31
[INFO] [stderr]     |
[INFO] [stderr] 705 |     pub fn default_foreground(mut self) -> Self {
[INFO] [stderr]     |                               ----^^^^
[INFO] [stderr]     |                               |
[INFO] [stderr]     |                               help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: method `write_u8` is never used
[INFO] [stderr]    --> src/term.rs:419:8
[INFO] [stderr]     |
[INFO] [stderr] 338 | impl<'a, O> TermWriter<'a, O>
[INFO] [stderr]     | ----------------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 419 |     fn write_u8(mut self, x: u8) -> Self {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]    --> src/term.rs:675:13
[INFO] [stderr]     |
[INFO] [stderr] 675 | /             self.exec(terminfo::ParmRightCursor)
[INFO] [stderr] 676 | |                 .map(|ctx| ctx.arg(x).write(&mut self))
[INFO] [stderr] 677 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stderr]     | |________________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 675 |             let _ = self.exec(terminfo::ParmRightCursor)
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]    --> src/term.rs:679:13
[INFO] [stderr]     |
[INFO] [stderr] 679 | /             self.exec(terminfo::ParmLeftCursor)
[INFO] [stderr] 680 | |                 .map(|ctx| ctx.arg(-x).write(&mut self))
[INFO] [stderr] 681 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stderr]     | |________________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 679 |             let _ = self.exec(terminfo::ParmLeftCursor)
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]    --> src/term.rs:689:13
[INFO] [stderr]     |
[INFO] [stderr] 689 | /             self.exec(terminfo::ParmUpCursor)
[INFO] [stderr] 690 | |                 .map(|ctx| ctx.arg(y).write(&mut self))
[INFO] [stderr] 691 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stderr]     | |________________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 689 |             let _ = self.exec(terminfo::ParmUpCursor)
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]    --> src/term.rs:693:13
[INFO] [stderr]     |
[INFO] [stderr] 693 | /             self.exec(terminfo::ParmDownCursor)
[INFO] [stderr] 694 | |                 .map(|ctx| ctx.arg(-y).write(&mut self))
[INFO] [stderr] 695 | |                 .map_err(|e| self.err = Some(e));
[INFO] [stderr]     | |________________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 693 |             let _ = self.exec(terminfo::ParmDownCursor)
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]   --> src/terminfo/lang/executor.rs:52:9
[INFO] [stderr]    |
[INFO] [stderr] 52 |         self.env.write(&mut Parser::new(self.src), &mut w);
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 52 |         let _ = self.env.write(&mut Parser::new(self.src), &mut w);
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `nixterm` (lib) generated 42 warnings (run `cargo fix --lib -p nixterm` to apply 22 suggestions)
[INFO] [stderr] warning: `nixterm` (lib test) generated 42 warnings (42 duplicates)
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> examples/term.rs:38:5
[INFO] [stderr]    |
[INFO] [stderr] 38 |     term.println("");
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 38 |     let _ = term.println("");
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> examples/term.rs:51:5
[INFO] [stderr]    |
[INFO] [stderr] 51 |     term.println("");
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 51 |     let _ = term.println("");
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> examples/term.rs:52:5
[INFO] [stderr]    |
[INFO] [stderr] 52 |     term.println("");
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 52 |     let _ = term.println("");
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `nixterm` (example "term") generated 3 warnings
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/nixterm-5679537d16524a39)
[INFO] [stdout] 
[INFO] [stdout] running 21 tests
[INFO] [stdout] test terminfo::lang::tests::printf ... ok
[INFO] [stdout] test terminfo::lang::tests::simple ... ok
[INFO] [stdout] test terminfo::terminfo::test::lookup_ext_number ... ok
[INFO] [stdout] test term::test::term ... FAILED
[INFO] [stderr] thread 'terminfo::terminfo::test::lookup_ext_bool' panicked at 'panic in a function that cannot unwind', library/core/src/panicking.rs:126:5
[INFO] [stdout] thread 'terminfo::terminfo::test::lookup_ext_bool' panicked at 'misaligned pointer dereference: address must be a multiple of 0x2 but is 0x55ec6fbf2261', src/util.rs:20:27
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55ec6fbc439a - std::backtrace_rs::backtrace::libunwind::trace::h2f05d0192276a8f6
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
[INFO] [stdout]    1:     0x55ec6fbc439a - std::backtrace_rs::backtrace::trace_unsynchronized::hedc23dff7a1af150
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x55ec6fbc439a - std::sys_common::backtrace::_print_fmt::h17541ef7592f3ce2
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:65:5
[INFO] [stdout]    3:     0x55ec6fbc439a - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h20f75df5ab0c0792
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x55ec6fbe9c9f - core::fmt::write::h78109e6f466b3af6
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/fmt/mod.rs:1254:17
[INFO] [stdout]    5:     0x55ec6fbc1585 - std::io::Write::write_fmt::hd24bfb68a1b35a25
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/io/mod.rs:1698:15
[INFO] [stdout]    6:     0x55ec6fbc4165 - std::sys_common::backtrace::_print::h8dac57a9f8fbf9a5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    7:     0x55ec6fbc4165 - std::sys_common::backtrace::print::hf9ecbf41d1aa712f
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    8:     0x55ec6fbc5e1e - std::panicking::default_hook::{{closure}}::h04c07acfc84ca028
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:269:22
[INFO] [stdout]    9:     0x55ec6fbc5b51 - std::panicking::default_hook::h01f6bb23e1eceb2c
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:285:9
[INFO] [stdout]   10:     0x55ec6faca2ab - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h87fe9f7b2fd49e4c
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1987:9
[INFO] [stdout]   11:     0x55ec6faca2ab - test::test_main::{{closure}}::he94d679243a7531b
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:134:21
[INFO] [stdout]   12:     0x55ec6fbc6504 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f2d6d8b14c4769f
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1987:9
[INFO] [stdout]   13:     0x55ec6fbc6504 - std::panicking::rust_panic_with_hook::h2bb3722bbaf2f6df
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:695:13
[INFO] [stdout]   14:     0x55ec6fbc6279 - std::panicking::begin_panic_handler::{{closure}}::h91bc7f36a4be011b
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:582:13
[INFO] [stdout]   15:     0x55ec6fbc4806 - std::sys_common::backtrace::__rust_end_short_backtrace::h8b3d3717114f9e59
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:150:18
[INFO] [stdout]   16:     0x55ec6fbc5fd2 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:578:5
[INFO] [stdout]   17:     0x55ec6fa53063 - core::panicking::panic_fmt::hfd368e3fbdabea26
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panicking.rs:67:14
[INFO] [stdout]   18:     0x55ec6fa532cb - core::panicking::panic_misaligned_pointer_dereference::had7d9e6c3d35fc47
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panicking.rs:174:5
[INFO] [stdout]   19:     0x55ec6fa5f38f - nixterm::util::read_le_u16::ha08098f123106d89
[INFO] [stdout]                                at /opt/rustwide/workdir/src/util.rs:20:27
[INFO] [stdout]   20:     0x55ec6fa5f38f - nixterm::terminfo::terminfo::split_terminfo::h82b13026974ef239
[INFO] [stdout]                                at /opt/rustwide/workdir/src/terminfo/terminfo.rs:54:27
[INFO] [stdout]   21:     0x55ec6fa61c9a - nixterm::terminfo::terminfo::TermInfo::parse::h7c63a2c2ef697acf
[INFO] [stdout]                                at /opt/rustwide/workdir/src/terminfo/terminfo.rs:253:9
[INFO] [stdout]   22:     0x55ec6fa676c5 - nixterm::terminfo::terminfo::test::lookup_ext_bool::hb6d2ea7a0427576a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/terminfo/terminfo.rs:506:20
[INFO] [stdout]   23:     0x55ec6fa67687 - nixterm::terminfo::terminfo::test::lookup_ext_bool::{{closure}}::h3e4883f09dfce97b
[INFO] [stdout]                                at /opt/rustwide/workdir/src/terminfo/terminfo.rs:505:26
[INFO] [stdout]   24:     0x55ec6fa875e5 - core::ops::function::FnOnce::call_once::hae89a56f9dc39b71
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x55ec6facf17f - core::ops::function::FnOnce::call_once::ha6a70e79f7481a7e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x55ec6facf17f - test::__rust_begin_short_backtrace::hce33033019b61e69
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:655:18
[INFO] [stdout]   27:     0x55ec6fa9c96c - test::run_test::{{closure}}::h858d3528838ae3e5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:646:30
[INFO] [stdout]   28:     0x55ec6fa9c96c - core::ops::function::FnOnce::call_once{{vtable.shim}}::he8ac2b00f01ae79e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x55ec6face256 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h8093d25b522725ef
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   30:     0x55ec6face256 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h5c334c204e4a3913
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panic/unwind_safe.rs:271:9
[INFO] [stdout]   31:     0x55ec6face256 - std::panicking::try::do_call::ha8b740c7b9478074
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:485:40
[INFO] [stdout]   32:     0x55ec6face256 - std::panicking::try::h5d34f63d0e41b64e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:449:19
[INFO] [stdout]   33:     0x55ec6face256 - std::panic::catch_unwind::hcfbb511e1aa7fc67
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panic.rs:140:14
[INFO] [stdout]   34:     0x55ec6face256 - test::run_test_in_process::h9abda90f802eaf21
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:678:27
[INFO] [stdout]   35:     0x55ec6face256 - test::run_test::run_test_inner::{{closure}}::h0f058de91f6c6edf
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:572:39
[INFO] [stdout]   36:     0x55ec6fa97175 - test::run_test::run_test_inner::{{closure}}::h5ca48a4c59c6c1fb
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:599:37
[INFO] [stdout]   37:     0x55ec6fa97175 - std::sys_common::backtrace::__rust_begin_short_backtrace::h32bd51e1495d4a33
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:134:18
[INFO] [stdout]   38:     0x55ec6fa9c6b1 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hc086fae9b128b2db
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/thread/mod.rs:526:17
[INFO] [stdout]   39:     0x55ec6fa9c6b1 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb66571888d270d43
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panic/unwind_safe.rs:271:9
[INFO] [stdout]   40:     0x55ec6fa9c6b1 - std::panicking::try::do_call::h4fa2ef4f6e51fecf
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:485:40
[INFO] [stdout]   41:     0x55ec6fa9c6b1 - std::panicking::try::h1e9e22b8584489b5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:449:19
[INFO] [stdout]   42:     0x55ec6fa9c6b1 - std::panic::catch_unwind::h44698a3de0e0769e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panic.rs:140:14
[INFO] [stdout]   43:     0x55ec6fa9c6b1 - std::thread::Builder::spawn_unchecked_::{{closure}}::h50153abde3fe239e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/thread/mod.rs:525:30
[INFO] [stdout]   44:     0x55ec6fa9c6b1 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hbe5bbf6f38394364
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x55ec6fbcaa15 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h0d83cb2920a49046
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   46:     0x55ec6fbcaa15 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hbe0a008aa7d9ef59
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   47:     0x55ec6fbcaa15 - std::sys::unix::thread::Thread::new::thread_start::h3a466996bdf6b1f9
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys/unix/thread.rs:108:17
[INFO] [stdout]   48:     0x7fdcbeecab43 - <unknown>
[INFO] [stdout]   49:     0x7fdcbef5bbb4 - __clone
[INFO] [stdout]   50:                0x0 - <unknown>
[INFO] [stderr] stack backtrace:
[INFO] [stderr]    0:     0x55ec6fbc439a - std::backtrace_rs::backtrace::libunwind::trace::h2f05d0192276a8f6
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
[INFO] [stderr]    1:     0x55ec6fbc439a - std::backtrace_rs::backtrace::trace_unsynchronized::hedc23dff7a1af150
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stderr]    2:     0x55ec6fbc439a - std::sys_common::backtrace::_print_fmt::h17541ef7592f3ce2
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:65:5
[INFO] [stderr]    3:     0x55ec6fbc439a - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h20f75df5ab0c0792
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stderr]    4:     0x55ec6fbe9c9f - core::fmt::write::h78109e6f466b3af6
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/fmt/mod.rs:1254:17
[INFO] [stderr]    5:     0x55ec6fbc1485 - std::io::Write::write_fmt::hc59e1b02dd273c8a
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/io/mod.rs:1698:15
[INFO] [stderr]    6:     0x55ec6fbc4165 - std::sys_common::backtrace::_print::h8dac57a9f8fbf9a5
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stderr]    7:     0x55ec6fbc4165 - std::sys_common::backtrace::print::hf9ecbf41d1aa712f
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stderr]    8:     0x55ec6fbc5e1e - std::panicking::default_hook::{{closure}}::h04c07acfc84ca028
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:269:22
[INFO] [stderr]    9:     0x55ec6fbc5bc5 - std::panicking::default_hook::h01f6bb23e1eceb2c
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:288:9
[INFO] [stderr]   10:     0x55ec6faca2ab - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h87fe9f7b2fd49e4c
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1987:9
[INFO] [stderr]   11:     0x55ec6faca2ab - test::test_main::{{closure}}::he94d679243a7531b
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:134:21
[INFO] [stderr]   12:     0x55ec6fbc6504 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f2d6d8b14c4769f
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1987:9
[INFO] [stderr]   13:     0x55ec6fbc6504 - std::panicking::rust_panic_with_hook::h2bb3722bbaf2f6df
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:695:13
[INFO] [stderr]   14:     0x55ec6fbc6232 - std::panicking::begin_panic_handler::{{closure}}::h91bc7f36a4be011b
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:580:13
[INFO] [stderr]   15:     0x55ec6fbc4806 - std::sys_common::backtrace::__rust_end_short_backtrace::h8b3d3717114f9e59
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:150:18
[INFO] [stderr]   16:     0x55ec6fbc5fd2 - rust_begin_unwind
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:578:5
[INFO] [stderr]   17:     0x55ec6fa530a3 - core::panicking::panic_nounwind_fmt::h4230e26f622d4e40
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panicking.rs:96:14
[INFO] [stderr]   18:     0x55ec6fa53151 - core::panicking::panic_nounwind::h537ae7b3cc65361d
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panicking.rs:126:5
[INFO] [stderr]   19:     0x55ec6fa532e3 - core::panicking::panic_cannot_unwind::hdf0c9c3914f5e396
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panicking.rs:188:5
[INFO] [stderr]   20:     0x55ec6fa5f39a - nixterm::util::read_le_u16::ha08098f123106d89
[INFO] [stderr]                                at /opt/rustwide/workdir/src/util.rs:16:1
[INFO] [stderr]   21:     0x55ec6fa5f39a - nixterm::terminfo::terminfo::split_terminfo::h82b13026974ef239
[INFO] [stderr]                                at /opt/rustwide/workdir/src/terminfo/terminfo.rs:54:27
[INFO] [stderr]   22:     0x55ec6fa61c9a - nixterm::terminfo::terminfo::TermInfo::parse::h7c63a2c2ef697acf
[INFO] [stderr]                                at /opt/rustwide/workdir/src/terminfo/terminfo.rs:253:9
[INFO] [stderr]   23:     0x55ec6fa676c5 - nixterm::terminfo::terminfo::test::lookup_ext_bool::hb6d2ea7a0427576a
[INFO] [stderr]                                at /opt/rustwide/workdir/src/terminfo/terminfo.rs:506:20
[INFO] [stderr]   24:     0x55ec6fa67687 - nixterm::terminfo::terminfo::test::lookup_ext_bool::{{closure}}::h3e4883f09dfce97b
[INFO] [stderr]                                at /opt/rustwide/workdir/src/terminfo/terminfo.rs:505:26
[INFO] [stderr]   25:     0x55ec6fa875e5 - core::ops::function::FnOnce::call_once::hae89a56f9dc39b71
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   26:     0x55ec6facf17f - core::ops::function::FnOnce::call_once::ha6a70e79f7481a7e
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   27:     0x55ec6facf17f - test::__rust_begin_short_backtrace::hce33033019b61e69
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:655:18
[INFO] [stderr]   28:     0x55ec6fa9c96c - test::run_test::{{closure}}::h858d3528838ae3e5
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:646:30
[INFO] [stderr]   29:     0x55ec6fa9c96c - core::ops::function::FnOnce::call_once{{vtable.shim}}::he8ac2b00f01ae79e
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   30:     0x55ec6face256 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h8093d25b522725ef
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stderr]   31:     0x55ec6face256 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h5c334c204e4a3913
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panic/unwind_safe.rs:271:9
[INFO] [stderr]   32:     0x55ec6face256 - std::panicking::try::do_call::ha8b740c7b9478074
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:485:40
[INFO] [stderr]   33:     0x55ec6face256 - std::panicking::try::h5d34f63d0e41b64e
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:449:19
[INFO] [stderr]   34:     0x55ec6face256 - std::panic::catch_unwind::hcfbb511e1aa7fc67
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panic.rs:140:14
[INFO] [stderr]   35:     0x55ec6face256 - test::run_test_in_process::h9abda90f802eaf21
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:678:27
[INFO] [stderr]   36:     0x55ec6face256 - test::run_test::run_test_inner::{{closure}}::h0f058de91f6c6edf
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:572:39
[INFO] [stderr]   37:     0x55ec6fa97175 - test::run_test::run_test_inner::{{closure}}::h5ca48a4c59c6c1fb
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:599:37
[INFO] [stderr]   38:     0x55ec6fa97175 - std::sys_common::backtrace::__rust_begin_short_backtrace::h32bd51e1495d4a33
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:134:18
[INFO] [stderr]   39:     0x55ec6fa9c6b1 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hc086fae9b128b2db
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/thread/mod.rs:526:17
[INFO] [stderr]   40:     0x55ec6fa9c6b1 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb66571888d270d43
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panic/unwind_safe.rs:271:9
[INFO] [stderr]   41:     0x55ec6fa9c6b1 - std::panicking::try::do_call::h4fa2ef4f6e51fecf
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:485:40
[INFO] [stderr]   42:     0x55ec6fa9c6b1 - std::panicking::try::h1e9e22b8584489b5
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:449:19
[INFO] [stderr]   43:     0x55ec6fa9c6b1 - std::panic::catch_unwind::h44698a3de0e0769e
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panic.rs:140:14
[INFO] [stderr]   44:     0x55ec6fa9c6b1 - std::thread::Builder::spawn_unchecked_::{{closure}}::h50153abde3fe239e
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/thread/mod.rs:525:30
[INFO] [stderr]   45:     0x55ec6fa9c6b1 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hbe5bbf6f38394364
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   46:     0x55ec6fbcaa15 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h0d83cb2920a49046
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stderr]   47:     0x55ec6fbcaa15 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hbe0a008aa7d9ef59
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stderr]   48:     0x55ec6fbcaa15 - std::sys::unix::thread::Thread::new::thread_start::h3a466996bdf6b1f9
[INFO] [stderr]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys/unix/thread.rs:108:17
[INFO] [stderr]   49:     0x7fdcbeecab43 - <unknown>
[INFO] [stderr]   50:     0x7fdcbef5bbb4 - __clone
[INFO] [stderr]   51:                0x0 - <unknown>
[INFO] [stderr] thread caused non-unwinding panic. aborting.
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/deps/nixterm-5679537d16524a39` (signal: 6, SIGABRT: process abort signal)
[INFO] running `Command { std: "docker" "inspect" "e7d985410b711a5597e61b0e39800780b6412b30139a2ad1bbad0441fa0056e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e7d985410b711a5597e61b0e39800780b6412b30139a2ad1bbad0441fa0056e6", kill_on_drop: false }`
[INFO] [stdout] e7d985410b711a5597e61b0e39800780b6412b30139a2ad1bbad0441fa0056e6
