Mock Version: 4.1 Mock Version: 4.1 Mock Version: 4.1 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --noclean --target x86_64 --nodeps /builddir/build/SPECS/rust-encoding.spec'], chrootPath='/var/lib/mock/dist-oc9-epol-build-87429-57988/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=86400uid=991gid=135user='mockbuild'nspawn_args=[]unshare_net=TrueprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --noclean --target x86_64 --nodeps /builddir/build/SPECS/rust-encoding.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: x86_64 Building for target x86_64 Wrote: /builddir/build/SRPMS/rust-encoding-0.2.33-1.oc9.src.rpm Child return code was: 0 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -br --noclean --target x86_64 --nodeps /builddir/build/SPECS/rust-encoding.spec'], chrootPath='/var/lib/mock/dist-oc9-epol-build-87429-57988/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=86400uid=991gid=135user='mockbuild'nspawn_args=[]unshare_net=TrueraiseExc=FalseprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -br --noclean --target x86_64 --nodeps /builddir/build/SPECS/rust-encoding.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: x86_64 Building for target x86_64 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.VL3Atr + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + rm -rf encoding-0.2.33 + /usr/lib/rpm/rpmuncompress -x /builddir/build/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 /builddir/build/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 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.lKnNM9 + umask 022 + cd /builddir/build/BUILD + cd encoding-0.2.33 + /usr/bin/cargo2rpm --path Cargo.toml buildrequires --with-check + RPM_EC=0 ++ jobs -p + exit 0 Wrote: /builddir/build/SRPMS/rust-encoding-0.2.33-1.oc9.buildreqs.nosrc.rpm Child return code was: 11 Dynamic buildrequires detected Going to install missing buildrequires. See root.log for details. ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -br --noclean --target x86_64 --nodeps /builddir/build/SPECS/rust-encoding.spec'], chrootPath='/var/lib/mock/dist-oc9-epol-build-87429-57988/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=86400uid=991gid=135user='mockbuild'nspawn_args=[]unshare_net=TrueraiseExc=FalseprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -br --noclean --target x86_64 --nodeps /builddir/build/SPECS/rust-encoding.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: x86_64 Building for target x86_64 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.mrUneQ + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + rm -rf encoding-0.2.33 + /usr/lib/rpm/rpmuncompress -x /builddir/build/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 /builddir/build/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 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.gEjskN + umask 022 + cd /builddir/build/BUILD + cd encoding-0.2.33 + /usr/bin/cargo2rpm --path Cargo.toml buildrequires --with-check + RPM_EC=0 ++ jobs -p + exit 0 Wrote: /builddir/build/SRPMS/rust-encoding-0.2.33-1.oc9.buildreqs.nosrc.rpm Child return code was: 11 Dynamic buildrequires detected Going to install missing buildrequires. See root.log for details. ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -ba --noprep --noclean --target x86_64 --nodeps /builddir/build/SPECS/rust-encoding.spec'], chrootPath='/var/lib/mock/dist-oc9-epol-build-87429-57988/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=86400uid=991gid=135user='mockbuild'nspawn_args=[]unshare_net=TrueprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -ba --noprep --noclean --target x86_64 --nodeps /builddir/build/SPECS/rust-encoding.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: x86_64 Building for target x86_64 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.r4yJx6 + umask 022 + cd /builddir/build/BUILD + cd encoding-0.2.33 + /usr/bin/cargo2rpm --path Cargo.toml buildrequires --with-check + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.Ak2Ih6 + umask 022 + cd /builddir/build/BUILD + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FCFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld -Wl,--build-id=sha1' + 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 + /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 -j32 -Z avoid-dev-deps --profile rpm Compiling encoding-index-simpchinese v1.20141219.5 Compiling encoding-index-singlebyte v1.20141219.5 Compiling encoding-index-japanese v1.20141219.5 Compiling encoding-index-korean v1.20141219.5 Compiling encoding-index-tradchinese v1.20141219.5 Running `/usr/bin/rustc --crate-name encoding_index_simpchinese /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 -C metadata=313dc30fceecf95c -C extra-filename=-313dc30fceecf95c --out-dir /builddir/build/BUILD/encoding-0.2.33/target/rpm/deps -L dependency=/builddir/build/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_singlebyte /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 -C metadata=f00c4a3633afba7e -C extra-filename=-f00c4a3633afba7e --out-dir /builddir/build/BUILD/encoding-0.2.33/target/rpm/deps -L dependency=/builddir/build/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 /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 -C metadata=373d4d5c3fc1f0d3 -C extra-filename=-373d4d5c3fc1f0d3 --out-dir /builddir/build/BUILD/encoding-0.2.33/target/rpm/deps -L dependency=/builddir/build/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 /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 -C metadata=fd851fbebace72e7 -C extra-filename=-fd851fbebace72e7 --out-dir /builddir/build/BUILD/encoding-0.2.33/target/rpm/deps -L dependency=/builddir/build/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 /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 -C metadata=2750a15cf9a52d82 -C extra-filename=-2750a15cf9a52d82 --out-dir /builddir/build/BUILD/encoding-0.2.33/target/rpm/deps -L dependency=/builddir/build/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 (/builddir/build/BUILD/encoding-0.2.33) Running `/usr/bin/rustc --crate-name encoding 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 -C metadata=dcbd3737c47004a9 -C extra-filename=-dcbd3737c47004a9 --out-dir /builddir/build/BUILD/encoding-0.2.33/target/rpm/deps -L dependency=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps --extern encoding_index_japanese=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_japanese-373d4d5c3fc1f0d3.rmeta --extern encoding_index_korean=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_korean-fd851fbebace72e7.rmeta --extern encoding_index_simpchinese=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_simpchinese-313dc30fceecf95c.rmeta --extern encoding_index_singlebyte=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_singlebyte-f00c4a3633afba7e.rmeta --extern encoding_index_tradchinese=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_tradchinese-2750a15cf9a52d82.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: 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: 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: 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: 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: 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/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: 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/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: use `dyn` | 181 | pub type EncodingRef = &'static (dyn Encoding + Send + Sync); | +++ 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: 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: 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: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: 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: 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: 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: 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: 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: 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: 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: 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: 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: 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/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: 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: 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: 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: 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: 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: use `dyn` | 17 | fn raw_decoder(&self) -> Box { ErrorDecoder::new() } | +++ 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: use `dyn` | 25 | pub fn new() -> Box { Box::new(ErrorEncoder) } | +++ 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: 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: 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: 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: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: use `dyn` | 50 | pub fn new() -> Box { Box::new(ErrorDecoder) } | +++ 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: 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: 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: use `dyn` | 65 | 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: 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: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: 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: use `dyn` | 23 | fn raw_decoder(&self) -> Box { ASCIIDecoder::new() } | +++ 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: use `dyn` | 31 | pub fn new() -> Box { Box::new(ASCIIEncoder) } | +++ 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: 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: 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: 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: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: use `dyn` | 66 | pub fn new() -> Box { Box::new(ASCIIDecoder) } | +++ 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: 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: 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: use `dyn` | 94 | fn raw_finish(&mut self, _output: &mut dyn StringWriter) -> Option { | +++ 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: 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: 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: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: 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: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: 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: 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: 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: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: 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/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: 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: 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: use `dyn` | 108 | 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: 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: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: 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: use `dyn` | 53 | fn raw_decoder(&self) -> Box { UTF8Decoder::new() } | +++ 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: use `dyn` | 61 | pub fn new() -> Box { Box::new(UTF8Encoder) } | +++ 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: 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: 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: 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: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: use `dyn` | 89 | pub fn new() -> Box { | +++ 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: 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: 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: 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_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: 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/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: 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: 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/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: 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: 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: 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: 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: 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: 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: 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: 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: 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: use `dyn` | 291 | fn raw_finish(&mut self, _output: &mut dyn StringWriter) -> Option { | +++ 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: 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: use `dyn` | 31 | fn raw_decoder(&self) -> Box { Windows949Decoder::new() } | +++ 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: use `dyn` | 39 | pub fn new() -> Box { Box::new(Windows949Encoder) } | +++ 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: 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: 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: 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: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: use `dyn` | 79 | pub fn new() -> Box { | +++ 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: 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: 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: use `dyn` | 94 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ 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) help: use `dyn` | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 274 | pub fn raw_finish(mut st: State, output: &mut dyn (::types::StringWriter), | +++++ + 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: 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: use `dyn` | 36 | fn raw_decoder(&self) -> Box { EUCJP0212Decoder::new() } | +++ 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: use `dyn` | 44 | pub fn new() -> Box { Box::new(EUCJPEncoder) } | +++ 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: 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: 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: 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: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: use `dyn` | 93 | pub fn new() -> Box { | +++ 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: 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: 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: 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: 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: use `dyn` | 456 | fn raw_decoder(&self) -> Box { Windows31JDecoder::new() } | +++ 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: use `dyn` | 464 | pub fn new() -> Box { Box::new(Windows31JEncoder) } | +++ 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: 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: 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: 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: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: use `dyn` | 515 | pub fn new() -> Box { | +++ 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: 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: 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: 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: 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: use `dyn` | 778 | fn raw_decoder(&self) -> Box { ISO2022JPDecoder::new() } | +++ 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: 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: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: 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: 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: 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: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: use `dyn` | 859 | pub fn new() -> Box { | +++ 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: 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: 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: use `dyn` | 874 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ 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) help: use `dyn` | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 274 | pub fn raw_finish(mut st: State, output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 274 | pub fn raw_finish(mut st: State, output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 274 | pub fn raw_finish(mut st: State, output: &mut dyn (::types::StringWriter), | +++++ + 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: 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: 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: 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: 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: 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: use `dyn` | 160 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> 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: use `dyn` | 172 | 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: 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: 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: 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: 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: use `dyn` | 481 | fn raw_decoder(&self) -> Box { HZDecoder::new() } | +++ 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: 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: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: 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: 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: 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: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: use `dyn` | 554 | pub fn new() -> Box { | +++ 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: 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: 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: use `dyn` | 569 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ 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) help: use `dyn` | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 274 | pub fn raw_finish(mut st: State, output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 274 | pub fn raw_finish(mut st: State, output: &mut dyn (::types::StringWriter), | +++++ + 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: 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: use `dyn` | 34 | fn raw_decoder(&self) -> Box { BigFive2003HKSCS2008Decoder::new() } | +++ 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: use `dyn` | 42 | pub fn new() -> Box { Box::new(BigFive2003Encoder) } | +++ 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: 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: 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: 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: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: use `dyn` | 85 | pub fn new() -> Box { | +++ 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: 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: 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: use `dyn` | 100 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ 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) help: use `dyn` | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 274 | pub fn raw_finish(mut st: State, output: &mut dyn (::types::StringWriter), | +++++ + 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: 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: 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: 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 | ^ | = note: `#[warn(unreachable_patterns)]` on by default warning: `encoding` (lib) generated 239 warnings (run `cargo fix --lib -p encoding` to apply 238 suggestions) Finished rpm [optimized + debuginfo] target(s) in 3.22s + RPM_EC=0 ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.fjZYou + umask 022 + cd /builddir/build/BUILD + '[' /builddir/build/BUILDROOT/rust-encoding-0.2.33-1.oc9.x86_64 '!=' / ']' + rm -rf /builddir/build/BUILDROOT/rust-encoding-0.2.33-1.oc9.x86_64 ++ dirname /builddir/build/BUILDROOT/rust-encoding-0.2.33-1.oc9.x86_64 + mkdir -p /builddir/build/BUILDROOT + mkdir /builddir/build/BUILDROOT/rust-encoding-0.2.33-1.oc9.x86_64 + cd encoding-0.2.33 + 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=/builddir/build/BUILDROOT/rust-encoding-0.2.33-1.oc9.x86_64/usr/share/cargo/registry/encoding-0.2.33 + /usr/bin/mkdir -p /builddir/build/BUILDROOT/rust-encoding-0.2.33-1.oc9.x86_64/usr/share/cargo/registry/encoding-0.2.33 + gawk -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 /builddir/build/BUILDROOT/rust-encoding-0.2.33-1.oc9.x86_64/usr/share/cargo/registry/encoding-0.2.33 warning: No (git) VCS found for `/builddir/build/BUILD/encoding-0.2.33` + /usr/bin/mv Cargo.toml.deps Cargo.toml + /usr/bin/cp -a Cargo.toml /builddir/build/BUILDROOT/rust-encoding-0.2.33-1.oc9.x86_64/usr/share/cargo/registry/encoding-0.2.33/Cargo.toml + /usr/bin/rm -f /builddir/build/BUILDROOT/rust-encoding-0.2.33-1.oc9.x86_64/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 + /usr/lib/rpm/OpenCloudOS/brp-ldconfig + /usr/lib/rpm/brp-compress + /usr/lib/rpm/brp-strip /usr/bin/strip + /usr/lib/rpm/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump + /usr/lib/rpm/OpenCloudOS/brp-strip-lto /usr/bin/strip + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/check-rpaths + /usr/lib/rpm/OpenCloudOS/brp-mangle-shebangs + /usr/lib/rpm/OpenCloudOS/brp-python-bytecompile '' 1 0 + /usr/lib/rpm/OpenCloudOS/brp-python-hardlink Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.E1vgO8 + umask 022 + cd /builddir/build/BUILD + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules' + export FCFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld -Wl,--build-id=sha1' + 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 + /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 -j32 -Z avoid-dev-deps --profile rpm --no-fail-fast Fresh encoding-index-japanese v1.20141219.5 Fresh encoding-index-simpchinese v1.20141219.5 Fresh encoding-index-korean v1.20141219.5 Fresh encoding-index-singlebyte v1.20141219.5 Fresh encoding-index-tradchinese v1.20141219.5 Compiling unicode-width v0.1.13 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: 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: 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: 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: 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: 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/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: 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/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: use `dyn` | 181 | pub type EncodingRef = &'static (dyn Encoding + Send + Sync); | +++ 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: 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: 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: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: 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: 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: 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: 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: 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: 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: 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: 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: 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: 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/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: 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: 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: 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: 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: 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: use `dyn` | 17 | fn raw_decoder(&self) -> Box { ErrorDecoder::new() } | +++ 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: use `dyn` | 25 | pub fn new() -> Box { Box::new(ErrorEncoder) } | +++ 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: 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: 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: 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: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: use `dyn` | 50 | pub fn new() -> Box { Box::new(ErrorDecoder) } | +++ 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: 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: 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: use `dyn` | 65 | 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: 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: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: 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: use `dyn` | 23 | fn raw_decoder(&self) -> Box { ASCIIDecoder::new() } | +++ 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: use `dyn` | 31 | pub fn new() -> Box { Box::new(ASCIIEncoder) } | +++ 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: 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: 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: 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: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: use `dyn` | 66 | pub fn new() -> Box { Box::new(ASCIIDecoder) } | +++ 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: 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: 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: use `dyn` | 94 | fn raw_finish(&mut self, _output: &mut dyn StringWriter) -> Option { | +++ 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: 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: 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: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: 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: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: 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: 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: 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: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: 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/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: 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: 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: use `dyn` | 108 | 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: 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: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: 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: use `dyn` | 53 | fn raw_decoder(&self) -> Box { UTF8Decoder::new() } | +++ 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: use `dyn` | 61 | pub fn new() -> Box { Box::new(UTF8Encoder) } | +++ 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: 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: 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: 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: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: use `dyn` | 89 | pub fn new() -> Box { | +++ 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: 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: 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: 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_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: 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/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: 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: 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/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: 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: 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: 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: 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: 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: 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: 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: 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: 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: use `dyn` | 291 | fn raw_finish(&mut self, _output: &mut dyn StringWriter) -> Option { | +++ 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: 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: use `dyn` | 31 | fn raw_decoder(&self) -> Box { Windows949Decoder::new() } | +++ 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: use `dyn` | 39 | pub fn new() -> Box { Box::new(Windows949Encoder) } | +++ 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: 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: 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: 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: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: use `dyn` | 79 | pub fn new() -> Box { | +++ 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: 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: 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: use `dyn` | 94 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ 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) help: use `dyn` | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 274 | pub fn raw_finish(mut st: State, output: &mut dyn (::types::StringWriter), | +++++ + 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: 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: use `dyn` | 36 | fn raw_decoder(&self) -> Box { EUCJP0212Decoder::new() } | +++ 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: use `dyn` | 44 | pub fn new() -> Box { Box::new(EUCJPEncoder) } | +++ 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: 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: 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: 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: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: use `dyn` | 93 | pub fn new() -> Box { | +++ 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: 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: 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: 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: 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: use `dyn` | 456 | fn raw_decoder(&self) -> Box { Windows31JDecoder::new() } | +++ 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: use `dyn` | 464 | pub fn new() -> Box { Box::new(Windows31JEncoder) } | +++ 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: 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: 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: 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: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: use `dyn` | 515 | pub fn new() -> Box { | +++ 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: 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: 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: 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: 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: use `dyn` | 778 | fn raw_decoder(&self) -> Box { ISO2022JPDecoder::new() } | +++ 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: 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: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: 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: 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: 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: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: use `dyn` | 859 | pub fn new() -> Box { | +++ 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: 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: 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: use `dyn` | 874 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ 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) help: use `dyn` | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 274 | pub fn raw_finish(mut st: State, output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 274 | pub fn raw_finish(mut st: State, output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 274 | pub fn raw_finish(mut st: State, output: &mut dyn (::types::StringWriter), | +++++ + 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: 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: 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: 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: 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: 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: use `dyn` | 160 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> 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: use `dyn` | 172 | 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: 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: 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: 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: 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: use `dyn` | 481 | fn raw_decoder(&self) -> Box { HZDecoder::new() } | +++ 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: 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: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: 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: 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: 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: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: use `dyn` | 554 | pub fn new() -> Box { | +++ 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: 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: 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: use `dyn` | 569 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ 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) help: use `dyn` | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 274 | pub fn raw_finish(mut st: State, output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 274 | pub fn raw_finish(mut st: State, output: &mut dyn (::types::StringWriter), | +++++ + 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: 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: use `dyn` | 34 | fn raw_decoder(&self) -> Box { BigFive2003HKSCS2008Decoder::new() } | +++ 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: use `dyn` | 42 | pub fn new() -> Box { Box::new(BigFive2003Encoder) } | +++ 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: 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: 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: 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: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: use `dyn` | 85 | pub fn new() -> Box { | +++ 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: 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: 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: use `dyn` | 100 | fn raw_finish(&mut self, output: &mut dyn StringWriter) -> Option { | +++ 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) help: use `dyn` | 232 | pub fn raw_feed(mut st: State, input: &[u8], output: &mut dyn (::types::StringWriter), | +++++ + 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) help: use `dyn` | 274 | pub fn raw_finish(mut st: State, output: &mut dyn (::types::StringWriter), | +++++ + 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: 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: 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: 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 | ^ | = note: `#[warn(unreachable_patterns)]` on by default Running `/usr/bin/rustc --crate-name unicode_width --edition=2021 /usr/share/cargo/registry/unicode-width-0.1.13/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 --cfg 'feature="default"' -C metadata=bc56235e26dfc1a3 -C extra-filename=-bc56235e26dfc1a3 --out-dir /builddir/build/BUILD/encoding-0.2.33/target/rpm/deps -L dependency=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps --cap-lints allow -Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn` warning: `encoding` (lib) generated 239 warnings (run `cargo fix --lib -p encoding` to apply 238 suggestions) Compiling getopts v0.2.21 Running `/usr/bin/rustc --crate-name getopts /usr/share/cargo/registry/getopts-0.2.21/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 -C metadata=72450e7f9281ce0f -C extra-filename=-72450e7f9281ce0f --out-dir /builddir/build/BUILD/encoding-0.2.33/target/rpm/deps -L dependency=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps --extern unicode_width=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libunicode_width-bc56235e26dfc1a3.rmeta --cap-lints allow -Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn` Compiling encoding v0.2.33 (/builddir/build/BUILD/encoding-0.2.33) Running `/usr/bin/rustc --crate-name recode examples/recode.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type bin --emit=dep-info,link -C opt-level=3 -C embed-bitcode=no -C codegen-units=1 -C debuginfo=2 -C metadata=db092160a4bf38c3 -C extra-filename=-db092160a4bf38c3 --out-dir /builddir/build/BUILD/encoding-0.2.33/target/rpm/examples -L dependency=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps --extern encoding=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding-dcbd3737c47004a9.rlib --extern encoding_index_japanese=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_japanese-373d4d5c3fc1f0d3.rlib --extern encoding_index_korean=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_korean-fd851fbebace72e7.rlib --extern encoding_index_simpchinese=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_simpchinese-313dc30fceecf95c.rlib --extern encoding_index_singlebyte=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_singlebyte-f00c4a3633afba7e.rlib --extern encoding_index_tradchinese=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_tradchinese-2750a15cf9a52d82.rlib --extern getopts=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libgetopts-72450e7f9281ce0f.rlib -Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn` Running `/usr/bin/rustc --crate-name encoding src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,link -C opt-level=3 -C embed-bitcode=no -C codegen-units=1 -C debuginfo=2 --test -C metadata=3eb6129738a03fc8 -C extra-filename=-3eb6129738a03fc8 --out-dir /builddir/build/BUILD/encoding-0.2.33/target/rpm/deps -L dependency=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps --extern encoding_index_japanese=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_japanese-373d4d5c3fc1f0d3.rlib --extern encoding_index_korean=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_korean-fd851fbebace72e7.rlib --extern encoding_index_simpchinese=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_simpchinese-313dc30fceecf95c.rlib --extern encoding_index_singlebyte=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_singlebyte-f00c4a3633afba7e.rlib --extern encoding_index_tradchinese=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_tradchinese-2750a15cf9a52d82.rlib --extern getopts=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libgetopts-72450e7f9281ce0f.rlib -Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn` warning: trait objects without an explicit `dyn` are deprecated --> examples/recode.rs:67:58 | 67 | Some("-") | None => Box::new(io::stdin()) as Box, | ^^^^ | = 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: use `dyn` | 67 | Some("-") | None => Box::new(io::stdin()) as Box, | +++ warning: trait objects without an explicit `dyn` are deprecated --> examples/recode.rs:69:41 | 69 | Ok(f) => Box::new(f) as 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: use `dyn` | 69 | Ok(f) => Box::new(f) as Box, | +++ warning: trait objects without an explicit `dyn` are deprecated --> examples/recode.rs:74:59 | 74 | Some("-") | None => Box::new(io::stdout()) as 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: use `dyn` | 74 | Some("-") | None => Box::new(io::stdout()) as Box, | +++ warning: trait objects without an explicit `dyn` are deprecated --> examples/recode.rs:76:41 | 76 | Ok(f) => Box::new(f) as 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: use `dyn` | 76 | Ok(f) => Box::new(f) as Box, | +++ warning: panic message is not a string literal --> examples/recode.rs:30:26 | 30 | Err(e) => panic!(e.to_string()), | ^^^^^^^^^^^^^ | = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 = note: for more information, see = note: `#[warn(non_fmt_panics)]` on by default help: add a "{}" format string to `Display` the message | 30 | Err(e) => panic!("{}", e.to_string()), | +++++ warning: trait objects without an explicit `dyn` are deprecated --> src/testutils.rs:31:19 | 31 | impl Testable for RawDecoder { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: use `dyn` | 31 | impl Testable for dyn RawDecoder { | +++ help: alternatively use a blanket implementation to implement `Testable` for all types that also implement `RawDecoder` | 31 | impl Testable for T { | +++++++++++++++ ~ warning: trait objects without an explicit `dyn` are deprecated --> src/testutils.rs:92:19 | 92 | impl Testable for RawEncoder { | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: use `dyn` | 92 | impl Testable for dyn RawEncoder { | +++ help: alternatively use a blanket implementation to implement `Testable` for all types that also implement `RawEncoder` | 92 | impl Testable for T { | +++++++++++++++ ~ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:438:36 | 438 | 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: use `dyn` | 438 | fn from_self(&self) -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:446:34 | 446 | 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: use `dyn` | 446 | output: &mut dyn ByteWriter) -> (usize, Option) { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:463:48 | 463 | fn raw_finish(&mut self, _output: &mut ByteWriter) -> Option { None } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: use `dyn` | 463 | fn raw_finish(&mut self, _output: &mut dyn ByteWriter) -> Option { None } | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:469:38 | 469 | 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: use `dyn` | 469 | fn raw_encoder(&self) -> Box { | +++ warning: trait objects without an explicit `dyn` are deprecated --> src/types.rs:475:38 | 475 | fn raw_decoder(&self) -> Box { panic!("not supported") } | ^^^^^^^^^^ | = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see help: use `dyn` | 475 | fn raw_decoder(&self) -> Box { panic!("not supported") } | +++ warning: `encoding` (example "recode") generated 5 warnings (run `cargo fix --example "recode"` to apply 5 suggestions) warning: calls to `std::str::from_utf8` with a invalid literal always return an error --> src/codec/utf_8.rs:628:34 | 628 | assert_eq!(from_utf8(s), str::from_utf8(s).ok()); | ^^^^^^^^^^^^^^^^^ | ::: src/testutils.rs:281:47 | 281 | pub static INVALID_UTF8_TEXT: &'static [u8] = include_bytes!("examples/UTF-8-test.txt"); | ----------------------------------------- the literal was valid UTF-8 up to the 4440 bytes | = note: `#[warn(invalid_from_utf8)]` on by default warning: calls to `std::str::from_utf8` with a invalid literal always return an error --> src/codec/utf_8.rs:770:17 | 770 | str::from_utf8(s) | ^^^^^^^^^^^^^^^^^ | ::: src/testutils.rs:281:47 | 281 | pub static INVALID_UTF8_TEXT: &'static [u8] = include_bytes!("examples/UTF-8-test.txt"); | ----------------------------------------- the literal was valid UTF-8 up to the 4440 bytes warning: `encoding` (lib test) generated 248 warnings (239 duplicates) (run `cargo fix --lib -p encoding --tests` to apply 7 suggestions) Finished rpm [optimized + debuginfo] target(s) in 24.79s Running `/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/encoding-3eb6129738a03fc8` running 149 tests test codec::ascii::tests::bench_decode ... ok test codec::ascii::tests::bench_encode ... ok test codec::ascii::tests::bench_decode_replace ... ok test codec::ascii::tests::bench_encode_replace ... ok test codec::ascii::tests::test_decoder ... ok test codec::ascii::tests::test_encoder ... ok test codec::error::tests::test_decoder ... ok test codec::error::tests::test_encoder ... ok test codec::japanese::eucjp_tests::bench_encode_short_text ... ok test codec::japanese::eucjp_tests::bench_decode_short_text ... ok test codec::japanese::eucjp_tests::test_decoder_feed_after_finish ... ok test codec::japanese::eucjp_tests::test_decoder_invalid_lead_followed_by_invalid_trail ... ok test codec::japanese::eucjp_tests::test_decoder_invalid_lone_lead_followed_by_space ... ok test codec::japanese::eucjp_tests::test_decoder_invalid_lone_lead_for_0212_immediate_test_finish ... ok test codec::japanese::eucjp_tests::test_decoder_invalid_lone_lead_for_0212_immediate_test_finish_partial ... ok test codec::japanese::eucjp_tests::test_decoder_invalid_lone_lead_immediate_test_finish ... ok test codec::japanese::eucjp_tests::test_decoder_invalid_middle_for_0212 ... ok test codec::japanese::eucjp_tests::test_decoder_invalid_middle_for_0212_partial ... ok test codec::japanese::eucjp_tests::test_decoder_invalid_trail_for_0201 ... ok test codec::japanese::eucjp_tests::test_decoder_invalid_trail_for_0212 ... ok test codec::japanese::eucjp_tests::test_decoder_invalid_trail_for_0201_partial ... ok test codec::japanese::eucjp_tests::test_decoder_valid ... ok test codec::japanese::eucjp_tests::test_decoder_invalid_trail_for_0212_partial ... ok test codec::japanese::eucjp_tests::test_decoder_valid_partial ... ok test codec::japanese::eucjp_tests::test_encoder_double_mapped ... ok test codec::japanese::eucjp_tests::test_encoder_invalid ... ok test codec::japanese::eucjp_tests::test_encoder_valid ... ok test codec::japanese::iso2022jp_tests::bench_decode_short_text ... ok test codec::japanese::iso2022jp_tests::bench_encode_short_text ... ok test codec::japanese::iso2022jp_tests::test_decoder_carriage_return ... ok test codec::japanese::iso2022jp_tests::test_decoder_feed_after_finish ... ok test codec::japanese::iso2022jp_tests::test_decoder_invalid_escape ... ok test codec::japanese::iso2022jp_tests::test_decoder_invalid_out_or_range ... ok test codec::japanese::iso2022jp_tests::test_decoder_invalid_partial ... ok test codec::japanese::iso2022jp_tests::test_decoder_invalid_partial_escape ... ok test codec::japanese::iso2022jp_tests::test_decoder_valid ... ok test codec::japanese::iso2022jp_tests::test_decoder_valid_partial ... ok test codec::japanese::iso2022jp_tests::test_encoder_invalid ... ok test codec::japanese::iso2022jp_tests::test_encoder_valid ... ok test codec::japanese::windows31j_tests::bench_decode_short_text ... ok test codec::japanese::windows31j_tests::bench_encode_short_text ... ok test codec::japanese::windows31j_tests::test_decoder_eudc ... ok test codec::japanese::windows31j_tests::test_decoder_feed_after_finish ... ok test codec::japanese::windows31j_tests::test_decoder_invalid_lead_followed_by_invalid_trail ... ok test codec::japanese::windows31j_tests::test_decoder_invalid_lone_lead_followed_by_space ... ok test codec::japanese::windows31j_tests::test_decoder_invalid_lead_followed_by_invalid_trail_partial ... ok test codec::japanese::windows31j_tests::test_decoder_invalid_lone_lead_immediate_test_finish ... ok test codec::japanese::windows31j_tests::test_decoder_valid ... ok test codec::japanese::windows31j_tests::test_encoder_double_mapped ... ok test codec::japanese::windows31j_tests::test_encoder_invalid ... ok test codec::japanese::windows31j_tests::test_encoder_no_eudc ... ok test codec::japanese::windows31j_tests::test_encoder_valid ... ok test codec::korean::windows949_tests::bench_decode_short_text ... ok test codec::korean::windows949_tests::bench_encode_short_text ... ok test codec::korean::windows949_tests::test_decoder_invalid_boundary ... ok test codec::korean::windows949_tests::test_decoder_feed_after_finish ... ok test codec::korean::windows949_tests::test_decoder_invalid_lead_followed_by_invalid_trail ... ok test codec::korean::windows949_tests::test_decoder_invalid_lone_lead_immediate_test_finish ... ok test codec::korean::windows949_tests::test_decoder_invalid_lone_lead_followed_by_space ... ok test codec::korean::windows949_tests::test_encoder_valid ... ok test codec::korean::windows949_tests::test_decoder_valid_partial ... ok test codec::korean::windows949_tests::test_decoder_valid ... ok test codec::simpchinese::gb18030_tests::bench_decode_short_text ... ok test codec::simpchinese::gb18030_tests::bench_encode_short_text ... ok test codec::korean::windows949_tests::test_encoder_invalid ... ok test codec::simpchinese::gb18030_tests::test_decoder_feed_after_finish ... ok test codec::simpchinese::gb18030_tests::test_decoder_invalid_boundary ... ok test codec::simpchinese::gb18030_tests::test_decoder_invalid_out_of_range ... ok test codec::simpchinese::gb18030_tests::test_decoder_invalid_partial ... ok test codec::simpchinese::gb18030_tests::test_decoder_valid ... ok test codec::simpchinese::gb18030_tests::test_decoder_valid_partial ... ok test codec::simpchinese::gb18030_tests::test_encoder ... ok test codec::simpchinese::gbk_tests::bench_encode_short_text ... ok test codec::simpchinese::gbk_tests::test_encoder ... ok test codec::simpchinese::hz_tests::bench_decode_short_text ... ok test codec::simpchinese::hz_tests::bench_encode_short_text ... ok test codec::simpchinese::hz_tests::test_decoder_feed_after_finish ... ok test codec::simpchinese::hz_tests::test_decoder_invalid_carriage_return ... ok test codec::simpchinese::hz_tests::test_decoder_invalid_escape ... ok test codec::simpchinese::hz_tests::test_decoder_invalid_out_or_range ... ok test codec::simpchinese::hz_tests::test_decoder_invalid_partial ... ok test codec::simpchinese::hz_tests::test_decoder_valid ... ok test codec::simpchinese::hz_tests::test_encoder_invalid ... ok test codec::simpchinese::hz_tests::test_encoder_valid ... ok test codec::singlebyte::tests::test_encoder_non_bmp ... ok test codec::tradchinese::bigfive2003_tests::bench_encode_short_text ... ok test codec::tradchinese::bigfive2003_tests::bench_decode_short_text ... ok test codec::tradchinese::bigfive2003_tests::test_decoder_feed_after_finish ... ok test codec::tradchinese::bigfive2003_tests::test_decoder_invalid_lead_followed_by_invalid_trail ... ok test codec::tradchinese::bigfive2003_tests::test_decoder_invalid_lone_lead_followed_by_space ... ok test codec::tradchinese::bigfive2003_tests::test_decoder_valid ... ok test codec::tradchinese::bigfive2003_tests::test_encoder_invalid ... ok test codec::tradchinese::bigfive2003_tests::test_decoder_invalid_lone_lead_immediate_test_finish ... ok test codec::tradchinese::bigfive2003_tests::test_encoder_valid ... ok test codec::utf_16::tests::test_decoder_feed_after_finish ... ok test codec::utf_16::tests::test_decoder_invalid_lone_lower_surrogate_partial ... ok test codec::utf_16::tests::test_decoder_invalid_lone_upper_surrogate ... ok test codec::utf_16::tests::test_decoder_invalid_one_byte_before_finish ... ok test codec::utf_16::tests::test_decoder_invalid_partial ... ok test codec::utf_16::tests::test_decoder_invalid_lone_lower_surrogate ... ok test codec::utf_16::tests::test_decoder_invalid_three_bytes_before_finish ... ok test codec::utf_16::tests::test_decoder_invalid_lone_upper_surrogate_partial ... ok test codec::utf_16::tests::test_decoder_invalid_three_bytes_before_finish_partial ... ok test codec::utf_16::tests::test_decoder_valid ... ok test codec::utf_16::tests::test_decoder_valid_partial_bmp ... ok test codec::utf_16::tests::test_encoder_valid ... ok test codec::utf_16::tests::test_decoder_valid_partial_non_bmp ... ok test codec::utf_8::tests::bench_ascii::bench_encode ... ok test codec::utf_8::tests::bench_ascii::bench_from_utf8 ... ok test codec::utf_8::tests::bench_ascii::bench_stdlib_from_utf8 ... ok test codec::utf_8::tests::bench_ascii::bench_decode ... ok test codec::utf_8::tests::bench_ascii::bench_stdlib_from_utf8_lossy ... ok test codec::utf_8::tests::bench_korean::bench_decode ... ok test codec::utf_8::tests::bench_korean::bench_encode ... ok test codec::utf_8::tests::bench_korean::bench_from_utf8 ... ok test codec::utf_8::tests::bench_korean::bench_stdlib_from_utf8 ... ok test codec::utf_8::tests::bench_korean::bench_stdlib_from_utf8_lossy ... ok test codec::utf_8::tests::bench_lossy_invalid::bench_from_utf8_failing ... ok test codec::utf_8::tests::bench_lossy_invalid::bench_stdlib_from_utf8_failing ... ok test codec::utf_8::tests::bench_lossy_external::bench_stdlib_from_utf8_failing ... ok test codec::utf_8::tests::test_feed_after_finish ... ok test codec::utf_8::tests::bench_lossy_external::bench_stdlib_from_utf8_lossy ... ok test codec::utf_8::tests::bench_lossy_invalid::bench_stdlib_from_utf8_lossy ... ok test codec::utf_8::tests::test_correct_from_utf8 ... ok test codec::utf_8::tests::bench_lossy_invalid::bench_decode_replace ... ok test codec::utf_8::tests::test_invalid_continuation ... ok test codec::utf_8::tests::test_invalid_boundary ... ok test codec::utf_8::tests::test_invalid_incomplete_three_byte_seq_followed_by_space ... ok test codec::utf_8::tests::test_invalid_incomplete_four_byte_seq_followed_by_space ... ok test codec::utf_8::tests::test_invalid_overlong_maximal ... ok test codec::utf_8::tests::test_invalid_overlong_minimal ... ok test codec::utf_8::tests::bench_lossy_external::bench_from_utf8_failing ... ok test codec::utf_8::tests::test_invalid_start_followed_by_space ... ok test codec::utf_8::tests::test_invalid_lone_start_followed_by_space ... ok test codec::utf_8::tests::test_invalid_start_immediate_test_finish ... ok test codec::utf_8::tests::test_invalid_surrogate ... ok test codec::utf_8::tests::test_invalid_too_many_cont_bytes ... ok test codec::utf_8::tests::test_invalid_lone_start_immediate_test_finish ... ok test codec::utf_8::tests::bench_lossy_external::bench_decode_replace ... ok test codec::utf_8::tests::test_valid ... ok test codec::utf_8::tests::test_valid_boundary ... ok test label::tests::bench_encoding_from_whatwg_label ... ok test codec::utf_8::tests::test_invalid_too_many_cont_bytes_partial ... ok test types::tests::test_reencoding_trap_with_ascii_compatible_encoding ... ok test types::tests::test_reencoding_trap_can_fail - should panic ... ok test codec::utf_8::tests::test_valid_partial ... ok test label::tests::test_encoding_from_whatwg_label ... ok test types::tests::test_reencoding_trap_with_ascii_incompatible_encoding ... ok test tests::test_decode ... ok test result: ok. 149 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests encoding Running `/usr/bin/rustdoc --crate-type lib --crate-name encoding --test src/lib.rs --test-run-directory /builddir/build/BUILD/encoding-0.2.33 -L dependency=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps -L dependency=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps --extern encoding=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding-dcbd3737c47004a9.rlib --extern encoding_index_japanese=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_japanese-373d4d5c3fc1f0d3.rlib --extern encoding_index_korean=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_korean-fd851fbebace72e7.rlib --extern encoding_index_simpchinese=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_simpchinese-313dc30fceecf95c.rlib --extern encoding_index_singlebyte=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_singlebyte-f00c4a3633afba7e.rlib --extern encoding_index_tradchinese=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libencoding_index_tradchinese-2750a15cf9a52d82.rlib --extern getopts=/builddir/build/BUILD/encoding-0.2.33/target/rpm/deps/libgetopts-72450e7f9281ce0f.rlib -C embed-bitcode=no --error-format human` 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: 73 warnings emitted running 8 tests test src/lib.rs - (line 22) ... ok test src/lib.rs - (line 30) ... ok test src/lib.rs - (line 40) ... ok test src/lib.rs - (line 78) ... ok test src/lib.rs - (line 55) ... ok test src/lib.rs - (line 117) ... ok test src/lib.rs - (line 65) ... ok test src/lib.rs - (line 94) ... ok test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s + RPM_EC=0 ++ jobs -p + exit 0 Processing files: rust-encoding-devel-0.2.33-1.oc9.noarch warning: File listed twice: /usr/share/cargo/registry/encoding-0.2.33/AUTHORS.txt warning: File listed twice: /usr/share/cargo/registry/encoding-0.2.33/LICENSE.txt warning: File listed twice: /usr/share/cargo/registry/encoding-0.2.33/README.md Provides: crate(encoding) = 0.2.33 rust-encoding-devel = 0.2.33-1.oc9 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: (crate(encoding-index-japanese/default) >= 1.20141219.5 with crate(encoding-index-japanese/default) < 1.20141220.0~) (crate(encoding-index-korean/default) >= 1.20141219.5 with crate(encoding-index-korean/default) < 1.20141220.0~) (crate(encoding-index-simpchinese/default) >= 1.20141219.5 with crate(encoding-index-simpchinese/default) < 1.20141220.0~) (crate(encoding-index-singlebyte/default) >= 1.20141219.5 with crate(encoding-index-singlebyte/default) < 1.20141220.0~) (crate(encoding-index-tradchinese/default) >= 1.20141219.5 with crate(encoding-index-tradchinese/default) < 1.20141220.0~) cargo Processing files: rust-encoding+default-devel-0.2.33-1.oc9.noarch Provides: crate(encoding/default) = 0.2.33 rust-encoding+default-devel = 0.2.33-1.oc9 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: cargo crate(encoding) = 0.2.33 Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILDROOT/rust-encoding-0.2.33-1.oc9.x86_64 Wrote: /builddir/build/SRPMS/rust-encoding-0.2.33-1.oc9.src.rpm Wrote: /builddir/build/RPMS/rust-encoding+default-devel-0.2.33-1.oc9.noarch.rpm Wrote: /builddir/build/RPMS/rust-encoding-devel-0.2.33-1.oc9.noarch.rpm RPM build warnings: File listed twice: /usr/share/cargo/registry/encoding-0.2.33/AUTHORS.txt File listed twice: /usr/share/cargo/registry/encoding-0.2.33/LICENSE.txt File listed twice: /usr/share/cargo/registry/encoding-0.2.33/README.md Child return code was: 0