[INFO] fetching crate efficient_enum 0.3.1... [INFO] testing efficient_enum-0.3.1 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-1 [INFO] extracting crate efficient_enum 0.3.1 into /workspace/builds/worker-7-tc2/source [INFO] started tweaking crates.io crate efficient_enum 0.3.1 [INFO] finished tweaking crates.io crate efficient_enum 0.3.1 [INFO] tweaked toml for crates.io crate efficient_enum 0.3.1 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate efficient_enum 0.3.1 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] efd8dbdf6aac5f417bf688d7093e48759b13f33352341fce2ae1166031e2463c [INFO] running `Command { std: "docker" "start" "-a" "efd8dbdf6aac5f417bf688d7093e48759b13f33352341fce2ae1166031e2463c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "efd8dbdf6aac5f417bf688d7093e48759b13f33352341fce2ae1166031e2463c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "efd8dbdf6aac5f417bf688d7093e48759b13f33352341fce2ae1166031e2463c", kill_on_drop: false }` [INFO] [stdout] efd8dbdf6aac5f417bf688d7093e48759b13f33352341fce2ae1166031e2463c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c951644a4bb40c1d5ded098a379722f9cac643117f0fdbc8d83c5963f428fd11 [INFO] running `Command { std: "docker" "start" "-a" "c951644a4bb40c1d5ded098a379722f9cac643117f0fdbc8d83c5963f428fd11", kill_on_drop: false }` [INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024` [INFO] [stderr] Compiling efficient_enum v0.3.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/tag.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | use std::mem::{size_of, uninitialized}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/option.rs:3:24 [INFO] [stdout] | [INFO] [stdout] 3 | use std::mem::{replace,uninitialized}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/option.rs:143:26 [INFO] [stdout] | [INFO] [stdout] 143 | let b = unsafe { uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/option.rs:651:46 [INFO] [stdout] | [INFO] [stdout] 651 | let b = self.ref_1().map_or(unsafe { uninitialized() }, Clone::clone); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/option.rs:743:26 [INFO] [stdout] | [INFO] [stdout] 743 | let b = unsafe { uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 57 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 60 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:69:5 [INFO] [stdout] | [INFO] [stdout] 69 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:76:5 [INFO] [stdout] | [INFO] [stdout] 76 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:85:5 [INFO] [stdout] | [INFO] [stdout] 85 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:90:5 [INFO] [stdout] | [INFO] [stdout] 90 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `u8` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `u16` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `u32` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `u64` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `usize` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:243:18 [INFO] [stdout] | [INFO] [stdout] 243 | pub fn inner(&mut self) -> EfficientOptionInner { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 243 | pub fn inner(&mut self) -> EfficientOptionInner<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:254:30 [INFO] [stdout] | [INFO] [stdout] 254 | pub unsafe fn inner_some(&mut self) -> EfficientOptionInnerSome { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 254 | pub unsafe fn inner_some(&mut self) -> EfficientOptionInnerSome<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:261:30 [INFO] [stdout] | [INFO] [stdout] 261 | pub unsafe fn inner_none(&mut self) -> EfficientOptionInnerNone { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 261 | pub unsafe fn inner_none(&mut self) -> EfficientOptionInnerNone<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:811:18 [INFO] [stdout] | [INFO] [stdout] 811 | pub fn inner(&mut self) -> EfficientOptionTupleInner { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 811 | pub fn inner(&mut self) -> EfficientOptionTupleInner<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:822:30 [INFO] [stdout] | [INFO] [stdout] 822 | pub unsafe fn inner_some(&mut self) -> EfficientOptionTupleInnerSome { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 822 | pub unsafe fn inner_some(&mut self) -> EfficientOptionTupleInnerSome<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:829:30 [INFO] [stdout] | [INFO] [stdout] 829 | pub unsafe fn inner_none(&mut self) -> EfficientOptionTupleInnerNone { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 829 | pub unsafe fn inner_none(&mut self) -> EfficientOptionTupleInnerNone<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.25s [INFO] running `Command { std: "docker" "inspect" "c951644a4bb40c1d5ded098a379722f9cac643117f0fdbc8d83c5963f428fd11", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c951644a4bb40c1d5ded098a379722f9cac643117f0fdbc8d83c5963f428fd11", kill_on_drop: false }` [INFO] [stdout] c951644a4bb40c1d5ded098a379722f9cac643117f0fdbc8d83c5963f428fd11 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] bfe57549d85bb94e043cf7a55c3099d78d16c16692857113434160ba9c4a73f5 [INFO] running `Command { std: "docker" "start" "-a" "bfe57549d85bb94e043cf7a55c3099d78d16c16692857113434160ba9c4a73f5", kill_on_drop: false }` [INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024` [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/tag.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | use std::mem::{size_of, uninitialized}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/option.rs:3:24 [INFO] [stdout] | [INFO] [stdout] 3 | use std::mem::{replace,uninitialized}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/option.rs:143:26 [INFO] [stdout] | [INFO] [stdout] 143 | let b = unsafe { uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/option.rs:651:46 [INFO] [stdout] | [INFO] [stdout] 651 | let b = self.ref_1().map_or(unsafe { uninitialized() }, Clone::clone); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/option.rs:743:26 [INFO] [stdout] | [INFO] [stdout] 743 | let b = unsafe { uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 57 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 60 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:69:5 [INFO] [stdout] | [INFO] [stdout] 69 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:76:5 [INFO] [stdout] | [INFO] [stdout] 76 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:85:5 [INFO] [stdout] | [INFO] [stdout] 85 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:90:5 [INFO] [stdout] | [INFO] [stdout] 90 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `u8` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling efficient_enum v0.3.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: the type `u16` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `u32` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `u64` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `usize` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:243:18 [INFO] [stdout] | [INFO] [stdout] 243 | pub fn inner(&mut self) -> EfficientOptionInner { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 243 | pub fn inner(&mut self) -> EfficientOptionInner<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:254:30 [INFO] [stdout] | [INFO] [stdout] 254 | pub unsafe fn inner_some(&mut self) -> EfficientOptionInnerSome { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 254 | pub unsafe fn inner_some(&mut self) -> EfficientOptionInnerSome<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:261:30 [INFO] [stdout] | [INFO] [stdout] 261 | pub unsafe fn inner_none(&mut self) -> EfficientOptionInnerNone { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 261 | pub unsafe fn inner_none(&mut self) -> EfficientOptionInnerNone<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:811:18 [INFO] [stdout] | [INFO] [stdout] 811 | pub fn inner(&mut self) -> EfficientOptionTupleInner { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 811 | pub fn inner(&mut self) -> EfficientOptionTupleInner<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:822:30 [INFO] [stdout] | [INFO] [stdout] 822 | pub unsafe fn inner_some(&mut self) -> EfficientOptionTupleInnerSome { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 822 | pub unsafe fn inner_some(&mut self) -> EfficientOptionTupleInnerSome<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:829:30 [INFO] [stdout] | [INFO] [stdout] 829 | pub unsafe fn inner_none(&mut self) -> EfficientOptionTupleInnerNone { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 829 | pub unsafe fn inner_none(&mut self) -> EfficientOptionTupleInnerNone<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/tag.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | use std::mem::{size_of, uninitialized}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/option.rs:3:24 [INFO] [stdout] | [INFO] [stdout] 3 | use std::mem::{replace,uninitialized}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/option.rs:143:26 [INFO] [stdout] | [INFO] [stdout] 143 | let b = unsafe { uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/option.rs:651:46 [INFO] [stdout] | [INFO] [stdout] 651 | let b = self.ref_1().map_or(unsafe { uninitialized() }, Clone::clone); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/option.rs:743:26 [INFO] [stdout] | [INFO] [stdout] 743 | let b = unsafe { uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 57 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 60 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:69:5 [INFO] [stdout] | [INFO] [stdout] 69 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:76:5 [INFO] [stdout] | [INFO] [stdout] 76 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:85:5 [INFO] [stdout] | [INFO] [stdout] 85 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stdout] --> src/tag.rs:90:5 [INFO] [stdout] | [INFO] [stdout] 90 | #[inline] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `u8` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `u16` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `u32` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `u64` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `usize` does not permit being left uninitialized [INFO] [stdout] --> src/tag.rs:205:23 [INFO] [stdout] | [INFO] [stdout] 205 | Self::tag(uninitialized(), o) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] ... [INFO] [stdout] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:243:18 [INFO] [stdout] | [INFO] [stdout] 243 | pub fn inner(&mut self) -> EfficientOptionInner { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 243 | pub fn inner(&mut self) -> EfficientOptionInner<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:254:30 [INFO] [stdout] | [INFO] [stdout] 254 | pub unsafe fn inner_some(&mut self) -> EfficientOptionInnerSome { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 254 | pub unsafe fn inner_some(&mut self) -> EfficientOptionInnerSome<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:261:30 [INFO] [stdout] | [INFO] [stdout] 261 | pub unsafe fn inner_none(&mut self) -> EfficientOptionInnerNone { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 261 | pub unsafe fn inner_none(&mut self) -> EfficientOptionInnerNone<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:811:18 [INFO] [stdout] | [INFO] [stdout] 811 | pub fn inner(&mut self) -> EfficientOptionTupleInner { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 811 | pub fn inner(&mut self) -> EfficientOptionTupleInner<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:822:30 [INFO] [stdout] | [INFO] [stdout] 822 | pub unsafe fn inner_some(&mut self) -> EfficientOptionTupleInnerSome { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 822 | pub unsafe fn inner_some(&mut self) -> EfficientOptionTupleInnerSome<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/option.rs:829:30 [INFO] [stdout] | [INFO] [stdout] 829 | pub unsafe fn inner_none(&mut self) -> EfficientOptionTupleInnerNone { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 829 | pub unsafe fn inner_none(&mut self) -> EfficientOptionTupleInnerNone<'_, A, B, TM> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.66s [INFO] running `Command { std: "docker" "inspect" "bfe57549d85bb94e043cf7a55c3099d78d16c16692857113434160ba9c4a73f5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bfe57549d85bb94e043cf7a55c3099d78d16c16692857113434160ba9c4a73f5", kill_on_drop: false }` [INFO] [stdout] bfe57549d85bb94e043cf7a55c3099d78d16c16692857113434160ba9c4a73f5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 4c713a2c111a6b697d11e151629ea8b3c4c67a0d6b9f11be50212b1d695d9c95 [INFO] running `Command { std: "docker" "start" "-a" "4c713a2c111a6b697d11e151629ea8b3c4c67a0d6b9f11be50212b1d695d9c95", kill_on_drop: false }` [INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024` [INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stderr] --> src/tag.rs:4:25 [INFO] [stderr] | [INFO] [stderr] 4 | use std::mem::{size_of, uninitialized}; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stderr] --> src/tag.rs:205:23 [INFO] [stderr] | [INFO] [stderr] 205 | Self::tag(uninitialized(), o) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stderr] | ------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stderr] --> src/option.rs:3:24 [INFO] [stderr] | [INFO] [stderr] 3 | use std::mem::{replace,uninitialized}; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stderr] --> src/option.rs:143:26 [INFO] [stderr] | [INFO] [stderr] 143 | let b = unsafe { uninitialized() }; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stderr] --> src/option.rs:651:46 [INFO] [stderr] | [INFO] [stderr] 651 | let b = self.ref_1().map_or(unsafe { uninitialized() }, Clone::clone); [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stderr] --> src/option.rs:743:26 [INFO] [stderr] | [INFO] [stderr] 743 | let b = unsafe { uninitialized() }; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stderr] --> src/tag.rs:57:5 [INFO] [stderr] | [INFO] [stderr] 57 | #[inline] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stderr] = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stderr] --> src/tag.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 60 | #[inline] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stderr] --> src/tag.rs:63:5 [INFO] [stderr] | [INFO] [stderr] 63 | #[inline] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stderr] --> src/tag.rs:66:5 [INFO] [stderr] | [INFO] [stderr] 66 | #[inline] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stderr] --> src/tag.rs:69:5 [INFO] [stderr] | [INFO] [stderr] 69 | #[inline] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stderr] --> src/tag.rs:72:5 [INFO] [stderr] | [INFO] [stderr] 72 | #[inline] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stderr] --> src/tag.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | #[inline] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stderr] --> src/tag.rs:80:5 [INFO] [stderr] | [INFO] [stderr] 80 | #[inline] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stderr] --> src/tag.rs:85:5 [INFO] [stderr] | [INFO] [stderr] 85 | #[inline] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stderr] [INFO] [stderr] warning: `#[inline]` attribute cannot be used on required trait methods [INFO] [stderr] --> src/tag.rs:90:5 [INFO] [stderr] | [INFO] [stderr] 90 | #[inline] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks [INFO] [stderr] [INFO] [stderr] warning: the type `u8` does not permit being left uninitialized [INFO] [stderr] --> src/tag.rs:205:23 [INFO] [stderr] | [INFO] [stderr] 205 | Self::tag(uninitialized(), o) [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] ... [INFO] [stderr] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stderr] | ------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: integers must be initialized [INFO] [stderr] = note: `#[warn(invalid_value)]` on by default [INFO] [stderr] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: the type `u16` does not permit being left uninitialized [INFO] [stderr] --> src/tag.rs:205:23 [INFO] [stderr] | [INFO] [stderr] 205 | Self::tag(uninitialized(), o) [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] ... [INFO] [stderr] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stderr] | ------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: integers must be initialized [INFO] [stderr] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: the type `u32` does not permit being left uninitialized [INFO] [stderr] --> src/tag.rs:205:23 [INFO] [stderr] | [INFO] [stderr] 205 | Self::tag(uninitialized(), o) [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] ... [INFO] [stderr] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stderr] | ------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: integers must be initialized [INFO] [stderr] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: the type `u64` does not permit being left uninitialized [INFO] [stderr] --> src/tag.rs:205:23 [INFO] [stderr] | [INFO] [stderr] 205 | Self::tag(uninitialized(), o) [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] ... [INFO] [stderr] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stderr] | ------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: integers must be initialized [INFO] [stderr] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: the type `usize` does not permit being left uninitialized [INFO] [stderr] --> src/tag.rs:205:23 [INFO] [stderr] | [INFO] [stderr] 205 | Self::tag(uninitialized(), o) [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] ... [INFO] [stderr] 222 | tag_msb!{u8 u16 u32 u64 usize} [INFO] [stderr] | ------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: integers must be initialized [INFO] [stderr] = note: this warning originates in the macro `tag_msb` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/option.rs:243:18 [INFO] [stderr] | [INFO] [stderr] 243 | pub fn inner(&mut self) -> EfficientOptionInner { [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 243 | pub fn inner(&mut self) -> EfficientOptionInner<'_, A, B, TM> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/option.rs:254:30 [INFO] [stderr] | [INFO] [stderr] 254 | pub unsafe fn inner_some(&mut self) -> EfficientOptionInnerSome { [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 254 | pub unsafe fn inner_some(&mut self) -> EfficientOptionInnerSome<'_, A, B, TM> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/option.rs:261:30 [INFO] [stderr] | [INFO] [stderr] 261 | pub unsafe fn inner_none(&mut self) -> EfficientOptionInnerNone { [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 261 | pub unsafe fn inner_none(&mut self) -> EfficientOptionInnerNone<'_, A, B, TM> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/option.rs:811:18 [INFO] [stderr] | [INFO] [stderr] 811 | pub fn inner(&mut self) -> EfficientOptionTupleInner { [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 811 | pub fn inner(&mut self) -> EfficientOptionTupleInner<'_, A, B, TM> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/option.rs:822:30 [INFO] [stderr] | [INFO] [stderr] 822 | pub unsafe fn inner_some(&mut self) -> EfficientOptionTupleInnerSome { [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 822 | pub unsafe fn inner_some(&mut self) -> EfficientOptionTupleInnerSome<'_, A, B, TM> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/option.rs:829:30 [INFO] [stderr] | [INFO] [stderr] 829 | pub unsafe fn inner_none(&mut self) -> EfficientOptionTupleInnerNone { [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 829 | pub unsafe fn inner_none(&mut self) -> EfficientOptionTupleInnerNone<'_, A, B, TM> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: `efficient_enum` (lib) generated 27 warnings (run `cargo fix --lib -p efficient_enum` to apply 16 suggestions) [INFO] [stderr] warning: `efficient_enum` (lib test) generated 27 warnings (27 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/efficient_enum-2047cc00e0c11db3) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test option::tests::test_option_new ... ok [INFO] [stdout] test option::tests::test_option_mut ... ok [INFO] [stdout] test option::tests::test_option_tuple_as_mut ... ok [INFO] [stdout] test option::tests::test_option_tuple_new ... ok [INFO] [stdout] test option::tests::test_option_tuple_mut ... ok [INFO] [stdout] test option::tests::test_option_simple ... ok [INFO] [stdout] test option::tests::test_option_tuple_simple ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Doc-tests efficient_enum [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "4c713a2c111a6b697d11e151629ea8b3c4c67a0d6b9f11be50212b1d695d9c95", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4c713a2c111a6b697d11e151629ea8b3c4c67a0d6b9f11be50212b1d695d9c95", kill_on_drop: false }` [INFO] [stdout] 4c713a2c111a6b697d11e151629ea8b3c4c67a0d6b9f11be50212b1d695d9c95