[INFO] fetching crate tripcode 0.2.1...
[INFO] testing tripcode-0.2.1 against master#1871252fc8bb672d40787e67404e6eaae7059369 for pr-125151
[INFO] extracting crate tripcode 0.2.1 into /workspace/builds/worker-5-tc1/source
[INFO] validating manifest of crates.io crate tripcode 0.2.1 on toolchain 1871252fc8bb672d40787e67404e6eaae7059369
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate tripcode 0.2.1
[INFO] finished tweaking crates.io crate tripcode 0.2.1
[INFO] tweaked toml for crates.io crate tripcode 0.2.1 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 25 packages to latest compatible versions
[INFO] [stderr]       Adding rand v0.3.23 (latest: v0.8.5)
[INFO] [stderr]       Adding rand v0.4.6 (latest: v0.8.5)
[INFO] [stderr]       Adding rand_core v0.3.1 (latest: v0.6.4)
[INFO] [stderr]       Adding rand_core v0.4.2 (latest: v0.6.4)
[INFO] [stderr]       Adding rdrand v0.4.0 (latest: v0.8.3)
[INFO] [stderr]       Adding time v0.1.45 (latest: v0.3.36)
[INFO] [stderr]       Adding wasi v0.10.0+wasi-snapshot-preview1 (latest: v0.13.1+wasi-0.2.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d4f3e1faea303f5cd1116f397b6c325d471281c4b2bcf08ba9f4510a97f78a32
[INFO] running `Command { std: "docker" "start" "-a" "d4f3e1faea303f5cd1116f397b6c325d471281c4b2bcf08ba9f4510a97f78a32", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d4f3e1faea303f5cd1116f397b6c325d471281c4b2bcf08ba9f4510a97f78a32", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d4f3e1faea303f5cd1116f397b6c325d471281c4b2bcf08ba9f4510a97f78a32", kill_on_drop: false }`
[INFO] [stdout] d4f3e1faea303f5cd1116f397b6c325d471281c4b2bcf08ba9f4510a97f78a32
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2b4cbfab96c9aae583dbbcc91b3b8190f1a7c7db4e4a0c247440b95948f7cfdf
[INFO] running `Command { std: "docker" "start" "-a" "2b4cbfab96c9aae583dbbcc91b3b8190f1a7c7db4e4a0c247440b95948f7cfdf", kill_on_drop: false }`
[INFO] [stderr]    Compiling gcc v0.3.55
[INFO] [stderr]    Compiling unicode-width v0.1.12
[INFO] [stderr]    Compiling time v0.1.45
[INFO] [stderr]    Compiling rand v0.3.23
[INFO] [stderr]    Compiling getopts v0.2.21
[INFO] [stderr]    Compiling rust-crypto v0.2.36
[INFO] [stderr]    Compiling tripcode v0.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/util.rs:152:22
[INFO] [stdout]     |
[INFO] [stdout] 152 |                 d @ 0...0x3F => d,
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 158 |     Some((try_dec!(salt1) << 26) | (try_dec!(salt2) << 18))
[INFO] [stdout]     |           --------------- in this macro invocation
[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]     = note: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/util.rs:152:22
[INFO] [stdout]     |
[INFO] [stdout] 152 |                 d @ 0...0x3F => d,
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 158 |     Some((try_dec!(salt1) << 26) | (try_dec!(salt2) << 18))
[INFO] [stdout]     |                                     --------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:106:21
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn append(self, &mut String);
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:109:30
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn write<W: Write>(self, &mut W) -> io::Result<()>;
[INFO] [stdout]     |                              ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut W`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |     fn decode_from_sjis(&[u8]) -> Option<Self>;
[INFO] [stdout]     |                         ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:115:26
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn append_sjis(self, &mut Vec<u8>);
[INFO] [stdout]     |                          ^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Vec<u8>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:118:35
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn write_sjis<W: Write>(self, &mut W) -> io::Result<()>;
[INFO] [stdout]     |                                   ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut W`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:143:26
[INFO] [stdout]     |
[INFO] [stdout] 143 |     fn decode_from_ascii(&[u8]) -> Option<Self>;
[INFO] [stdout]     |                          ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:149:27
[INFO] [stdout]     |
[INFO] [stdout] 149 |     fn append_ascii(self, &mut Vec<u8>);
[INFO] [stdout]     |                           ^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Vec<u8>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:152:36
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn write_ascii<W: Write>(self, &mut W) -> io::Result<()>;
[INFO] [stdout]     |                                    ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut W`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 274 |             ret |= try_dec!(enc_dec::Crypt::decode(c));
[INFO] [stdout]     |                    ----------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 277 |         ret |= try_dec!(enc_dec::CryptLastChar::decode(tripcode[9]));
[INFO] [stdout]     |                ----------------------------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 331 |             ret.0 |= try_dec!(enc_dec::Base64::decode(c));
[INFO] [stdout]     |                      ------------------------------------ in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 335 |         let d11 = try_dec!(enc_dec::Base64::decode(tripcode[10]));
[INFO] [stdout]     |                   ----------------------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 337 |         ret.1 = (d11 << 6 | try_dec!(enc_dec::Base64::decode(tripcode[11]))) as u8;
[INFO] [stdout]     |                             ----------------------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 496 |         ret.0 |= try_dec!(D::decode(c));
[INFO] [stdout]     |                  ---------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 502 |         ret.1 |= try_dec!(D::decode(c)) as u32;
[INFO] [stdout]     |                  ---------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 599 |             ret.0 |= try_dec_kana!(iter) as u64;
[INFO] [stdout]     |                      ------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` which comes from the expansion of the macro `try_dec_kana` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 599 |             ret.0 |= try_dec_kana!(iter) as u64;
[INFO] [stdout]     |                      ------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` which comes from the expansion of the macro `try_dec_kana` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 605 |             ret.1 |= try_dec_kana!(iter) as u32;
[INFO] [stdout]     |                      ------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` which comes from the expansion of the macro `try_dec_kana` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 605 |             ret.1 |= try_dec_kana!(iter) as u32;
[INFO] [stdout]     |                      ------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` which comes from the expansion of the macro `try_dec_kana` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/hash/mod.rs:641:13
[INFO] [stdout]     |
[INFO] [stdout] 641 |             try!(dst.write_all(enc_dec::ScKatakana::encode(((self.0).0 >> 58) as usize)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/hash/mod.rs:645:13
[INFO] [stdout]     |
[INFO] [stdout] 645 |             try!(dst.write_all(enc_dec::ScKatakana::encode(((self.0).1 >> 26) as usize)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/lib.rs:533:26
[INFO] [stdout]     |
[INFO] [stdout] 533 |                     x @ 0...0xF => x,
[INFO] [stdout]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 542 |             let byte = (try_hex!(d1) << 4) | try_hex!(d0);
[INFO] [stdout]     |                         ------------ in this macro invocation
[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: this warning originates in the macro `try_hex` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/lib.rs:533:26
[INFO] [stdout]     |
[INFO] [stdout] 533 |                     x @ 0...0xF => x,
[INFO] [stdout]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 542 |             let byte = (try_hex!(d1) << 4) | try_hex!(d0);
[INFO] [stdout]     |                                              ------------ in this macro invocation
[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: this warning originates in the macro `try_hex` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/lib.rs:563:46
[INFO] [stdout]     |
[INFO] [stdout] 563 |     let mut digest: [u8; 20] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/hash/mod.rs:301:47
[INFO] [stdout]     |
[INFO] [stdout] 301 |         let mut buf: [u8; 10] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/hash/mod.rs:355:47
[INFO] [stdout]     |
[INFO] [stdout] 355 |         let mut buf: [u8; 12] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/hash/mod.rs:527:47
[INFO] [stdout]     |
[INFO] [stdout] 527 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/hash/mod.rs:663:47
[INFO] [stdout]     |
[INFO] [stdout] 663 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 20]` does not permit being left uninitialized
[INFO] [stdout]    --> src/lib.rs:563:41
[INFO] [stdout]     |
[INFO] [stdout] 563 |     let mut digest: [u8; 20] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         this code causes undefined behavior when executed
[INFO] [stdout]     |                                         help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 10]` does not permit being left uninitialized
[INFO] [stdout]    --> src/hash/mod.rs:301:42
[INFO] [stdout]     |
[INFO] [stdout] 301 |         let mut buf: [u8; 10] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          this code causes undefined behavior when executed
[INFO] [stdout]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 12]` does not permit being left uninitialized
[INFO] [stdout]    --> src/hash/mod.rs:355:42
[INFO] [stdout]     |
[INFO] [stdout] 355 |         let mut buf: [u8; 12] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          this code causes undefined behavior when executed
[INFO] [stdout]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 15]` does not permit being left uninitialized
[INFO] [stdout]    --> src/hash/mod.rs:527:42
[INFO] [stdout]     |
[INFO] [stdout] 527 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          this code causes undefined behavior when executed
[INFO] [stdout]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 15]` does not permit being left uninitialized
[INFO] [stdout]    --> src/hash/mod.rs:663:42
[INFO] [stdout]     |
[INFO] [stdout] 663 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          this code causes undefined behavior when executed
[INFO] [stdout]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 35 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/bin/main.rs:61:28
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let mut passwords: Box<Iterator<Item=Vec<u8>>> = Box::new(
[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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let mut passwords: Box<dyn Iterator<Item=Vec<u8>>> = Box::new(
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/bin/main.rs:46:33
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Err(f) => fail!("{}", f.description()),
[INFO] [stdout]    |                                 ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.05s
[INFO] running `Command { std: "docker" "inspect" "2b4cbfab96c9aae583dbbcc91b3b8190f1a7c7db4e4a0c247440b95948f7cfdf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2b4cbfab96c9aae583dbbcc91b3b8190f1a7c7db4e4a0c247440b95948f7cfdf", kill_on_drop: false }`
[INFO] [stdout] 2b4cbfab96c9aae583dbbcc91b3b8190f1a7c7db4e4a0c247440b95948f7cfdf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] acb50db6c1c62a7dcf4249e2f6fc82c14a5c07a4eb055c8aad410dd8898b526d
[INFO] running `Command { std: "docker" "start" "-a" "acb50db6c1c62a7dcf4249e2f6fc82c14a5c07a4eb055c8aad410dd8898b526d", kill_on_drop: false }`
[INFO] [stderr]    Compiling encoding_index_tests v0.1.4
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/util.rs:152:22
[INFO] [stdout]     |
[INFO] [stdout] 152 |                 d @ 0...0x3F => d,
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 158 |     Some((try_dec!(salt1) << 26) | (try_dec!(salt2) << 18))
[INFO] [stdout]     |           --------------- in this macro invocation
[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]     = note: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/util.rs:152:22
[INFO] [stdout]     |
[INFO] [stdout] 152 |                 d @ 0...0x3F => d,
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 158 |     Some((try_dec!(salt1) << 26) | (try_dec!(salt2) << 18))
[INFO] [stdout]     |                                     --------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:106:21
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn append(self, &mut String);
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:109:30
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn write<W: Write>(self, &mut W) -> io::Result<()>;
[INFO] [stdout]     |                              ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut W`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |     fn decode_from_sjis(&[u8]) -> Option<Self>;
[INFO] [stdout]     |                         ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:115:26
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn append_sjis(self, &mut Vec<u8>);
[INFO] [stdout]     |                          ^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Vec<u8>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:118:35
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn write_sjis<W: Write>(self, &mut W) -> io::Result<()>;
[INFO] [stdout]     |                                   ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut W`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:143:26
[INFO] [stdout]     |
[INFO] [stdout] 143 |     fn decode_from_ascii(&[u8]) -> Option<Self>;
[INFO] [stdout]     |                          ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:149:27
[INFO] [stdout]     |
[INFO] [stdout] 149 |     fn append_ascii(self, &mut Vec<u8>);
[INFO] [stdout]     |                           ^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Vec<u8>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:152:36
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn write_ascii<W: Write>(self, &mut W) -> io::Result<()>;
[INFO] [stdout]     |                                    ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut W`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 274 |             ret |= try_dec!(enc_dec::Crypt::decode(c));
[INFO] [stdout]     |                    ----------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 277 |         ret |= try_dec!(enc_dec::CryptLastChar::decode(tripcode[9]));
[INFO] [stdout]     |                ----------------------------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 331 |             ret.0 |= try_dec!(enc_dec::Base64::decode(c));
[INFO] [stdout]     |                      ------------------------------------ in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 335 |         let d11 = try_dec!(enc_dec::Base64::decode(tripcode[10]));
[INFO] [stdout]     |                   ----------------------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 337 |         ret.1 = (d11 << 6 | try_dec!(enc_dec::Base64::decode(tripcode[11]))) as u8;
[INFO] [stdout]     |                             ----------------------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 496 |         ret.0 |= try_dec!(D::decode(c));
[INFO] [stdout]     |                  ---------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 502 |         ret.1 |= try_dec!(D::decode(c)) as u32;
[INFO] [stdout]     |                  ---------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 599 |             ret.0 |= try_dec_kana!(iter) as u64;
[INFO] [stdout]     |                      ------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` which comes from the expansion of the macro `try_dec_kana` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 599 |             ret.0 |= try_dec_kana!(iter) as u64;
[INFO] [stdout]     |                      ------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` which comes from the expansion of the macro `try_dec_kana` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 605 |             ret.1 |= try_dec_kana!(iter) as u32;
[INFO] [stdout]     |                      ------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` which comes from the expansion of the macro `try_dec_kana` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 605 |             ret.1 |= try_dec_kana!(iter) as u32;
[INFO] [stdout]     |                      ------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` which comes from the expansion of the macro `try_dec_kana` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/hash/mod.rs:641:13
[INFO] [stdout]     |
[INFO] [stdout] 641 |             try!(dst.write_all(enc_dec::ScKatakana::encode(((self.0).0 >> 58) as usize)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/hash/mod.rs:645:13
[INFO] [stdout]     |
[INFO] [stdout] 645 |             try!(dst.write_all(enc_dec::ScKatakana::encode(((self.0).1 >> 26) as usize)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/lib.rs:533:26
[INFO] [stdout]     |
[INFO] [stdout] 533 |                     x @ 0...0xF => x,
[INFO] [stdout]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 542 |             let byte = (try_hex!(d1) << 4) | try_hex!(d0);
[INFO] [stdout]     |                         ------------ in this macro invocation
[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: this warning originates in the macro `try_hex` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/lib.rs:533:26
[INFO] [stdout]     |
[INFO] [stdout] 533 |                     x @ 0...0xF => x,
[INFO] [stdout]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 542 |             let byte = (try_hex!(d1) << 4) | try_hex!(d0);
[INFO] [stdout]     |                                              ------------ in this macro invocation
[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: this warning originates in the macro `try_hex` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/lib.rs:563:46
[INFO] [stdout]     |
[INFO] [stdout] 563 |     let mut digest: [u8; 20] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/hash/mod.rs:301:47
[INFO] [stdout]     |
[INFO] [stdout] 301 |         let mut buf: [u8; 10] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/hash/mod.rs:355:47
[INFO] [stdout]     |
[INFO] [stdout] 355 |         let mut buf: [u8; 12] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/hash/mod.rs:527:47
[INFO] [stdout]     |
[INFO] [stdout] 527 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/hash/mod.rs:663:47
[INFO] [stdout]     |
[INFO] [stdout] 663 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 20]` does not permit being left uninitialized
[INFO] [stdout]    --> src/lib.rs:563:41
[INFO] [stdout]     |
[INFO] [stdout] 563 |     let mut digest: [u8; 20] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         this code causes undefined behavior when executed
[INFO] [stdout]     |                                         help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 10]` does not permit being left uninitialized
[INFO] [stdout]    --> src/hash/mod.rs:301:42
[INFO] [stdout]     |
[INFO] [stdout] 301 |         let mut buf: [u8; 10] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          this code causes undefined behavior when executed
[INFO] [stdout]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 12]` does not permit being left uninitialized
[INFO] [stdout]    --> src/hash/mod.rs:355:42
[INFO] [stdout]     |
[INFO] [stdout] 355 |         let mut buf: [u8; 12] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          this code causes undefined behavior when executed
[INFO] [stdout]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 15]` does not permit being left uninitialized
[INFO] [stdout]    --> src/hash/mod.rs:527:42
[INFO] [stdout]     |
[INFO] [stdout] 527 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          this code causes undefined behavior when executed
[INFO] [stdout]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 15]` does not permit being left uninitialized
[INFO] [stdout]    --> src/hash/mod.rs:663:42
[INFO] [stdout]     |
[INFO] [stdout] 663 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          this code causes undefined behavior when executed
[INFO] [stdout]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 35 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling encoding-index-singlebyte v1.20141219.5
[INFO] [stderr]    Compiling encoding-index-japanese v1.20141219.5
[INFO] [stderr]    Compiling encoding-index-korean v1.20141219.5
[INFO] [stderr]    Compiling encoding-index-tradchinese v1.20141219.5
[INFO] [stderr]    Compiling encoding-index-simpchinese v1.20141219.5
[INFO] [stderr]    Compiling encoding v0.2.33
[INFO] [stderr]    Compiling tripcode v0.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/bin/main.rs:61:28
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let mut passwords: Box<Iterator<Item=Vec<u8>>> = Box::new(
[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: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let mut passwords: Box<dyn Iterator<Item=Vec<u8>>> = Box::new(
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/bin/main.rs:46:33
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Err(f) => fail!("{}", f.description()),
[INFO] [stdout]    |                                 ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/util.rs:152:22
[INFO] [stdout]     |
[INFO] [stdout] 152 |                 d @ 0...0x3F => d,
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 158 |     Some((try_dec!(salt1) << 26) | (try_dec!(salt2) << 18))
[INFO] [stdout]     |           --------------- in this macro invocation
[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]     = note: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/util.rs:152:22
[INFO] [stdout]     |
[INFO] [stdout] 152 |                 d @ 0...0x3F => d,
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 158 |     Some((try_dec!(salt1) << 26) | (try_dec!(salt2) << 18))
[INFO] [stdout]     |                                     --------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:106:21
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn append(self, &mut String);
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:109:30
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn write<W: Write>(self, &mut W) -> io::Result<()>;
[INFO] [stdout]     |                              ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut W`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |     fn decode_from_sjis(&[u8]) -> Option<Self>;
[INFO] [stdout]     |                         ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:115:26
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn append_sjis(self, &mut Vec<u8>);
[INFO] [stdout]     |                          ^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Vec<u8>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:118:35
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn write_sjis<W: Write>(self, &mut W) -> io::Result<()>;
[INFO] [stdout]     |                                   ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut W`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:143:26
[INFO] [stdout]     |
[INFO] [stdout] 143 |     fn decode_from_ascii(&[u8]) -> Option<Self>;
[INFO] [stdout]     |                          ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:149:27
[INFO] [stdout]     |
[INFO] [stdout] 149 |     fn append_ascii(self, &mut Vec<u8>);
[INFO] [stdout]     |                           ^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Vec<u8>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/hash/mod.rs:152:36
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn write_ascii<W: Write>(self, &mut W) -> io::Result<()>;
[INFO] [stdout]     |                                    ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut W`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 274 |             ret |= try_dec!(enc_dec::Crypt::decode(c));
[INFO] [stdout]     |                    ----------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 277 |         ret |= try_dec!(enc_dec::CryptLastChar::decode(tripcode[9]));
[INFO] [stdout]     |                ----------------------------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 331 |             ret.0 |= try_dec!(enc_dec::Base64::decode(c));
[INFO] [stdout]     |                      ------------------------------------ in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 335 |         let d11 = try_dec!(enc_dec::Base64::decode(tripcode[10]));
[INFO] [stdout]     |                   ----------------------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 337 |         ret.1 = (d11 << 6 | try_dec!(enc_dec::Base64::decode(tripcode[11]))) as u8;
[INFO] [stdout]     |                             ----------------------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 496 |         ret.0 |= try_dec!(D::decode(c));
[INFO] [stdout]     |                  ---------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 502 |         ret.1 |= try_dec!(D::decode(c)) as u32;
[INFO] [stdout]     |                  ---------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 599 |             ret.0 |= try_dec_kana!(iter) as u64;
[INFO] [stdout]     |                      ------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` which comes from the expansion of the macro `try_dec_kana` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 599 |             ret.0 |= try_dec_kana!(iter) as u64;
[INFO] [stdout]     |                      ------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` which comes from the expansion of the macro `try_dec_kana` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 605 |             ret.1 |= try_dec_kana!(iter) as u32;
[INFO] [stdout]     |                      ------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` which comes from the expansion of the macro `try_dec_kana` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/hash/mod.rs:86:14
[INFO] [stdout]     |
[INFO] [stdout] 86  |             0...0x3F => $d,
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 605 |             ret.1 |= try_dec_kana!(iter) as u32;
[INFO] [stdout]     |                      ------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` which comes from the expansion of the macro `try_dec_kana` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/hash/mod.rs:641:13
[INFO] [stdout]     |
[INFO] [stdout] 641 |             try!(dst.write_all(enc_dec::ScKatakana::encode(((self.0).0 >> 58) as usize)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/hash/mod.rs:645:13
[INFO] [stdout]     |
[INFO] [stdout] 645 |             try!(dst.write_all(enc_dec::ScKatakana::encode(((self.0).1 >> 26) as usize)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/lib.rs:533:26
[INFO] [stdout]     |
[INFO] [stdout] 533 |                     x @ 0...0xF => x,
[INFO] [stdout]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 542 |             let byte = (try_hex!(d1) << 4) | try_hex!(d0);
[INFO] [stdout]     |                         ------------ in this macro invocation
[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: this warning originates in the macro `try_hex` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/lib.rs:533:26
[INFO] [stdout]     |
[INFO] [stdout] 533 |                     x @ 0...0xF => x,
[INFO] [stdout]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] ...
[INFO] [stdout] 542 |             let byte = (try_hex!(d1) << 4) | try_hex!(d0);
[INFO] [stdout]     |                                              ------------ in this macro invocation
[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: this warning originates in the macro `try_hex` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/lib.rs:563:46
[INFO] [stdout]     |
[INFO] [stdout] 563 |     let mut digest: [u8; 20] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/hash/mod.rs:301:47
[INFO] [stdout]     |
[INFO] [stdout] 301 |         let mut buf: [u8; 10] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/hash/mod.rs:355:47
[INFO] [stdout]     |
[INFO] [stdout] 355 |         let mut buf: [u8; 12] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/hash/mod.rs:527:47
[INFO] [stdout]     |
[INFO] [stdout] 527 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/hash/mod.rs:663:47
[INFO] [stdout]     |
[INFO] [stdout] 663 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 20]` does not permit being left uninitialized
[INFO] [stdout]    --> src/lib.rs:563:41
[INFO] [stdout]     |
[INFO] [stdout] 563 |     let mut digest: [u8; 20] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         this code causes undefined behavior when executed
[INFO] [stdout]     |                                         help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 10]` does not permit being left uninitialized
[INFO] [stdout]    --> src/hash/mod.rs:301:42
[INFO] [stdout]     |
[INFO] [stdout] 301 |         let mut buf: [u8; 10] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          this code causes undefined behavior when executed
[INFO] [stdout]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 12]` does not permit being left uninitialized
[INFO] [stdout]    --> src/hash/mod.rs:355:42
[INFO] [stdout]     |
[INFO] [stdout] 355 |         let mut buf: [u8; 12] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          this code causes undefined behavior when executed
[INFO] [stdout]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 15]` does not permit being left uninitialized
[INFO] [stdout]    --> src/hash/mod.rs:527:42
[INFO] [stdout]     |
[INFO] [stdout] 527 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          this code causes undefined behavior when executed
[INFO] [stdout]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `[u8; 15]` does not permit being left uninitialized
[INFO] [stdout]    --> src/hash/mod.rs:663:42
[INFO] [stdout]     |
[INFO] [stdout] 663 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          this code causes undefined behavior when executed
[INFO] [stdout]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 35 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.17s
[INFO] running `Command { std: "docker" "inspect" "acb50db6c1c62a7dcf4249e2f6fc82c14a5c07a4eb055c8aad410dd8898b526d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "acb50db6c1c62a7dcf4249e2f6fc82c14a5c07a4eb055c8aad410dd8898b526d", kill_on_drop: false }`
[INFO] [stdout] acb50db6c1c62a7dcf4249e2f6fc82c14a5c07a4eb055c8aad410dd8898b526d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] bfd24f9e3594d242e2bf33bfc564d2b1bd7fa72aeed3ea60d91d6edd6731d72b
[INFO] running `Command { std: "docker" "start" "-a" "bfd24f9e3594d242e2bf33bfc564d2b1bd7fa72aeed3ea60d91d6edd6731d72b", kill_on_drop: false }`
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/util.rs:152:22
[INFO] [stderr]     |
[INFO] [stderr] 152 |                 d @ 0...0x3F => d,
[INFO] [stderr]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] ...
[INFO] [stderr] 158 |     Some((try_dec!(salt1) << 26) | (try_dec!(salt2) << 18))
[INFO] [stderr]     |           --------------- in this macro invocation
[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]     = note: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/util.rs:152:22
[INFO] [stderr]     |
[INFO] [stderr] 152 |                 d @ 0...0x3F => d,
[INFO] [stderr]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] ...
[INFO] [stderr] 158 |     Some((try_dec!(salt1) << 26) | (try_dec!(salt2) << 18))
[INFO] [stderr]     |                                     --------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> src/hash/mod.rs:106:21
[INFO] [stderr]     |
[INFO] [stderr] 106 |     fn append(self, &mut String);
[INFO] [stderr]     |                     ^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut String`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> src/hash/mod.rs:109:30
[INFO] [stderr]     |
[INFO] [stderr] 109 |     fn write<W: Write>(self, &mut W) -> io::Result<()>;
[INFO] [stderr]     |                              ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut W`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> src/hash/mod.rs:112:25
[INFO] [stderr]     |
[INFO] [stderr] 112 |     fn decode_from_sjis(&[u8]) -> Option<Self>;
[INFO] [stderr]     |                         ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> src/hash/mod.rs:115:26
[INFO] [stderr]     |
[INFO] [stderr] 115 |     fn append_sjis(self, &mut Vec<u8>);
[INFO] [stderr]     |                          ^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Vec<u8>`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> src/hash/mod.rs:118:35
[INFO] [stderr]     |
[INFO] [stderr] 118 |     fn write_sjis<W: Write>(self, &mut W) -> io::Result<()>;
[INFO] [stderr]     |                                   ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut W`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> src/hash/mod.rs:143:26
[INFO] [stderr]     |
[INFO] [stderr] 143 |     fn decode_from_ascii(&[u8]) -> Option<Self>;
[INFO] [stderr]     |                          ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> src/hash/mod.rs:149:27
[INFO] [stderr]     |
[INFO] [stderr] 149 |     fn append_ascii(self, &mut Vec<u8>);
[INFO] [stderr]     |                           ^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Vec<u8>`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> src/hash/mod.rs:152:36
[INFO] [stderr]     |
[INFO] [stderr] 152 |     fn write_ascii<W: Write>(self, &mut W) -> io::Result<()>;
[INFO] [stderr]     |                                    ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut W`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/hash/mod.rs:86:14
[INFO] [stderr]     |
[INFO] [stderr] 86  |             0...0x3F => $d,
[INFO] [stderr]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] ...
[INFO] [stderr] 274 |             ret |= try_dec!(enc_dec::Crypt::decode(c));
[INFO] [stderr]     |                    ----------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/hash/mod.rs:86:14
[INFO] [stderr]     |
[INFO] [stderr] 86  |             0...0x3F => $d,
[INFO] [stderr]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] ...
[INFO] [stderr] 277 |         ret |= try_dec!(enc_dec::CryptLastChar::decode(tripcode[9]));
[INFO] [stderr]     |                ----------------------------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/hash/mod.rs:86:14
[INFO] [stderr]     |
[INFO] [stderr] 86  |             0...0x3F => $d,
[INFO] [stderr]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] ...
[INFO] [stderr] 331 |             ret.0 |= try_dec!(enc_dec::Base64::decode(c));
[INFO] [stderr]     |                      ------------------------------------ in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/hash/mod.rs:86:14
[INFO] [stderr]     |
[INFO] [stderr] 86  |             0...0x3F => $d,
[INFO] [stderr]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] ...
[INFO] [stderr] 335 |         let d11 = try_dec!(enc_dec::Base64::decode(tripcode[10]));
[INFO] [stderr]     |                   ----------------------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/hash/mod.rs:86:14
[INFO] [stderr]     |
[INFO] [stderr] 86  |             0...0x3F => $d,
[INFO] [stderr]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] ...
[INFO] [stderr] 337 |         ret.1 = (d11 << 6 | try_dec!(enc_dec::Base64::decode(tripcode[11]))) as u8;
[INFO] [stderr]     |                             ----------------------------------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/hash/mod.rs:86:14
[INFO] [stderr]     |
[INFO] [stderr] 86  |             0...0x3F => $d,
[INFO] [stderr]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] ...
[INFO] [stderr] 496 |         ret.0 |= try_dec!(D::decode(c));
[INFO] [stderr]     |                  ---------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/hash/mod.rs:86:14
[INFO] [stderr]     |
[INFO] [stderr] 86  |             0...0x3F => $d,
[INFO] [stderr]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] ...
[INFO] [stderr] 502 |         ret.1 |= try_dec!(D::decode(c)) as u32;
[INFO] [stderr]     |                  ---------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/hash/mod.rs:86:14
[INFO] [stderr]     |
[INFO] [stderr] 86  |             0...0x3F => $d,
[INFO] [stderr]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] ...
[INFO] [stderr] 599 |             ret.0 |= try_dec_kana!(iter) as u64;
[INFO] [stderr]     |                      ------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` which comes from the expansion of the macro `try_dec_kana` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/hash/mod.rs:86:14
[INFO] [stderr]     |
[INFO] [stderr] 86  |             0...0x3F => $d,
[INFO] [stderr]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] ...
[INFO] [stderr] 605 |             ret.1 |= try_dec_kana!(iter) as u32;
[INFO] [stderr]     |                      ------------------- in this macro invocation
[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: this warning originates in the macro `try_dec` which comes from the expansion of the macro `try_dec_kana` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/hash/mod.rs:641:13
[INFO] [stderr]     |
[INFO] [stderr] 641 |             try!(dst.write_all(enc_dec::ScKatakana::encode(((self.0).0 >> 58) as usize)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/hash/mod.rs:645:13
[INFO] [stderr]     |
[INFO] [stderr] 645 |             try!(dst.write_all(enc_dec::ScKatakana::encode(((self.0).1 >> 26) as usize)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/lib.rs:533:26
[INFO] [stderr]     |
[INFO] [stderr] 533 |                     x @ 0...0xF => x,
[INFO] [stderr]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] ...
[INFO] [stderr] 542 |             let byte = (try_hex!(d1) << 4) | try_hex!(d0);
[INFO] [stderr]     |                         ------------ in this macro invocation
[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: this warning originates in the macro `try_hex` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/lib.rs:533:26
[INFO] [stderr]     |
[INFO] [stderr] 533 |                     x @ 0...0xF => x,
[INFO] [stderr]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] ...
[INFO] [stderr] 542 |             let byte = (try_hex!(d1) << 4) | try_hex!(d0);
[INFO] [stderr]     |                                              ------------ in this macro invocation
[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: this warning originates in the macro `try_hex` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/lib.rs:563:46
[INFO] [stderr]     |
[INFO] [stderr] 563 |     let mut digest: [u8; 20] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                              ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/hash/mod.rs:301:47
[INFO] [stderr]     |
[INFO] [stderr] 301 |         let mut buf: [u8; 10] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                               ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/hash/mod.rs:355:47
[INFO] [stderr]     |
[INFO] [stderr] 355 |         let mut buf: [u8; 12] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                               ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/hash/mod.rs:527:47
[INFO] [stderr]     |
[INFO] [stderr] 527 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                               ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/hash/mod.rs:663:47
[INFO] [stderr]     |
[INFO] [stderr] 663 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                               ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the type `[u8; 20]` does not permit being left uninitialized
[INFO] [stderr]    --> src/lib.rs:563:41
[INFO] [stderr]     |
[INFO] [stderr] 563 |     let mut digest: [u8; 20] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                         |
[INFO] [stderr]     |                                         this code causes undefined behavior when executed
[INFO] [stderr]     |                                         help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]     |
[INFO] [stderr]     = note: integers must be initialized
[INFO] [stderr]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: the type `[u8; 10]` does not permit being left uninitialized
[INFO] [stderr]    --> src/hash/mod.rs:301:42
[INFO] [stderr]     |
[INFO] [stderr] 301 |         let mut buf: [u8; 10] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                          |
[INFO] [stderr]     |                                          this code causes undefined behavior when executed
[INFO] [stderr]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]     |
[INFO] [stderr]     = note: integers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: the type `[u8; 12]` does not permit being left uninitialized
[INFO] [stderr]    --> src/hash/mod.rs:355:42
[INFO] [stderr]     |
[INFO] [stderr] 355 |         let mut buf: [u8; 12] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                          |
[INFO] [stderr]     |                                          this code causes undefined behavior when executed
[INFO] [stderr]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]     |
[INFO] [stderr]     = note: integers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: the type `[u8; 15]` does not permit being left uninitialized
[INFO] [stderr]    --> src/hash/mod.rs:527:42
[INFO] [stderr]     |
[INFO] [stderr] 527 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                          |
[INFO] [stderr]     |                                          this code causes undefined behavior when executed
[INFO] [stderr]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]     |
[INFO] [stderr]     = note: integers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: the type `[u8; 15]` does not permit being left uninitialized
[INFO] [stderr]    --> src/hash/mod.rs:663:42
[INFO] [stderr]     |
[INFO] [stderr] 663 |         let mut buf: [u8; 15] = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                          |
[INFO] [stderr]     |                                          this code causes undefined behavior when executed
[INFO] [stderr]     |                                          help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]     |
[INFO] [stderr]     = note: integers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: `tripcode` (lib) generated 35 warnings (2 duplicates) (run `cargo fix --lib -p tripcode` to apply 21 suggestions)
[INFO] [stderr] warning: `tripcode` (lib test) generated 35 warnings (35 duplicates)
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/bin/main.rs:61:28
[INFO] [stderr]    |
[INFO] [stderr] 61 |     let mut passwords: Box<Iterator<Item=Vec<u8>>> = Box::new(
[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: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 61 |     let mut passwords: Box<dyn Iterator<Item=Vec<u8>>> = Box::new(
[INFO] [stderr]    |                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/bin/main.rs:46:33
[INFO] [stderr]    |
[INFO] [stderr] 46 |         Err(f) => fail!("{}", f.description()),
[INFO] [stderr]    |                                 ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `tripcode` (bin "tripcode" test) generated 2 warnings (run `cargo fix --bin "tripcode" --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/tripcode-48c10fed490966f2)
[INFO] [stdout] 
[INFO] [stdout] running 25 tests
[INFO] [stdout] test hash::enc_dec::tests::b64_enc_dec ... ok
[INFO] [stdout] test hash::enc_dec::tests::crypt_dec_eot ... ok
[INFO] [stdout] test hash::enc_dec::tests::sc_sjis_enc_dec ... ok
[INFO] [stderr] thread 'tests::mona_12_matches' panicked at src/lib.rs:588:24:
[INFO] [stderr] misaligned pointer dereference: address must be a multiple of 0x8 but is 0x7f76b59c09e4
[INFO] [stdout] test hash::tests::mona_dec_enc ... ok
[INFO] [stderr] stack backtrace:
[INFO] [stdout] test hash::tests::sc_15_dec_enc ... ok
[INFO] [stdout] test hash::enc_dec::tests::crypt_invalid ... ok
[INFO] [stdout] test hash::enc_dec::tests::sc_sjis_invalid ... ok
[INFO] [stdout] test hash::tests::des_dec_enc ... ok
[INFO] [stdout] test hash::tests::decode_fails ... ok
[INFO] [stdout] test hash::enc_dec::tests::crypt_enc_dec ... ok
[INFO] [stdout] test hash::enc_dec::tests::b64_invalid ... ok
[INFO] [stdout] test hash::tests::sc_katakana_dec_enc ... ok
[INFO] [stdout] test hash::tests::sc_katakana_sjis_enc_dec ... ok
[INFO] [stdout] test hash::tests::sc_sjis_enc_dec ... ok
[INFO] [stdout] test hash::tests::sc_dec_enc ... ok
[INFO] [stderr]    0:     0x55be6f4983b5 - std::backtrace_rs::backtrace::libunwind::trace::h59d96bdb08384354
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/../../backtrace/src/backtrace/libunwind.rs:105:5
[INFO] [stderr]    1:     0x55be6f4983b5 - std::backtrace_rs::backtrace::trace_unsynchronized::h9cf5becacfc93fba
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stderr]    2:     0x55be6f4983b5 - std::sys_common::backtrace::_print_fmt::h10b76d10405dbd48
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stderr]    3:     0x55be6f4983b5 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h6ed9e62a156d84e4
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stderr]    4:     0x55be6f4bebfb - core::fmt::rt::Argument::fmt::h645c680983f03c9f
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/fmt/rt.rs:165:63
[INFO] [stderr]    5:     0x55be6f4bebfb - core::fmt::write::h8bcd80919a02be29
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/fmt/mod.rs:1169:21
[INFO] [stderr]    6:     0x55be6f495c9f - std::io::Write::write_fmt::hed769ca6c29434ec
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/io/mod.rs:1835:15
[INFO] [stderr]    7:     0x55be6f49818e - std::sys_common::backtrace::_print::h6306f131a28d62b0
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stderr]    8:     0x55be6f49818e - std::sys_common::backtrace::print::h7079288e0a26dfcc
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stderr]    9:     0x55be6f499bb9 - std::panicking::default_hook::{{closure}}::hb063ecec81a736ba
[INFO] [stderr]   10:     0x55be6f4998fd - std::panicking::default_hook::hd56ee406bf547b5c
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:298:9
[INFO] [stderr]   11:     0x55be6f45a81a - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::he5eacdef44c8728f
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2036:9
[INFO] [stderr]   12:     0x55be6f45a81a - test::test_main::{{closure}}::h0ec9aed229e79095
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:137:21
[INFO] [stderr]   13:     0x55be6f49a1bb - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hcbd0d80e1ad4e4f9
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2036:9
[INFO] [stderr]   14:     0x55be6f49a1bb - std::panicking::rust_panic_with_hook::h624aa3ca42ebb8f2
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:799:13
[INFO] [stderr]   15:     0x55be6f499f34 - std::panicking::begin_panic_handler::{{closure}}::hbc4e76194a5e287c
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:664:13
[INFO] [stderr]   16:     0x55be6f498879 - std::sys_common::backtrace::__rust_end_short_backtrace::h847fedc9d1ff7b6d
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stderr]   17:     0x55be6f499c67 - rust_begin_unwind
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:652:5
[INFO] [stderr]   18:     0x55be6f3fa8a0 - core::panicking::panic_nounwind_fmt::runtime::h4b9f1774825d29a1
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/panicking.rs:110:18
[INFO] [stderr]   19:     0x55be6f3fa8a0 - core::panicking::panic_nounwind_fmt::h7f70629ab29f76f1
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/panicking.rs:120:5
[INFO] [stderr]   20:     0x55be6f3faad3 - core::panicking::panic_misaligned_pointer_dereference::h056bc83508bf2907
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/panicking.rs:287:5
[INFO] [stderr]   21:     0x55be6f421094 - <tripcode::Mona12 as tripcode::TripcodeGenerator>::hash::{{closure}}::h773a29d2caf7918e
[INFO] [stderr]                                at /opt/rustwide/workdir/src/lib.rs:588:24
[INFO] [stderr]   22:     0x55be6f41d2d1 - tripcode::sha1_internal::h3a92aa1ee7e5f335
[INFO] [stderr]                                at /opt/rustwide/workdir/src/lib.rs:580:5
[INFO] [stderr]   23:     0x55be6f420ebd - <tripcode::Mona12 as tripcode::TripcodeGenerator>::hash::h232bb1a7715d0988
[INFO] [stderr]                                at /opt/rustwide/workdir/src/lib.rs:587:9
[INFO] [stderr]   24:     0x55be6f419556 - tripcode::mona_internal::h8c5c8c1ad4e4dd3f
[INFO] [stderr]                                at /opt/rustwide/workdir/src/lib.rs:477:20
[INFO] [stderr]   25:     0x55be6f4196cb - <tripcode::Mona as tripcode::TripcodeGenerator>::hash::h8d51cfcca2770631
[INFO] [stderr]                                at /opt/rustwide/workdir/src/lib.rs:488:9
[INFO] [stderr]   26:     0x55be6f418052 - tripcode::TripcodeGenerator::generate::h8016cce4552abfb0
[INFO] [stderr]                                at /opt/rustwide/workdir/src/lib.rs:273:9
[INFO] [stderr]   27:     0x55be6f40b2a3 - tripcode::tests::mona_12_matches::h0bdfa3b0d3a7ffa3
[INFO] [stderr]                                at /opt/rustwide/workdir/src/lib.rs:722:28
[INFO] [stderr]   28:     0x55be6f40b267 - tripcode::tests::mona_12_matches::{{closure}}::h5dcac5769550444f
[INFO] [stderr]                                at /opt/rustwide/workdir/src/lib.rs:763:25
[INFO] [stderr]   29:     0x55be6f3fc386 - core::ops::function::FnOnce::call_once::hb5a70e81230d7dfe
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   30:     0x55be6f45f1fb - core::ops::function::FnOnce::call_once::h2e43a8f6f3d94b99
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   31:     0x55be6f45f1fb - test::__rust_begin_short_backtrace::h214c9f2d2d3fee90
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:625:18
[INFO] [stderr]   32:     0x55be6f45e901 - test::run_test_in_process::{{closure}}::h510b7ba7990692a5
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:648:60
[INFO] [stderr]   33:     0x55be6f45e901 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4157186197a93871
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stderr]   34:     0x55be6f45e901 - std::panicking::try::do_call::h1bf2463bccd4b28c
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:559:40
[INFO] [stderr]   35:     0x55be6f45e901 - std::panicking::try::hd6d4808c9fab4fa5
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:523:19
[INFO] [stderr]   36:     0x55be6f45e901 - std::panic::catch_unwind::hd5641d97d123f9f2
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panic.rs:149:14
[INFO] [stderr]   37:     0x55be6f45e901 - test::run_test_in_process::hc273b71c8b878a4c
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:648:27
[INFO] [stderr]   38:     0x55be6f45e901 - test::run_test::{{closure}}::h6838df834eb8467e
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:569:43
[INFO] [stderr]   39:     0x55be6f4272c4 - test::run_test::{{closure}}::h608b98ecff5665fb
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:599:41
[INFO] [stderr]   40:     0x55be6f4272c4 - std::sys_common::backtrace::__rust_begin_short_backtrace::hdc4182b97d1042e9
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stderr]   41:     0x55be6f42bcf2 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h571773fd21d674c8
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/thread/mod.rs:542:17
[INFO] [stderr]   42:     0x55be6f42bcf2 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hdcd384cf2fa70ba3
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stderr]   43:     0x55be6f42bcf2 - std::panicking::try::do_call::h4f1a44bd81423be1
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:559:40
[INFO] [stderr]   44:     0x55be6f42bcf2 - std::panicking::try::h5e02afcb81dcd361
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:523:19
[INFO] [stderr]   45:     0x55be6f42bcf2 - std::panic::catch_unwind::h022f75775bfd8c45
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panic.rs:149:14
[INFO] [stderr]   46:     0x55be6f42bcf2 - std::thread::Builder::spawn_unchecked_::{{closure}}::hf5a62e9e4e6df1f8
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/thread/mod.rs:541:30
[INFO] [stderr]   47:     0x55be6f42bcf2 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6d56360aeb9509a7
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   48:     0x55be6f49e39b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h7a343dc551c06baa
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2022:9
[INFO] [stderr]   49:     0x55be6f49e39b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h30b8111cbaa644f3
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2022:9
[INFO] [stderr]   50:     0x55be6f49e39b - std::sys::pal::unix::thread::Thread::new::thread_start::h7404e134e61e7a11
[INFO] [stderr]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys/pal/unix/thread.rs:108:17
[INFO] [stderr]   51:     0x7f76b625dac3 - <unknown>
[INFO] [stderr]   52:     0x7f76b62eea04 - __clone
[INFO] [stderr]   53:                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/tripcode-48c10fed490966f2` (signal: 6, SIGABRT: process abort signal)
[INFO] running `Command { std: "docker" "inspect" "bfd24f9e3594d242e2bf33bfc564d2b1bd7fa72aeed3ea60d91d6edd6731d72b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bfd24f9e3594d242e2bf33bfc564d2b1bd7fa72aeed3ea60d91d6edd6731d72b", kill_on_drop: false }`
[INFO] [stdout] bfd24f9e3594d242e2bf33bfc564d2b1bd7fa72aeed3ea60d91d6edd6731d72b
