D: [iurt_root_command] chroot Building target platforms: x86_64 Building for target x86_64 sh: line 4: [: -j8: integer expression expected sh: line 4: [: -j8: integer expression expected Installing /home/pterjan/rpmbuild/SRPMS/rust-encoding-0.2.33-1.mga10.src.rpm Executing(%mkbuilddir): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.mayUHF + umask 022 + cd /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build + test -d /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build + /usr/bin/rm -rf /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build + /usr/bin/mkdir -p /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build + /usr/bin/mkdir -p /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/SPECPARTS + RPM_EC=0 ++ jobs -p + exit 0 sh: line 4: [: -j8: integer expression expected Executing(%prep): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.ECtzrm + umask 022 + cd /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build + '[' 1 -eq 1 ']' + '[' 1 -eq 1 ']' + '[' 1 -eq 1 ']' + cd /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build + rm -rf encoding-0.2.33 + /usr/lib/rpm/rpmuncompress -x /home/pterjan/rpmbuild/SOURCES/encoding-0.2.33.crate + STATUS=0 + '[' 0 -ne 0 ']' + cd encoding-0.2.33 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + /usr/lib/rpm/rpmuncompress /home/pterjan/rpmbuild/SOURCES/encoding-fix-metadata.diff + /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f + set -euo pipefail + /usr/bin/mkdir -p target/rpm + /usr/bin/ln -s rpm target/release + /usr/bin/rm -rf .cargo/ + /usr/bin/mkdir -p .cargo + cat + cat + /usr/bin/rm -f Cargo.lock + /usr/bin/rm -f Cargo.toml.orig + RPM_EC=0 ++ jobs -p + exit 0 sh: line 4: [: -j8: integer expression expected Executing(%generate_buildrequires): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.N5UUxK + umask 022 + cd /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build + cd encoding-0.2.33 + /usr/bin/cargo2rpm --path Cargo.toml buildrequires --with-check + RPM_EC=0 ++ jobs -p + exit 0 sh: line 4: [: -j8: integer expression expected Executing(%build): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.2XZJAe + umask 022 + cd /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build + CFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full' + export CFLAGS + CXXFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full' + export CXXFLAGS + FFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full ' + export FFLAGS + FCFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,--as-needed -Wl,--no-undefined -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--build-id=sha1 -Wl,--enable-new-dtags -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd encoding-0.2.33 + '[' 1 -eq 1 ']' + '[' 1 -eq 1 ']' + /usr/bin/env CARGO_HOME=.cargo RUSTC_BOOTSTRAP=1 'RUSTFLAGS=-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn' /usr/bin/cargo build -j48 -Z avoid-dev-deps --profile rpm warning: no edition set: defaulting to the 2015 edition while the latest is 2021 Compiling encoding-index-singlebyte v1.20141219.5 Compiling encoding-index-simpchinese v1.20141219.5 Running `/usr/bin/rustc --crate-name encoding_index_singlebyte --edition=2015 /usr/share/cargo/registry/encoding-index-singlebyte-1.20141219.5/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C codegen-units=1 -C debuginfo=2 --check-cfg 'cfg(docsrs)' --check-cfg 'cfg(feature, values())' -C metadata=b3616d94acf4c23a -C extra-filename=-b3616d94acf4c23a --out-dir /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps -L dependency=/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps --cap-lints allow -Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn` Compiling encoding-index-korean v1.20141219.5 Compiling encoding-index-tradchinese v1.20141219.5 Compiling encoding-index-japanese v1.20141219.5 Running `/usr/bin/rustc --crate-name encoding_index_simpchinese --edition=2015 /usr/share/cargo/registry/encoding-index-simpchinese-1.20141219.5/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C codegen-units=1 -C debuginfo=2 --check-cfg 'cfg(docsrs)' --check-cfg 'cfg(feature, values())' -C metadata=c948a82825b1eafa -C extra-filename=-c948a82825b1eafa --out-dir /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps -L dependency=/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps --cap-lints allow -Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn` Running `/usr/bin/rustc --crate-name encoding_index_korean --edition=2015 /usr/share/cargo/registry/encoding-index-korean-1.20141219.5/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C codegen-units=1 -C debuginfo=2 --check-cfg 'cfg(docsrs)' --check-cfg 'cfg(feature, values())' -C metadata=f529fc4feb5dd03b -C extra-filename=-f529fc4feb5dd03b --out-dir /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps -L dependency=/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps --cap-lints allow -Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn` Running `/usr/bin/rustc --crate-name encoding_index_tradchinese --edition=2015 /usr/share/cargo/registry/encoding-index-tradchinese-1.20141219.5/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C codegen-units=1 -C debuginfo=2 --check-cfg 'cfg(docsrs)' --check-cfg 'cfg(feature, values())' -C metadata=9e368b710ac7141d -C extra-filename=-9e368b710ac7141d --out-dir /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps -L dependency=/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps --cap-lints allow -Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn` Running `/usr/bin/rustc --crate-name encoding_index_japanese --edition=2015 /usr/share/cargo/registry/encoding-index-japanese-1.20141219.5/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C codegen-units=1 -C debuginfo=2 --check-cfg 'cfg(docsrs)' --check-cfg 'cfg(feature, values())' -C metadata=30a31d892f52b798 -C extra-filename=-30a31d892f52b798 --out-dir /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps -L dependency=/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps --cap-lints allow -Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn` Compiling encoding v0.2.33 (/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33) Running `/usr/bin/rustc --crate-name encoding --edition=2015 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C codegen-units=1 -C debuginfo=2 --check-cfg 'cfg(docsrs)' --check-cfg 'cfg(feature, values())' -C metadata=1fe2286118380fb5 -C extra-filename=-1fe2286118380fb5 --out-dir /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps -L dependency=/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps --extern encoding_index_japanese=/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps/libencoding_index_japanese-30a31d892f52b798.rmeta --extern encoding_index_korean=/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps/libencoding_index_korean-f529fc4feb5dd03b.rmeta --extern encoding_index_simpchinese=/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps/libencoding_index_simpchinese-c948a82825b1eafa.rmeta --extern encoding_index_singlebyte=/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps/libencoding_index_singlebyte-b3616d94acf4c23a.rmeta --extern encoding_index_tradchinese=/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33/target/rpm/deps/libencoding_index_tradchinese-9e368b710ac7141d.rmeta -Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn` warning: `...` range patterns are deprecated --> src/codec/utf_16.rs:124:24 | 124 | '\u{0}'...'\u{d7ff}' | '\u{e000}'...'\u{ffff}' => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default warning: `...` range patterns are deprecated --> src/codec/utf_16.rs:124:50 | 124 | '\u{0}'...'\u{d7ff}' | '\u{e000}'...'\u{ffff}' => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/utf_16.rs:128:28 | 128 | '\u{10000}'...'\u{10ffff}' => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/utf_16.rs:190:27 | 190 | 0xdc00...0xdfff => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/utf_16.rs:203:27 | 203 | 0xd800...0xdbff => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/utf_16.rs:207:27 | 207 | 0xdc00...0xdfff => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/utf_16.rs:231:23 | 231 | 0xdc00...0xdfff => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/utf_16.rs:256:23 | 256 | 0xd800...0xdbff => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/utf_16.rs:265:31 | 265 | 0xdc00...0xdfff => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/utf_16.rs:276:23 | 276 | 0xdc00...0xdfff => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/korean.rs:110:18 | 110 | (0x81...0xfe, 0x41...0xfe) => (lead - 0x81) * 190 + (trail - 0x41), | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/korean.rs:110:31 | 110 | (0x81...0xfe, 0x41...0xfe) => (lead - 0x81) * 190 + (trail - 0x41), | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/korean.rs:119:22 | 119 | case b @ 0x00...0x7f => ctx.emit(b as u32); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/korean.rs:120:22 | 120 | case b @ 0x81...0xfe => S1(ctx, b); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:56:24 | 56 | '\u{0}'...'\u{7f}' => { output.write_byte(ch as u8); } | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:59:27 | 59 | '\u{ff61}'...'\u{ff9f}' => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:124:18 | 124 | (0xa1...0xfe, 0xa1...0xfe) => (lead - 0xa1) * 94 + trail - 0xa1, | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:124:31 | 124 | (0xa1...0xfe, 0xa1...0xfe) => (lead - 0xa1) * 94 + trail - 0xa1, | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:136:18 | 136 | (0xa1...0xfe, 0xa1...0xfe) => (lead - 0xa1) * 94 + trail - 0xa1, | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:136:31 | 136 | (0xa1...0xfe, 0xa1...0xfe) => (lead - 0xa1) * 94 + trail - 0xa1, | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:145:22 | 145 | case b @ 0x00...0x7f => ctx.emit(b as u32); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:148:22 | 148 | case b @ 0xa1...0xfe => S3(ctx, b); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:155:22 | 155 | case b @ 0xa1...0xdf => ctx.emit(0xff61 + b as u32 - 0xa1); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:156:18 | 156 | case 0xa1...0xfe => ctx.err("invalid sequence"); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:163:22 | 163 | case b @ 0xa1...0xfe => S4(ctx, b); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:170:22 | 170 | case b @ 0xa1...0xfe => match map_two_0208_bytes(lead, b) { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:181:22 | 181 | case b @ 0xa1...0xfe => match map_two_0212_bytes(lead, b) { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:476:24 | 476 | '\u{0}'...'\u{80}' => { output.write_byte(ch as u8); } | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:479:27 | 479 | '\u{ff61}'...'\u{ff9f}' => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:548:18 | 548 | (0xf0...0xf9, 0x40...0x7e) | (0xf0...0xf9, 0x80...0xfc) => | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:548:31 | 548 | (0xf0...0xf9, 0x40...0x7e) | (0xf0...0xf9, 0x80...0xfc) => | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:548:47 | 548 | (0xf0...0xf9, 0x40...0x7e) | (0xf0...0xf9, 0x80...0xfc) => | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:548:60 | 548 | (0xf0...0xf9, 0x40...0x7e) | (0xf0...0xf9, 0x80...0xfc) => | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:550:18 | 550 | (0x81...0x9f, 0x40...0x7e) | (0x81...0x9f, 0x80...0xfc) | | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:550:31 | 550 | (0x81...0x9f, 0x40...0x7e) | (0x81...0x9f, 0x80...0xfc) | | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:550:47 | 550 | (0x81...0x9f, 0x40...0x7e) | (0x81...0x9f, 0x80...0xfc) | | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:550:60 | 550 | (0x81...0x9f, 0x40...0x7e) | (0x81...0x9f, 0x80...0xfc) | | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:551:18 | 551 | (0xe0...0xfc, 0x40...0x7e) | (0xe0...0xfc, 0x80...0xfc) => | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:551:31 | 551 | (0xe0...0xfc, 0x40...0x7e) | (0xe0...0xfc, 0x80...0xfc) => | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:551:47 | 551 | (0xe0...0xfc, 0x40...0x7e) | (0xe0...0xfc, 0x80...0xfc) => | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:551:60 | 551 | (0xe0...0xfc, 0x40...0x7e) | (0xe0...0xfc, 0x80...0xfc) => | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:561:22 | 561 | case b @ 0x00...0x80 => ctx.emit(b as u32); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:562:22 | 562 | case b @ 0xa1...0xdf => ctx.emit(0xff61 + b as u32 - 0xa1); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:563:22 | 563 | case b @ 0x81...0x9f, b @ 0xe0...0xfc => S1(ctx, b); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:563:39 | 563 | case b @ 0x81...0x9f, b @ 0xe0...0xfc => S1(ctx, b); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:818:24 | 818 | '\u{0}'...'\u{7f}' => { ensure_ASCII!(); output.write_byte(ch as u8); } | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:821:27 | 821 | '\u{ff61}'...'\u{ff9f}' => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:890:18 | 890 | (0x21...0x7e, 0x21...0x7e) => (lead - 0x21) * 94 + trail - 0x21, | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:890:31 | 890 | (0x21...0x7e, 0x21...0x7e) => (lead - 0x21) * 94 + trail - 0x21, | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:902:18 | 902 | (0x21...0x7e, 0x21...0x7e) => (lead - 0x21) * 94 + trail - 0x21, | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:902:31 | 902 | (0x21...0x7e, 0x21...0x7e) => (lead - 0x21) * 94 + trail - 0x21, | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:912:22 | 912 | case b @ 0x00...0x7f => ctx.emit(b as u32), ASCII(ctx); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/japanese.rs:937:22 | 937 | case b @ 0x21...0x5f => ctx.emit(0xff61 + b as u32 - 0x21), Katakana(ctx); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/simpchinese.rs:203:18 | 203 | (0x81...0xfe, 0x40...0x7e) | (0x81...0xfe, 0x80...0xfe) => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/simpchinese.rs:203:31 | 203 | (0x81...0xfe, 0x40...0x7e) | (0x81...0xfe, 0x80...0xfe) => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/simpchinese.rs:203:47 | 203 | (0x81...0xfe, 0x40...0x7e) | (0x81...0xfe, 0x80...0xfe) => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/simpchinese.rs:203:60 | 203 | (0x81...0xfe, 0x40...0x7e) | (0x81...0xfe, 0x80...0xfe) => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/simpchinese.rs:224:22 | 224 | case b @ 0x00...0x7f => ctx.emit(b as u32); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/simpchinese.rs:226:22 | 226 | case b @ 0x81...0xfe => S1(ctx, b); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/simpchinese.rs:233:22 | 233 | case b @ 0x30...0x39 => S2(ctx, first, b); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/simpchinese.rs:242:22 | 242 | case b @ 0x81...0xfe => S3(ctx, first, second, b); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/simpchinese.rs:248:22 | 248 | case b @ 0x30...0x39 => match map_four_bytes(first, second, third, b) { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/simpchinese.rs:585:18 | 585 | (0x20...0x7f, 0x21...0x7e) => (lead - 1) * 190 + (trail + 0x3f), | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/simpchinese.rs:585:31 | 585 | (0x20...0x7f, 0x21...0x7e) => (lead - 1) * 190 + (trail + 0x3f), | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/simpchinese.rs:595:22 | 595 | case b @ 0x00...0x7f => ctx.emit(b as u32); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/simpchinese.rs:604:22 | 604 | case b @ 0x20...0x7f => B2(ctx, b); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/tradchinese.rs:116:18 | 116 | (0x81...0xfe, 0x40...0x7e) | (0x81...0xfe, 0xa1...0xfe) => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/tradchinese.rs:116:31 | 116 | (0x81...0xfe, 0x40...0x7e) | (0x81...0xfe, 0xa1...0xfe) => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/tradchinese.rs:116:47 | 116 | (0x81...0xfe, 0x40...0x7e) | (0x81...0xfe, 0xa1...0xfe) => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/tradchinese.rs:116:60 | 116 | (0x81...0xfe, 0x40...0x7e) | (0x81...0xfe, 0xa1...0xfe) => { | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/tradchinese.rs:128:22 | 128 | case b @ 0x00...0x7f => ctx.emit(b as u32); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/codec/tradchinese.rs:129:22 | 129 | case b @ 0x81...0xfe => S1(ctx, b); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: `...` range patterns are deprecated --> src/label.rs:15:44 | 15 | label.chars().map(|c| match c { 'A'...'Z' => (c as u8 + 32) as char, _ => c }).collect(); | ^^^ help: use `..=` for an inclusive range | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:60:26 | 60 | pub output: &'a mut (types::StringWriter + 'a), | ^^^^^^^^^^^^^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: `#[warn(bare_trait_objects)]` on by default help: if this is a dyn-compatible trait, use `dyn` | 60 | pub output: &'a mut (dyn types::StringWriter + 'a), | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:300:36 | 300 | extern "Rust" fn(decoder: &mut RawDecoder, input: &[u8], output: &mut StringWriter) -> bool; | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 300 | extern "Rust" fn(decoder: &mut dyn RawDecoder, input: &[u8], output: &mut StringWriter) -> bool; | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:300:75 | 300 | extern "Rust" fn(decoder: &mut RawDecoder, input: &[u8], output: &mut StringWriter) -> bool; | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 300 | extern "Rust" fn(decoder: &mut RawDecoder, input: &[u8], output: &mut dyn StringWriter) -> bool; | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:296:36 | 296 | extern "Rust" fn(encoder: &mut RawEncoder, input: &str, output: &mut ByteWriter) -> bool; | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 296 | extern "Rust" fn(encoder: &mut dyn RawEncoder, input: &str, output: &mut ByteWriter) -> bool; | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:296:74 | 296 | extern "Rust" fn(encoder: &mut RawEncoder, input: &str, output: &mut ByteWriter) -> bool; | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 296 | extern "Rust" fn(encoder: &mut RawEncoder, input: &str, output: &mut dyn ByteWriter) -> bool; | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:181:34 | 181 | pub type EncodingRef = &'static (Encoding + Send + Sync); | ^^^^^^^^^^^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 181 | pub type EncodingRef = &'static (dyn Encoding + Send + Sync); | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:232:74 | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut ::types::StringWriter, | ^^^^^^^^^^^^^^^^^^^^^ | ::: src/codec/korean.rs:101:1 | 101 | / stateful_decoder! { 102 | | module windows949; 103 | | 104 | | internal pub fn map_two_bytes(lead: u8, trail: u8) -> u32 { ... | 134 | | } 135 | | } | |_- in this macro invocation | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: this warning originates in the macro `stateful_decoder` (in Nightly builds, run with -Z macro-backtrace for more info) warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:274:62 | 274 | pub fn raw_finish(mut st: State, output: &mut ::types::StringWriter, | ^^^^^^^^^^^^^^^^^^^^^ | ::: src/codec/korean.rs:101:1 | 101 | / stateful_decoder! { 102 | | module windows949; 103 | | 104 | | internal pub fn map_two_bytes(lead: u8, trail: u8) -> u32 { ... | 134 | | } 135 | | } | |_- in this macro invocation | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: this warning originates in the macro `stateful_decoder` (in Nightly builds, run with -Z macro-backtrace for more info) warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:232:74 | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut ::types::StringWriter, | ^^^^^^^^^^^^^^^^^^^^^ | ::: src/codec/japanese.rs:115:1 | 115 | / stateful_decoder! { 116 | | module eucjp; 117 | | 118 | | internal pub fn map_two_0208_bytes(lead: u8, trail: u8) -> u32 { ... | 187 | | } 188 | | } | |_- in this macro invocation | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: this warning originates in the macro `stateful_decoder` (in Nightly builds, run with -Z macro-backtrace for more info) warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:274:62 | 274 | pub fn raw_finish(mut st: State, output: &mut ::types::StringWriter, | ^^^^^^^^^^^^^^^^^^^^^ | ::: src/codec/japanese.rs:115:1 | 115 | / stateful_decoder! { 116 | | module eucjp; 117 | | 118 | | internal pub fn map_two_0208_bytes(lead: u8, trail: u8) -> u32 { ... | 187 | | } 188 | | } | |_- in this macro invocation | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: this warning originates in the macro `stateful_decoder` (in Nightly builds, run with -Z macro-backtrace for more info) warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:232:74 | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut ::types::StringWriter, | ^^^^^^^^^^^^^^^^^^^^^ | ::: src/codec/japanese.rs:537:1 | 537 | / stateful_decoder! { 538 | | module windows31j; 539 | | 540 | | internal pub fn map_two_0208_bytes(lead: u8, trail: u8) -> u32 { ... | 574 | | } 575 | | } | |_- in this macro invocation | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: this warning originates in the macro `stateful_decoder` (in Nightly builds, run with -Z macro-backtrace for more info) warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:274:62 | 274 | pub fn raw_finish(mut st: State, output: &mut ::types::StringWriter, | ^^^^^^^^^^^^^^^^^^^^^ | ::: src/codec/japanese.rs:537:1 | 537 | / stateful_decoder! { 538 | | module windows31j; 539 | | 540 | | internal pub fn map_two_0208_bytes(lead: u8, trail: u8) -> u32 { ... | 574 | | } 575 | | } | |_- in this macro invocation | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: this warning originates in the macro `stateful_decoder` (in Nightly builds, run with -Z macro-backtrace for more info) warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:232:74 | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut ::types::StringWriter, | ^^^^^^^^^^^^^^^^^^^^^ | ::: src/codec/japanese.rs:881:1 | 881 | / stateful_decoder! { 882 | | module iso2022jp; 883 | | 884 | | internal pub fn map_two_0208_bytes(lead: u8, trail: u8) -> u32 { ... | 998 | | } 999 | | } | |_- in this macro invocation | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: this warning originates in the macro `stateful_decoder` (in Nightly builds, run with -Z macro-backtrace for more info) warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:274:62 | 274 | pub fn raw_finish(mut st: State, output: &mut ::types::StringWriter, | ^^^^^^^^^^^^^^^^^^^^^ | ::: src/codec/japanese.rs:881:1 | 881 | / stateful_decoder! { 882 | | module iso2022jp; 883 | | 884 | | internal pub fn map_two_0208_bytes(lead: u8, trail: u8) -> u32 { ... | 998 | | } 999 | | } | |_- in this macro invocation | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: this warning originates in the macro `stateful_decoder` (in Nightly builds, run with -Z macro-backtrace for more info) warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:232:74 | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut ::types::StringWriter, | ^^^^^^^^^^^^^^^^^^^^^ | ::: src/codec/simpchinese.rs:194:1 | 194 | / stateful_decoder! { 195 | | module gb18030; 196 | | 197 | | internal pub fn map_two_bytes(lead: u8, trail: u8) -> u32 { ... | 253 | | } 254 | | } | |_- in this macro invocation | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: this warning originates in the macro `stateful_decoder` (in Nightly builds, run with -Z macro-backtrace for more info) warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:274:62 | 274 | pub fn raw_finish(mut st: State, output: &mut ::types::StringWriter, | ^^^^^^^^^^^^^^^^^^^^^ | ::: src/codec/simpchinese.rs:194:1 | 194 | / stateful_decoder! { 195 | | module gb18030; 196 | | 197 | | internal pub fn map_two_bytes(lead: u8, trail: u8) -> u32 { ... | 253 | | } 254 | | } | |_- in this macro invocation | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: this warning originates in the macro `stateful_decoder` (in Nightly builds, run with -Z macro-backtrace for more info) warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:232:74 | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut ::types::StringWriter, | ^^^^^^^^^^^^^^^^^^^^^ | ::: src/codec/simpchinese.rs:576:1 | 576 | / stateful_decoder! { 577 | | module hz; 578 | | 579 | | internal pub fn map_two_bytes(lead: u8, trail: u8) -> u32 { ... | 641 | | } 642 | | } | |_- in this macro invocation | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: this warning originates in the macro `stateful_decoder` (in Nightly builds, run with -Z macro-backtrace for more info) warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:274:62 | 274 | pub fn raw_finish(mut st: State, output: &mut ::types::StringWriter, | ^^^^^^^^^^^^^^^^^^^^^ | ::: src/codec/simpchinese.rs:576:1 | 576 | / stateful_decoder! { 577 | | module hz; 578 | | 579 | | internal pub fn map_two_bytes(lead: u8, trail: u8) -> u32 { ... | 641 | | } 642 | | } | |_- in this macro invocation | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: this warning originates in the macro `stateful_decoder` (in Nightly builds, run with -Z macro-backtrace for more info) warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:232:74 | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut ::types::StringWriter, | ^^^^^^^^^^^^^^^^^^^^^ | ::: src/codec/tradchinese.rs:107:1 | 107 | / stateful_decoder! { 108 | | module bigfive2003; 109 | | 110 | | internal pub fn map_two_bytes(lead: u8, trail: u8) -> u32 { ... | 147 | | } 148 | | } | |_- in this macro invocation | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: this warning originates in the macro `stateful_decoder` (in Nightly builds, run with -Z macro-backtrace for more info) warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:274:62 | 274 | pub fn raw_finish(mut st: State, output: &mut ::types::StringWriter, | ^^^^^^^^^^^^^^^^^^^^^ | ::: src/codec/tradchinese.rs:107:1 | 107 | / stateful_decoder! { 108 | | module bigfive2003; 109 | | 110 | | internal pub fn map_two_bytes(lead: u8, trail: u8) -> u32 { ... | 147 | | } 148 | | } | |_- in this macro invocation | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see = note: this warning originates in the macro `stateful_decoder` (in Nightly builds, run with -Z macro-backtrace for more info) warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:136:32 | 136 | fn from_self(&self) -> Box; | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 136 | fn from_self(&self) -> Box; | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:147:54 | 147 | fn raw_feed(&mut self, input: &str, output: &mut ByteWriter) -> (usize, Option); | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 147 | fn raw_feed(&mut self, input: &str, output: &mut dyn ByteWriter) -> (usize, Option); | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:153:43 | 153 | fn raw_finish(&mut self, output: &mut ByteWriter) -> Option; | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 153 | fn raw_finish(&mut self, output: &mut dyn ByteWriter) -> Option; | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:160:32 | 160 | fn from_self(&self) -> Box; | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 160 | fn from_self(&self) -> Box; | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:171:55 | 171 | fn raw_feed(&mut self, input: &[u8], output: &mut StringWriter) -> (usize, Option); | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 171 | fn raw_feed(&mut self, input: &[u8], output: &mut dyn StringWriter) -> (usize, Option); | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:176:43 | 176 | fn raw_finish(&mut self, output: &mut StringWriter) -> Option; | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 176 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option; | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:195:34 | 195 | fn raw_encoder(&self) -> Box; | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 195 | fn raw_encoder(&self) -> Box; | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:198:34 | 198 | fn raw_decoder(&self) -> Box; | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 198 | fn raw_decoder(&self) -> Box; | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:210:67 | 210 | fn encode_to(&self, input: &str, trap: EncoderTrap, ret: &mut ByteWriter) | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 210 | fn encode_to(&self, input: &str, trap: EncoderTrap, ret: &mut dyn ByteWriter) | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:258:68 | 258 | fn decode_to(&self, input: &[u8], trap: DecoderTrap, ret: &mut StringWriter) | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 258 | fn decode_to(&self, input: &[u8], trap: DecoderTrap, ret: &mut dyn StringWriter) | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_16.rs:29:37 | 29 | fn write_two_bytes(output: &mut ByteWriter, msb: u8, lsb: u8); | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 29 | fn write_two_bytes(output: &mut dyn ByteWriter, msb: u8, lsb: u8); | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/util.rs:72:48 | 72 | pub fn new(buf: &'a [u8], output: &'a mut (types::StringWriter + 'a), | ^^^^^^^^^^^^^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 72 | pub fn new(buf: &'a [u8], output: &'a mut (dyn types::StringWriter + 'a), | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_16.rs:90:34 | 90 | fn raw_encoder(&self) -> Box { UTF16Encoder::::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 90 | fn raw_encoder(&self) -> Box { UTF16Encoder::::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_16.rs:91:34 | 91 | fn raw_decoder(&self) -> Box { UTF16Decoder::::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 91 | fn raw_decoder(&self) -> Box { UTF16Decoder::::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_16.rs:108:21 | 108 | fn new() -> Box { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 108 | fn new() -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_16.rs:114:32 | 114 | fn from_self(&self) -> Box { UTF16Encoder::::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 114 | fn from_self(&self) -> Box { UTF16Encoder::::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_16.rs:116:54 | 116 | fn raw_feed(&mut self, input: &str, output: &mut ByteWriter) -> (usize, Option) { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 116 | fn raw_feed(&mut self, input: &str, output: &mut dyn ByteWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_16.rs:141:44 | 141 | fn raw_finish(&mut self, _output: &mut ByteWriter) -> Option { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 141 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_16.rs:161:25 | 161 | pub fn new() -> Box { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 161 | pub fn new() -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_16.rs:168:32 | 168 | fn from_self(&self) -> Box { UTF16Decoder::::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 168 | fn from_self(&self) -> Box { UTF16Decoder::::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_16.rs:170:55 | 170 | fn raw_feed(&mut self, input: &[u8], output: &mut StringWriter) -> (usize, Option) { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 170 | fn raw_feed(&mut self, input: &[u8], output: &mut dyn StringWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_16.rs:291:44 | 291 | fn raw_finish(&mut self, _output: &mut StringWriter) -> Option { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 291 | fn raw_finish(&mut self, _output: &mut dyn StringWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:94:34 | 94 | fn raw_encoder(&self) -> Box { GBEncoder::::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 94 | fn raw_encoder(&self) -> Box { GBEncoder::::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:95:34 | 95 | fn raw_decoder(&self) -> Box { GB18030Decoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 95 | fn raw_decoder(&self) -> Box { GB18030Decoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:112:25 | 112 | pub fn new() -> Box { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 112 | pub fn new() -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:118:32 | 118 | fn from_self(&self) -> Box { GBEncoder::::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 118 | fn from_self(&self) -> Box { GBEncoder::::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:121:54 | 121 | fn raw_feed(&mut self, input: &str, output: &mut ByteWriter) -> (usize, Option) { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 121 | fn raw_feed(&mut self, input: &str, output: &mut dyn ByteWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:160:44 | 160 | fn raw_finish(&mut self, _output: &mut ByteWriter) -> Option { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 160 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:368:35 | 368 | fn reencode(encoder: &mut RawEncoder, input: &str, output: &mut ByteWriter, | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 368 | fn reencode(encoder: &mut dyn RawEncoder, input: &str, output: &mut ByteWriter, | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:368:73 | 368 | fn reencode(encoder: &mut RawEncoder, input: &str, output: &mut ByteWriter, | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 368 | fn reencode(encoder: &mut RawEncoder, input: &str, output: &mut dyn ByteWriter, | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:322:38 | 322 | pub fn trap(&self, decoder: &mut RawDecoder, input: &[u8], output: &mut StringWriter) -> bool { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 322 | pub fn trap(&self, decoder: &mut dyn RawDecoder, input: &[u8], output: &mut StringWriter) -> bool { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:322:77 | 322 | pub fn trap(&self, decoder: &mut RawDecoder, input: &[u8], output: &mut StringWriter) -> bool { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 322 | pub fn trap(&self, decoder: &mut RawDecoder, input: &[u8], output: &mut dyn StringWriter) -> bool { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:367:38 | 367 | pub fn trap(&self, encoder: &mut RawEncoder, input: &str, output: &mut ByteWriter) -> bool { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 367 | pub fn trap(&self, encoder: &mut dyn RawEncoder, input: &str, output: &mut ByteWriter) -> bool { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:367:76 | 367 | pub fn trap(&self, encoder: &mut RawEncoder, input: &str, output: &mut ByteWriter) -> bool { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 367 | pub fn trap(&self, encoder: &mut RawEncoder, input: &str, output: &mut dyn ByteWriter) -> bool { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/error.rs:16:34 | 16 | fn raw_encoder(&self) -> Box { ErrorEncoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 16 | fn raw_encoder(&self) -> Box { ErrorEncoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/error.rs:17:34 | 17 | fn raw_decoder(&self) -> Box { ErrorDecoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 17 | fn raw_decoder(&self) -> Box { ErrorDecoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/error.rs:29:32 | 29 | fn from_self(&self) -> Box { ErrorEncoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 29 | fn from_self(&self) -> Box { ErrorEncoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/error.rs:31:55 | 31 | fn raw_feed(&mut self, input: &str, _output: &mut ByteWriter) -> (usize, Option) { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 31 | fn raw_feed(&mut self, input: &str, _output: &mut dyn ByteWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/error.rs:40:44 | 40 | fn raw_finish(&mut self, _output: &mut ByteWriter) -> Option { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 40 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/error.rs:54:32 | 54 | fn from_self(&self) -> Box { ErrorDecoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 54 | fn from_self(&self) -> Box { ErrorDecoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/error.rs:57:45 | 57 | input: &[u8], _output: &mut StringWriter) -> (usize, Option) { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 57 | input: &[u8], _output: &mut dyn StringWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/error.rs:65:44 | 65 | fn raw_finish(&mut self, _output: &mut StringWriter) -> Option { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 65 | fn raw_finish(&mut self, _output: &mut dyn StringWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/error.rs:25:25 | 25 | pub fn new() -> Box { Box::new(ErrorEncoder) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 25 | pub fn new() -> Box { Box::new(ErrorEncoder) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/error.rs:50:25 | 50 | pub fn new() -> Box { Box::new(ErrorDecoder) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 50 | pub fn new() -> Box { Box::new(ErrorDecoder) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/ascii.rs:22:34 | 22 | fn raw_encoder(&self) -> Box { ASCIIEncoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 22 | fn raw_encoder(&self) -> Box { ASCIIEncoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/ascii.rs:23:34 | 23 | fn raw_decoder(&self) -> Box { ASCIIDecoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 23 | fn raw_decoder(&self) -> Box { ASCIIDecoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/ascii.rs:35:32 | 35 | fn from_self(&self) -> Box { ASCIIEncoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 35 | fn from_self(&self) -> Box { ASCIIEncoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/ascii.rs:38:54 | 38 | fn raw_feed(&mut self, input: &str, output: &mut ByteWriter) -> (usize, Option) { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 38 | fn raw_feed(&mut self, input: &str, output: &mut dyn ByteWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/ascii.rs:56:44 | 56 | fn raw_finish(&mut self, _output: &mut ByteWriter) -> Option { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 56 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/ascii.rs:70:32 | 70 | fn from_self(&self) -> Box { ASCIIDecoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 70 | fn from_self(&self) -> Box { ASCIIDecoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/ascii.rs:73:55 | 73 | fn raw_feed(&mut self, input: &[u8], output: &mut StringWriter) -> (usize, Option) { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 73 | fn raw_feed(&mut self, input: &[u8], output: &mut dyn StringWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/ascii.rs:94:44 | 94 | fn raw_finish(&mut self, _output: &mut StringWriter) -> Option { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 94 | fn raw_finish(&mut self, _output: &mut dyn StringWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/ascii.rs:76:43 | 76 | fn write_ascii_bytes(output: &mut StringWriter, buf: &[u8]) { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 76 | fn write_ascii_bytes(output: &mut dyn StringWriter, buf: &[u8]) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/ascii.rs:31:25 | 31 | pub fn new() -> Box { Box::new(ASCIIEncoder) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 31 | pub fn new() -> Box { Box::new(ASCIIEncoder) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/ascii.rs:66:25 | 66 | pub fn new() -> Box { Box::new(ASCIIDecoder) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 66 | pub fn new() -> Box { Box::new(ASCIIDecoder) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/singlebyte.rs:23:34 | 23 | fn raw_encoder(&self) -> Box { SingleByteEncoder::new(self.index_backward) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 23 | fn raw_encoder(&self) -> Box { SingleByteEncoder::new(self.index_backward) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/singlebyte.rs:24:34 | 24 | fn raw_decoder(&self) -> Box { SingleByteDecoder::new(self.index_forward) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 24 | fn raw_decoder(&self) -> Box { SingleByteDecoder::new(self.index_forward) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/singlebyte.rs:40:32 | 40 | fn from_self(&self) -> Box { SingleByteEncoder::new(self.index_backward) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 40 | fn from_self(&self) -> Box { SingleByteEncoder::new(self.index_backward) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/singlebyte.rs:43:54 | 43 | fn raw_feed(&mut self, input: &str, output: &mut ByteWriter) -> (usize, Option) { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 43 | fn raw_feed(&mut self, input: &str, output: &mut dyn ByteWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/singlebyte.rs:64:44 | 64 | fn raw_finish(&mut self, _output: &mut ByteWriter) -> Option { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 64 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/singlebyte.rs:82:32 | 82 | fn from_self(&self) -> Box { SingleByteDecoder::new(self.index_forward) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 82 | fn from_self(&self) -> Box { SingleByteDecoder::new(self.index_forward) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/singlebyte.rs:85:55 | 85 | fn raw_feed(&mut self, input: &[u8], output: &mut StringWriter) -> (usize, Option) { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 85 | fn raw_feed(&mut self, input: &[u8], output: &mut dyn StringWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/singlebyte.rs:108:44 | 108 | fn raw_finish(&mut self, _output: &mut StringWriter) -> Option { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 108 | fn raw_finish(&mut self, _output: &mut dyn StringWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/singlebyte.rs:34:68 | 34 | pub fn new(index_backward: extern "Rust" fn(u32) -> u8) -> Box { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 34 | pub fn new(index_backward: extern "Rust" fn(u32) -> u8) -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/singlebyte.rs:76:67 | 76 | pub fn new(index_forward: extern "Rust" fn(u8) -> u16) -> Box { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 76 | pub fn new(index_forward: extern "Rust" fn(u8) -> u16) -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_8.rs:52:34 | 52 | fn raw_encoder(&self) -> Box { UTF8Encoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 52 | fn raw_encoder(&self) -> Box { UTF8Encoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_8.rs:53:34 | 53 | fn raw_decoder(&self) -> Box { UTF8Decoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 53 | fn raw_decoder(&self) -> Box { UTF8Decoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_8.rs:65:32 | 65 | fn from_self(&self) -> Box { UTF8Encoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 65 | fn from_self(&self) -> Box { UTF8Encoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_8.rs:68:54 | 68 | fn raw_feed(&mut self, input: &str, output: &mut ByteWriter) -> (usize, Option) { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 68 | fn raw_feed(&mut self, input: &str, output: &mut dyn ByteWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_8.rs:75:44 | 75 | fn raw_finish(&mut self, _output: &mut ByteWriter) -> Option { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 75 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_8.rs:142:32 | 142 | fn from_self(&self) -> Box { UTF8Decoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 142 | fn from_self(&self) -> Box { UTF8Decoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_8.rs:145:55 | 145 | fn raw_feed(&mut self, input: &[u8], output: &mut StringWriter) -> (usize, Option) { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 145 | fn raw_feed(&mut self, input: &[u8], output: &mut dyn StringWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_8.rs:197:44 | 197 | fn raw_finish(&mut self, _output: &mut StringWriter) -> Option { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 197 | fn raw_finish(&mut self, _output: &mut dyn StringWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_8.rs:148:37 | 148 | fn write_bytes(output: &mut StringWriter, bytes: &[u8]) { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 148 | fn write_bytes(output: &mut dyn StringWriter, bytes: &[u8]) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_8.rs:61:25 | 61 | pub fn new() -> Box { Box::new(UTF8Encoder) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 61 | pub fn new() -> Box { Box::new(UTF8Encoder) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_8.rs:89:25 | 89 | pub fn new() -> Box { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 89 | pub fn new() -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_16.rs:36:37 | 36 | fn write_two_bytes(output: &mut ByteWriter, msb: u8, lsb: u8) { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 36 | fn write_two_bytes(output: &mut dyn ByteWriter, msb: u8, lsb: u8) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_16.rs:48:37 | 48 | fn write_two_bytes(output: &mut ByteWriter, msb: u8, lsb: u8) { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 48 | fn write_two_bytes(output: &mut dyn ByteWriter, msb: u8, lsb: u8) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/korean.rs:30:34 | 30 | fn raw_encoder(&self) -> Box { Windows949Encoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 30 | fn raw_encoder(&self) -> Box { Windows949Encoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/korean.rs:31:34 | 31 | fn raw_decoder(&self) -> Box { Windows949Decoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 31 | fn raw_decoder(&self) -> Box { Windows949Decoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/korean.rs:43:32 | 43 | fn from_self(&self) -> Box { Windows949Encoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 43 | fn from_self(&self) -> Box { Windows949Encoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/korean.rs:46:54 | 46 | fn raw_feed(&mut self, input: &str, output: &mut ByteWriter) -> (usize, Option) { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 46 | fn raw_feed(&mut self, input: &str, output: &mut dyn ByteWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/korean.rs:67:44 | 67 | fn raw_finish(&mut self, _output: &mut ByteWriter) -> Option { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 67 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/korean.rs:85:32 | 85 | fn from_self(&self) -> Box { Windows949Decoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 85 | fn from_self(&self) -> Box { Windows949Decoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/korean.rs:88:55 | 88 | fn raw_feed(&mut self, input: &[u8], output: &mut StringWriter) -> (usize, Option) { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 88 | fn raw_feed(&mut self, input: &[u8], output: &mut dyn StringWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/korean.rs:94:43 | 94 | fn raw_finish(&mut self, output: &mut StringWriter) -> Option { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 94 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/korean.rs:39:25 | 39 | pub fn new() -> Box { Box::new(Windows949Encoder) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 39 | pub fn new() -> Box { Box::new(Windows949Encoder) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/korean.rs:79:25 | 79 | pub fn new() -> Box { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 79 | pub fn new() -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:35:34 | 35 | fn raw_encoder(&self) -> Box { EUCJPEncoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 35 | fn raw_encoder(&self) -> Box { EUCJPEncoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:36:34 | 36 | fn raw_decoder(&self) -> Box { EUCJP0212Decoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 36 | fn raw_decoder(&self) -> Box { EUCJP0212Decoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:48:32 | 48 | fn from_self(&self) -> Box { EUCJPEncoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 48 | fn from_self(&self) -> Box { EUCJPEncoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:51:54 | 51 | fn raw_feed(&mut self, input: &str, output: &mut ByteWriter) -> (usize, Option) { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 51 | fn raw_feed(&mut self, input: &str, output: &mut dyn ByteWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:81:44 | 81 | fn raw_finish(&mut self, _output: &mut ByteWriter) -> Option { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 81 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:99:32 | 99 | fn from_self(&self) -> Box { EUCJP0212Decoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 99 | fn from_self(&self) -> Box { EUCJP0212Decoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:102:55 | 102 | fn raw_feed(&mut self, input: &[u8], output: &mut StringWriter) -> (usize, Option) { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 102 | fn raw_feed(&mut self, input: &[u8], output: &mut dyn StringWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:108:43 | 108 | fn raw_finish(&mut self, output: &mut StringWriter) -> Option { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 108 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:455:34 | 455 | fn raw_encoder(&self) -> Box { Windows31JEncoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 455 | fn raw_encoder(&self) -> Box { Windows31JEncoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:456:34 | 456 | fn raw_decoder(&self) -> Box { Windows31JDecoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 456 | fn raw_decoder(&self) -> Box { Windows31JDecoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:468:32 | 468 | fn from_self(&self) -> Box { Windows31JEncoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 468 | fn from_self(&self) -> Box { Windows31JEncoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:471:54 | 471 | fn raw_feed(&mut self, input: &str, output: &mut ByteWriter) -> (usize, Option) { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 471 | fn raw_feed(&mut self, input: &str, output: &mut dyn ByteWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:503:44 | 503 | fn raw_finish(&mut self, _output: &mut ByteWriter) -> Option { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 503 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:521:32 | 521 | fn from_self(&self) -> Box { Windows31JDecoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 521 | fn from_self(&self) -> Box { Windows31JDecoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:524:55 | 524 | fn raw_feed(&mut self, input: &[u8], output: &mut StringWriter) -> (usize, Option) { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 524 | fn raw_feed(&mut self, input: &[u8], output: &mut dyn StringWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:530:43 | 530 | fn raw_finish(&mut self, output: &mut StringWriter) -> Option { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 530 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:777:34 | 777 | fn raw_encoder(&self) -> Box { ISO2022JPEncoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 777 | fn raw_encoder(&self) -> Box { ISO2022JPEncoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:778:34 | 778 | fn raw_decoder(&self) -> Box { ISO2022JPDecoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 778 | fn raw_decoder(&self) -> Box { ISO2022JPDecoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:799:32 | 799 | fn from_self(&self) -> Box { ISO2022JPEncoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 799 | fn from_self(&self) -> Box { ISO2022JPEncoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:802:54 | 802 | fn raw_feed(&mut self, input: &str, output: &mut ByteWriter) -> (usize, Option) { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 802 | fn raw_feed(&mut self, input: &str, output: &mut dyn ByteWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:847:44 | 847 | fn raw_finish(&mut self, _output: &mut ByteWriter) -> Option { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 847 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:865:32 | 865 | fn from_self(&self) -> Box { ISO2022JPDecoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 865 | fn from_self(&self) -> Box { ISO2022JPDecoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:868:55 | 868 | fn raw_feed(&mut self, input: &[u8], output: &mut StringWriter) -> (usize, Option) { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 868 | fn raw_feed(&mut self, input: &[u8], output: &mut dyn StringWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:874:43 | 874 | fn raw_finish(&mut self, output: &mut StringWriter) -> Option { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 874 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:44:25 | 44 | pub fn new() -> Box { Box::new(EUCJPEncoder) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 44 | pub fn new() -> Box { Box::new(EUCJPEncoder) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:93:25 | 93 | pub fn new() -> Box { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 93 | pub fn new() -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:464:25 | 464 | pub fn new() -> Box { Box::new(Windows31JEncoder) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 464 | pub fn new() -> Box { Box::new(Windows31JEncoder) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:515:25 | 515 | pub fn new() -> Box { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 515 | pub fn new() -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:795:25 | 795 | pub fn new() -> Box { Box::new(ISO2022JPEncoder { st: ASCII }) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 795 | pub fn new() -> Box { Box::new(ISO2022JPEncoder { st: ASCII }) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/japanese.rs:859:25 | 859 | pub fn new() -> Box { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 859 | pub fn new() -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:178:32 | 178 | fn from_self(&self) -> Box { GB18030Decoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 178 | fn from_self(&self) -> Box { GB18030Decoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:181:55 | 181 | fn raw_feed(&mut self, input: &[u8], output: &mut StringWriter) -> (usize, Option) { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 181 | fn raw_feed(&mut self, input: &[u8], output: &mut dyn StringWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:187:43 | 187 | fn raw_finish(&mut self, output: &mut StringWriter) -> Option { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 187 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:480:34 | 480 | fn raw_encoder(&self) -> Box { HZEncoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 480 | fn raw_encoder(&self) -> Box { HZEncoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:481:34 | 481 | fn raw_decoder(&self) -> Box { HZDecoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 481 | fn raw_decoder(&self) -> Box { HZDecoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:495:32 | 495 | fn from_self(&self) -> Box { HZEncoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 495 | fn from_self(&self) -> Box { HZEncoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:498:54 | 498 | fn raw_feed(&mut self, input: &str, output: &mut ByteWriter) -> (usize, Option) { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 498 | fn raw_feed(&mut self, input: &str, output: &mut dyn ByteWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:542:44 | 542 | fn raw_finish(&mut self, _output: &mut ByteWriter) -> Option { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 542 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:560:32 | 560 | fn from_self(&self) -> Box { HZDecoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 560 | fn from_self(&self) -> Box { HZDecoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:563:55 | 563 | fn raw_feed(&mut self, input: &[u8], output: &mut StringWriter) -> (usize, Option) { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 563 | fn raw_feed(&mut self, input: &[u8], output: &mut dyn StringWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:569:43 | 569 | fn raw_finish(&mut self, output: &mut StringWriter) -> Option { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 569 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:172:25 | 172 | pub fn new() -> Box { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 172 | pub fn new() -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:491:25 | 491 | pub fn new() -> Box { Box::new(HZEncoder { escaped: false }) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 491 | pub fn new() -> Box { Box::new(HZEncoder { escaped: false }) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/simpchinese.rs:554:25 | 554 | pub fn new() -> Box { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 554 | pub fn new() -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/tradchinese.rs:33:34 | 33 | fn raw_encoder(&self) -> Box { BigFive2003Encoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 33 | fn raw_encoder(&self) -> Box { BigFive2003Encoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/tradchinese.rs:34:34 | 34 | fn raw_decoder(&self) -> Box { BigFive2003HKSCS2008Decoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 34 | fn raw_decoder(&self) -> Box { BigFive2003HKSCS2008Decoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/tradchinese.rs:46:32 | 46 | fn from_self(&self) -> Box { BigFive2003Encoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 46 | fn from_self(&self) -> Box { BigFive2003Encoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/tradchinese.rs:49:54 | 49 | fn raw_feed(&mut self, input: &str, output: &mut ByteWriter) -> (usize, Option) { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 49 | fn raw_feed(&mut self, input: &str, output: &mut dyn ByteWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/tradchinese.rs:73:44 | 73 | fn raw_finish(&mut self, _output: &mut ByteWriter) -> Option { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 73 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/tradchinese.rs:91:32 | 91 | fn from_self(&self) -> Box { BigFive2003HKSCS2008Decoder::new() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 91 | fn from_self(&self) -> Box { BigFive2003HKSCS2008Decoder::new() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/tradchinese.rs:94:55 | 94 | fn raw_feed(&mut self, input: &[u8], output: &mut StringWriter) -> (usize, Option) { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 94 | fn raw_feed(&mut self, input: &[u8], output: &mut dyn StringWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/tradchinese.rs:100:43 | 100 | fn raw_finish(&mut self, output: &mut StringWriter) -> Option { | ^^^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 100 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/tradchinese.rs:42:25 | 42 | pub fn new() -> Box { Box::new(BigFive2003Encoder) } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 42 | pub fn new() -> Box { Box::new(BigFive2003Encoder) } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/tradchinese.rs:85:25 | 85 | pub fn new() -> Box { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 85 | pub fn new() -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/whatwg.rs:18:34 | 18 | fn raw_encoder(&self) -> Box { codec::utf_8::UTF8Encoding.raw_encoder() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 18 | fn raw_encoder(&self) -> Box { codec::utf_8::UTF8Encoding.raw_encoder() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/whatwg.rs:19:34 | 19 | fn raw_decoder(&self) -> Box { codec::error::ErrorEncoding.raw_decoder() } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 19 | fn raw_decoder(&self) -> Box { codec::error::ErrorEncoding.raw_decoder() } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/codec/utf_16.rs:119:45 | 119 | let write_two_bytes = |output: &mut ByteWriter, msb: u8, lsb: u8| | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: if this is a dyn-compatible trait, use `dyn` | 119 | let write_two_bytes = |output: &mut dyn ByteWriter, msb: u8, lsb: u8| | +++ warning: unreachable pattern --> src/codec/utf_16.rs:135:17 | 135 | _ => unreachable!() // XXX Rust issue #12483, this is redundant | ^ no value can reach this | note: multiple earlier patterns match some of the same values --> src/codec/utf_16.rs:135:17 | 124 | '\u{0}'...'\u{d7ff}' | '\u{e000}'...'\u{ffff}' => { | ---------------------------------------------- matches some of the same values ... 128 | '\u{10000}'...'\u{10ffff}' => { | -------------------------- matches some of the same values ... 135 | _ => unreachable!() // XXX Rust issue #12483, this is redundant | ^ collectively making this unreachable = note: `#[warn(unreachable_patterns)]` on by default warning: field `data` is never read --> src/util.rs:64:9 | 54 | pub struct StatefulDecoderHelper<'a, St, Data: 'a> { | --------------------- field in this struct ... 64 | pub data: &'a Data, | ^^^^ | = note: `#[warn(dead_code)]` on by default warning: `encoding` (lib) generated 240 warnings (run `cargo fix --lib -p encoding` to apply 224 suggestions) Finished `rpm` profile [optimized + debuginfo] target(s) in 2.79s + RPM_EC=0 ++ jobs -p + exit 0 sh: line 4: [: -j8: integer expression expected sh: line 4: [: -j8: integer expression expected Executing(%install): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.T7XHll + umask 022 + cd /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build + '[' 1 -eq 1 ']' + '[' /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/BUILDROOT '!=' / ']' + rm -rf /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/BUILDROOT ++ dirname /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/BUILDROOT + mkdir -p /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build + mkdir /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/BUILDROOT + CFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full' + export CFLAGS + CXXFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full' + export CXXFLAGS + FFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full ' + export FFLAGS + FCFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,--as-needed -Wl,--no-undefined -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--build-id=sha1 -Wl,--enable-new-dtags -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd encoding-0.2.33 + '[' 1 -eq 1 ']' + set -euo pipefail ++ /usr/bin/cargo2rpm --path Cargo.toml is-lib + '[' 1 -eq 1 ']' + '[' 1 -eq 1 ']' ++ /usr/bin/cargo2rpm --path Cargo.toml name + CRATE_NAME=encoding ++ /usr/bin/cargo2rpm --path Cargo.toml version + CRATE_VERSION=0.2.33 + REG_DIR=/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/BUILDROOT/usr/share/cargo/registry/encoding-0.2.33 + /usr/bin/mkdir -p /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/BUILDROOT/usr/share/cargo/registry/encoding-0.2.33 + /usr/bin/awk -i inplace -v INPLACE_SUFFIX=.deps '/^\[((.+\.)?((dev|build)-)?dependencies|features)/{f=1;next} /^\[/{f=0}; !f' Cargo.toml + /usr/bin/env CARGO_HOME=.cargo RUSTC_BOOTSTRAP=1 'RUSTFLAGS=-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn' /usr/bin/cargo package -l + grep -w -E -v 'Cargo.(lock|toml.orig)' + xargs -d '\n' /usr/bin/cp --parents -a -t /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/BUILDROOT/usr/share/cargo/registry/encoding-0.2.33 warning: no (git) VCS found for `/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33` + /usr/bin/mv Cargo.toml.deps Cargo.toml + /usr/bin/cp -a Cargo.toml /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/BUILDROOT/usr/share/cargo/registry/encoding-0.2.33/Cargo.toml + /usr/bin/rm -f /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/BUILDROOT/usr/share/cargo/registry/encoding-0.2.33/Cargo.toml.deps + echo '{"files":{},"package":""}' ++ /usr/bin/cargo2rpm --path Cargo.toml is-bin + '[' 0 -eq 1 ']' + /usr/lib/rpm/check-buildroot + '[' -n '' ']' + /usr/share/spec-helper/clean_files + '[' -n '' ']' + /usr/share/spec-helper/compress_files .xz + '[' -n '' ']' + /usr/share/spec-helper/relink_symlinks + '[' -n '' ']' + /usr/share/spec-helper/clean_perl + '[' -n '' ']' + /usr/share/spec-helper/lib_symlinks + '[' -n '' ']' + /usr/share/spec-helper/gprintify + '[' -n '' ']' + /usr/share/spec-helper/fix_mo + '[' -n '' ']' + /usr/share/spec-helper/fix_pamd + '[' -n '' ']' + /usr/share/spec-helper/remove_info_dir + '[' -n '' ']' + /usr/share/spec-helper/fix_eol + '[' -n '' ']' + /usr/share/spec-helper/check_desktop_files + '[' -n '' ']' + /usr/share/spec-helper/check_elf_files + /usr/lib/rpm/brp-strip /usr/bin/strip + /usr/lib/rpm/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/check-rpaths + /usr/lib/rpm/brp-remove-la-files + /usr/lib/rpm/redhat/brp-mangle-shebangs + env -u SOURCE_DATE_EPOCH /usr/lib/rpm/redhat/brp-python-bytecompile '' 1 0 -j48 + /usr/lib/rpm/redhat/brp-python-hardlink Reading /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/SPECPARTS/rpm-debuginfo.specpart sh: line 4: [: -j8: integer expression expected Executing(%check): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.Lp01Vh + umask 022 + cd /home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build + CFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full' + export CFLAGS + CXXFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full' + export CXXFLAGS + FFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full ' + export FFLAGS + FCFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,--as-needed -Wl,--no-undefined -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--build-id=sha1 -Wl,--enable-new-dtags -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd encoding-0.2.33 + '[' 1 -eq 1 ']' + /usr/bin/env CARGO_HOME=.cargo RUSTC_BOOTSTRAP=1 'RUSTFLAGS=-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn' /usr/bin/cargo test -j48 -Z avoid-dev-deps --profile rpm --no-fail-fast warning: no edition set: defaulting to the 2015 edition while the latest is 2021 error: failed to select a version for the requirement `unicode-width = "^0.1.5"` candidate versions found which didn't match: 0.2.0 location searched: directory source `/usr/share/cargo/registry` (which is replacing registry `crates-io`) required by package `getopts v0.2.21` ... which satisfies dependency `getopts = "^0.2"` of package `encoding v0.2.33 (/home/pterjan/rpmbuild/BUILD/rust-encoding-0.2.33-build/encoding-0.2.33)` perhaps a crate was updated and forgotten to be re-vendored? As a reminder, you're using offline mode (--offline) which can sometimes cause surprising resolution failures, if this error is too confusing you may wish to retry without the offline flag. error: Bad exit status from /home/pterjan/rpmbuild/tmp/rpm-tmp.Lp01Vh (%check) RPM build errors: Bad exit status from /home/pterjan/rpmbuild/tmp/rpm-tmp.Lp01Vh (%check) I: [iurt_root_command] ERROR: chroot