[INFO] fetching crate nibble 0.1.0... [INFO] testing nibble-0.1.0 against beta-2022-04-10 for beta-1.61-1 [INFO] extracting crate nibble 0.1.0 into /workspace/builds/worker-26/source [INFO] validating manifest of crates.io crate nibble 0.1.0 on toolchain beta-2022-04-10 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate nibble 0.1.0 [INFO] finished tweaking crates.io crate nibble 0.1.0 [INFO] tweaked toml for crates.io crate nibble 0.1.0 written to /workspace/builds/worker-26/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-26/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-26/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 63dc8671c861695f401c34f2a38a55be4333f1f04a2df6af867e062f838470d5 [INFO] running `Command { std: "docker" "start" "-a" "63dc8671c861695f401c34f2a38a55be4333f1f04a2df6af867e062f838470d5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "63dc8671c861695f401c34f2a38a55be4333f1f04a2df6af867e062f838470d5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "63dc8671c861695f401c34f2a38a55be4333f1f04a2df6af867e062f838470d5", kill_on_drop: false }` [INFO] [stdout] 63dc8671c861695f401c34f2a38a55be4333f1f04a2df6af867e062f838470d5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-26/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-26/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7fd5dc5388639577f076c68af24475050e01b76f61c1bcd8f005156984b4d6fc [INFO] running `Command { std: "docker" "start" "-a" "7fd5dc5388639577f076c68af24475050e01b76f61c1bcd8f005156984b4d6fc", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling arrayvec v0.4.12 [INFO] [stderr] Compiling nodrop v0.1.14 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling num-traits v0.1.43 [INFO] [stderr] Compiling nibble v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/base.rs:87:17 [INFO] [stdout] | [INFO] [stdout] 87 | b'0'...b'9' => Some(Self::from_lo(b - b'0')), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/base.rs:88:17 [INFO] [stdout] | [INFO] [stdout] 88 | b'A'...b'F' => Some(Self::from_lo(b - b'A' + 0xA)), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/base.rs:89:17 [INFO] [stdout] | [INFO] [stdout] 89 | b'a'...b'f' => Some(Self::from_lo(b - b'a' + 0xa)), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/base.rs:98:16 [INFO] [stdout] | [INFO] [stdout] 98 | 0x0...0x9 => b'0' + val, [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/base.rs:99:16 [INFO] [stdout] | [INFO] [stdout] 99 | 0xa...0xf => b'a' + val - 0xa, [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/base.rs:108:16 [INFO] [stdout] | [INFO] [stdout] 108 | 0x0...0x9 => b'0' + val, [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/base.rs:109:16 [INFO] [stdout] | [INFO] [stdout] 109 | 0xA...0xF => b'A' + val - 0xA, [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/base.rs:120:16 [INFO] [stdout] | [INFO] [stdout] 120 | '0'...'9' => Some(Self::from_lo(u32::from(c) as u8 - b'0')), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/base.rs:121:16 [INFO] [stdout] | [INFO] [stdout] 121 | 'A'...'F' => Some(Self::from_lo(u32::from(c) as u8 - b'A' + 0xA)), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/base.rs:122:16 [INFO] [stdout] | [INFO] [stdout] 122 | 'a'...'f' => Some(Self::from_lo(u32::from(c) as u8 - b'a' + 0xa)), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pair.rs:227:20 [INFO] [stdout] | [INFO] [stdout] 227 | hi: Option<&'a u4>, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 227 - hi: Option<&'a u4>, [INFO] [stdout] 227 + hi: Option<&'a dyn u4>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pair.rs:228:20 [INFO] [stdout] | [INFO] [stdout] 228 | lo: Option<&'a u4>, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 228 - lo: Option<&'a u4>, [INFO] [stdout] 228 + lo: Option<&'a dyn u4>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pair.rs:253:20 [INFO] [stdout] | [INFO] [stdout] 253 | hi: Option<&'a U4Cell>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 253 - hi: Option<&'a U4Cell>, [INFO] [stdout] 253 + hi: Option<&'a dyn U4Cell>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pair.rs:254:20 [INFO] [stdout] | [INFO] [stdout] 254 | lo: Option<&'a U4Cell>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 254 - lo: Option<&'a U4Cell>, [INFO] [stdout] 254 + lo: Option<&'a dyn U4Cell>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0554]: `#![feature]` may not be used on the beta release channel [INFO] [stdout] --> src/lib.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | #![feature(try_from)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0554]: `#![feature]` may not be used on the beta release channel [INFO] [stdout] --> src/lib.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | #![feature(trace_macros)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `try_from` has been stable since 1.34.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | #![feature(try_from)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/common.rs:85:62 [INFO] [stdout] | [INFO] [stdout] 85 | pub(crate) fn get_nib_ref(slice: &[u4x2], nibidx: usize) -> &u4 { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 85 - pub(crate) fn get_nib_ref(slice: &[u4x2], nibidx: usize) -> &u4 { [INFO] [stdout] 85 + pub(crate) fn get_nib_ref(slice: &[u4x2], nibidx: usize) -> &dyn u4 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/common.rs:94:66 [INFO] [stdout] | [INFO] [stdout] 94 | pub(crate) fn get_nib_mut(slice: &mut [u4x2], nibidx: usize) -> &U4Cell { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 94 - pub(crate) fn get_nib_mut(slice: &mut [u4x2], nibidx: usize) -> &U4Cell { [INFO] [stdout] 94 + pub(crate) fn get_nib_mut(slice: &mut [u4x2], nibidx: usize) -> &dyn U4Cell { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/array.rs:196:50 [INFO] [stdout] | [INFO] [stdout] 196 | impl<'a, A: Array> FromIterator<&'a u4> for NibArrayVec { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 196 - impl<'a, A: Array> FromIterator<&'a u4> for NibArrayVec { [INFO] [stdout] 196 + impl<'a, A: Array> FromIterator<&'a dyn u4> for NibArrayVec { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/array.rs:217:44 [INFO] [stdout] | [INFO] [stdout] 217 | impl<'a, A: Array> Extend<&'a u4> for NibArrayVec { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 217 - impl<'a, A: Array> Extend<&'a u4> for NibArrayVec { [INFO] [stdout] 217 + impl<'a, A: Array> Extend<&'a dyn u4> for NibArrayVec { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/array.rs:197:45 [INFO] [stdout] | [INFO] [stdout] 197 | fn from_iter>(iter: I) -> Self { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 197 - fn from_iter>(iter: I) -> Self { [INFO] [stdout] 197 + fn from_iter>(iter: I) -> Self { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/array.rs:218:42 [INFO] [stdout] | [INFO] [stdout] 218 | fn extend>(&mut self, iter: I) { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 218 - fn extend>(&mut self, iter: I) { [INFO] [stdout] 218 + fn extend>(&mut self, iter: I) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/iter.rs:141:21 [INFO] [stdout] | [INFO] [stdout] 141 | type Item = &'a u4; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 141 - type Item = &'a u4; [INFO] [stdout] 141 + type Item = &'a dyn u4; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/iter.rs:142:38 [INFO] [stdout] | [INFO] [stdout] 142 | fn next(&mut self) -> Option<&'a u4> { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 142 - fn next(&mut self) -> Option<&'a u4> { [INFO] [stdout] 142 + fn next(&mut self) -> Option<&'a dyn u4> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/iter.rs:163:43 [INFO] [stdout] | [INFO] [stdout] 163 | fn next_back(&mut self) -> Option<&'a u4> { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 163 - fn next_back(&mut self) -> Option<&'a u4> { [INFO] [stdout] 163 + fn next_back(&mut self) -> Option<&'a dyn u4> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/iter.rs:212:21 [INFO] [stdout] | [INFO] [stdout] 212 | type Item = &'a U4Cell; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 212 - type Item = &'a U4Cell; [INFO] [stdout] 212 + type Item = &'a dyn U4Cell; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/iter.rs:213:38 [INFO] [stdout] | [INFO] [stdout] 213 | fn next(&mut self) -> Option<&'a U4Cell> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 213 - fn next(&mut self) -> Option<&'a U4Cell> { [INFO] [stdout] 213 + fn next(&mut self) -> Option<&'a dyn U4Cell> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/iter.rs:234:43 [INFO] [stdout] | [INFO] [stdout] 234 | fn next_back(&mut self) -> Option<&'a U4Cell> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 234 - fn next_back(&mut self) -> Option<&'a U4Cell> { [INFO] [stdout] 234 + fn next_back(&mut self) -> Option<&'a dyn U4Cell> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pair.rs:296:26 [INFO] [stdout] | [INFO] [stdout] 296 | fn swap(&self, nib: &U4Cell); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 296 - fn swap(&self, nib: &U4Cell); [INFO] [stdout] 296 + fn swap(&self, nib: &dyn U4Cell); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pair.rs:231:21 [INFO] [stdout] | [INFO] [stdout] 231 | type Item = &'a u4; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 231 - type Item = &'a u4; [INFO] [stdout] 231 + type Item = &'a dyn u4; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pair.rs:232:38 [INFO] [stdout] | [INFO] [stdout] 232 | fn next(&mut self) -> Option<&'a u4> { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 232 - fn next(&mut self) -> Option<&'a u4> { [INFO] [stdout] 232 + fn next(&mut self) -> Option<&'a dyn u4> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pair.rs:240:43 [INFO] [stdout] | [INFO] [stdout] 240 | fn next_back(&mut self) -> Option<&'a u4> { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 240 - fn next_back(&mut self) -> Option<&'a u4> { [INFO] [stdout] 240 + fn next_back(&mut self) -> Option<&'a dyn u4> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pair.rs:257:21 [INFO] [stdout] | [INFO] [stdout] 257 | type Item = &'a U4Cell; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 257 - type Item = &'a U4Cell; [INFO] [stdout] 257 + type Item = &'a dyn U4Cell; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pair.rs:258:38 [INFO] [stdout] | [INFO] [stdout] 258 | fn next(&mut self) -> Option<&'a U4Cell> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 258 - fn next(&mut self) -> Option<&'a U4Cell> { [INFO] [stdout] 258 + fn next(&mut self) -> Option<&'a dyn U4Cell> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pair.rs:266:43 [INFO] [stdout] | [INFO] [stdout] 266 | fn next_back(&mut self) -> Option<&'a U4Cell> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 266 - fn next_back(&mut self) -> Option<&'a U4Cell> { [INFO] [stdout] 266 + fn next_back(&mut self) -> Option<&'a dyn U4Cell> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pair.rs:327:26 [INFO] [stdout] | [INFO] [stdout] 327 | fn swap(&self, nib: &U4Cell) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 327 - fn swap(&self, nib: &U4Cell) { [INFO] [stdout] 327 + fn swap(&self, nib: &dyn U4Cell) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/pair.rs:367:26 [INFO] [stdout] | [INFO] [stdout] 367 | fn swap(&self, nib: &U4Cell) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 367 - fn swap(&self, nib: &U4Cell) { [INFO] [stdout] 367 + fn swap(&self, nib: &dyn U4Cell) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:66:35 [INFO] [stdout] | [INFO] [stdout] 66 | fn get(&self, idx: usize) -> &u4 { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 66 - fn get(&self, idx: usize) -> &u4 { [INFO] [stdout] 66 + fn get(&self, idx: usize) -> &dyn u4 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:160:43 [INFO] [stdout] | [INFO] [stdout] 160 | fn get_mut(&mut self, idx: usize) -> &U4Cell { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 160 - fn get_mut(&mut self, idx: usize) -> &U4Cell { [INFO] [stdout] 160 + fn get_mut(&mut self, idx: usize) -> &dyn U4Cell { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors; 38 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0554`. [INFO] [stdout] [INFO] [stderr] error: could not compile `nibble` due to 3 previous errors; 38 warnings emitted [INFO] running `Command { std: "docker" "inspect" "7fd5dc5388639577f076c68af24475050e01b76f61c1bcd8f005156984b4d6fc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7fd5dc5388639577f076c68af24475050e01b76f61c1bcd8f005156984b4d6fc", kill_on_drop: false }` [INFO] [stdout] 7fd5dc5388639577f076c68af24475050e01b76f61c1bcd8f005156984b4d6fc