[INFO] fetching crate allocator_api 0.6.0...
[INFO] checking allocator_api-0.6.0 against a5689b034ad287112f709693384a37f1377eb9cc for pr-129249-3
[INFO] extracting crate allocator_api 0.6.0 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate allocator_api 0.6.0
[INFO] finished tweaking crates.io crate allocator_api 0.6.0
[INFO] tweaked toml for crates.io crate allocator_api 0.6.0 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate allocator_api 0.6.0 on toolchain a5689b034ad287112f709693384a37f1377eb9cc
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "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" "+a5689b034ad287112f709693384a37f1377eb9cc" "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" "+a5689b034ad287112f709693384a37f1377eb9cc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 5d870cbe014b9c00e9caebe153c2577081c68117631415e43cbee5b67f2ce9ea
[INFO] running `Command { std: "docker" "start" "5d870cbe014b9c00e9caebe153c2577081c68117631415e43cbee5b67f2ce9ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5d870cbe014b9c00e9caebe153c2577081c68117631415e43cbee5b67f2ce9ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5d870cbe014b9c00e9caebe153c2577081c68117631415e43cbee5b67f2ce9ea" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5d870cbe014b9c00e9caebe153c2577081c68117631415e43cbee5b67f2ce9ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5d870cbe014b9c00e9caebe153c2577081c68117631415e43cbee5b67f2ce9ea" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking allocator_api v0.6.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/liballoc/boxed.rs:25:1
[INFO] [stdout]    |
[INFO] [stdout] 25 | /// A pointer type for heap allocation.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/liballoc/raw_vec.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | / /// A low-level utility for more ergonomically allocating, reallocating, and deallocating
[INFO] [stdout] 16 | | /// a buffer of memory on the heap without having to worry about all the corner cases
[INFO] [stdout] 17 | | /// involved. This type is excellent for building your own data structures like Vec and VecDeque.
[INFO] [stdout] 18 | | /// In particular:
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | | /// field. This allows zero-sized types to not be special-cased by consumers of
[INFO] [stdout] 41 | | /// this type.
[INFO] [stdout]    | |_-------------^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `allow` attribute cannot be used on macro calls
[INFO] [stdout]   --> src/liballoc/raw_vec.rs:42:3
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[allow(missing_debug_implementations)]
[INFO] [stdout]    |   ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the `allow` attribute can be applied to associated consts, associated types, break expressions, const parameters, constants, crates, data types, enum variants, extern crates, for loops, foreign modules, foreign statics, function params, functions, global asms, impl blocks, lifetime parameters, loops, macro defs, match arms, modules, pattern fields, statics, struct fields, trait aliases, traits, type aliases, type parameters, use statements, and while loops
[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]    = note: placing this attribute on a macro invocation does nothing even if the macro expands to what would be a valid target for the attribute
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::alloc::*`
[INFO] [stdout]    --> src/liballoc/raw_vec.rs:764:17
[INFO] [stdout]     |
[INFO] [stdout] 764 |         pub use crate::alloc::*;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `core::usize`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/libcore/alloc.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | use core::usize;
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]   --> src/libcore/alloc.rs:14:31
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use core::alloc::{Layout, LayoutErr};
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]   --> src/libcore/alloc.rs:24:19
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn layouterr() -> LayoutErr {
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]   --> src/libcore/alloc.rs:19:57
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn repeat(&self, n: usize) -> Result<(Self, usize), LayoutErr>;
[INFO] [stdout]    |                                                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]   --> src/libcore/alloc.rs:21:43
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fn array<T>(n: usize) -> Result<Self, LayoutErr>;
[INFO] [stdout]    |                                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]   --> src/libcore/alloc.rs:87:57
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn repeat(&self, n: usize) -> Result<(Self, usize), LayoutErr> {
[INFO] [stdout]    |                                                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]    --> src/libcore/alloc.rs:103:43
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn array<T>(n: usize) -> Result<Self, LayoutErr> {
[INFO] [stdout]     |                                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]  --> src/liballoc/collections/mod.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::alloc::{AllocErr, LayoutErr};
[INFO] [stdout]   |                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]   --> src/liballoc/collections/mod.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl From<LayoutErr> for CollectionAllocErr {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]   --> src/liballoc/collections/mod.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn from(_: LayoutErr) -> Self {
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `core::isize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/liballoc/raw_vec.rs:746:65
[INFO] [stdout]     |
[INFO] [stdout] 746 |     if mem::size_of::<usize>() < 8 && alloc_size > core::isize::MAX as usize {
[INFO] [stdout]     |                                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/liballoc/boxed.rs:25:1
[INFO] [stdout]    |
[INFO] [stdout] 25 | /// A pointer type for heap allocation.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/liballoc/raw_vec.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | / /// A low-level utility for more ergonomically allocating, reallocating, and deallocating
[INFO] [stdout] 16 | | /// a buffer of memory on the heap without having to worry about all the corner cases
[INFO] [stdout] 17 | | /// involved. This type is excellent for building your own data structures like Vec and VecDeque.
[INFO] [stdout] 18 | | /// In particular:
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | | /// field. This allows zero-sized types to not be special-cased by consumers of
[INFO] [stdout] 41 | | /// this type.
[INFO] [stdout]    | |_-------------^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `allow` attribute cannot be used on macro calls
[INFO] [stdout]   --> src/liballoc/raw_vec.rs:42:3
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[allow(missing_debug_implementations)]
[INFO] [stdout]    |   ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the `allow` attribute can be applied to associated consts, associated types, break expressions, const parameters, constants, crates, data types, enum variants, extern crates, for loops, foreign modules, foreign statics, function params, functions, global asms, impl blocks, lifetime parameters, loops, macro defs, match arms, modules, pattern fields, statics, struct fields, trait aliases, traits, type aliases, type parameters, use statements, and while loops
[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]    = note: placing this attribute on a macro invocation does nothing even if the macro expands to what would be a valid target for the attribute
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `core::usize`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/libcore/alloc.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | use core::usize;
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]   --> src/libcore/alloc.rs:14:31
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use core::alloc::{Layout, LayoutErr};
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]   --> src/libcore/alloc.rs:24:19
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn layouterr() -> LayoutErr {
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]   --> src/libcore/alloc.rs:19:57
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn repeat(&self, n: usize) -> Result<(Self, usize), LayoutErr>;
[INFO] [stdout]    |                                                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]   --> src/libcore/alloc.rs:21:43
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fn array<T>(n: usize) -> Result<Self, LayoutErr>;
[INFO] [stdout]    |                                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]   --> src/libcore/alloc.rs:87:57
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn repeat(&self, n: usize) -> Result<(Self, usize), LayoutErr> {
[INFO] [stdout]    |                                                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]    --> src/libcore/alloc.rs:103:43
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn array<T>(n: usize) -> Result<Self, LayoutErr> {
[INFO] [stdout]     |                                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]  --> src/liballoc/collections/mod.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::alloc::{AllocErr, LayoutErr};
[INFO] [stdout]   |                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]   --> src/liballoc/collections/mod.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl From<LayoutErr> for CollectionAllocErr {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `core::alloc::LayoutErr`: Name does not follow std convention, use LayoutError
[INFO] [stdout]   --> src/liballoc/collections/mod.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn from(_: LayoutErr) -> Self {
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `core::isize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/liballoc/raw_vec.rs:746:65
[INFO] [stdout]     |
[INFO] [stdout] 746 |     if mem::size_of::<usize>() < 8 && alloc_size > core::isize::MAX as usize {
[INFO] [stdout]     |                                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `core::ptr::NonNull<T>`
[INFO] [stdout]    --> src/liballoc/raw_vec.rs:108:22
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 ptr: ptr.into(),
[INFO] [stdout]     |                      ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 108 -                 ptr: ptr.into(),
[INFO] [stdout] 108 +                 ptr: ptr,
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 108 -                 ptr: ptr.into(),
[INFO] [stdout] 108 +                 ptr: <core::ptr::NonNull<T> as Into<_>>::into(ptr),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `core::ptr::NonNull<T>`
[INFO] [stdout]    --> src/liballoc/raw_vec.rs:322:46
[INFO] [stdout]     |
[INFO] [stdout] 322 |                         Ok(ptr) => (new_cap, ptr.cast().into()),
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 322 -                         Ok(ptr) => (new_cap, ptr.cast().into()),
[INFO] [stdout] 322 +                         Ok(ptr) => (new_cap, ptr.cast()),
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 322 -                         Ok(ptr) => (new_cap, ptr.cast().into()),
[INFO] [stdout] 322 +                         Ok(ptr) => (new_cap, <core::ptr::NonNull<T> as Into<_>>::into(ptr.cast())),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `core::ptr::NonNull<T>`
[INFO] [stdout]    --> src/liballoc/raw_vec.rs:333:46
[INFO] [stdout]     |
[INFO] [stdout] 333 |                         Ok(ptr) => (new_cap, ptr.into()),
[INFO] [stdout]     |                                              ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 333 -                         Ok(ptr) => (new_cap, ptr.into()),
[INFO] [stdout] 333 +                         Ok(ptr) => (new_cap, ptr),
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 333 -                         Ok(ptr) => (new_cap, ptr.into()),
[INFO] [stdout] 333 +                         Ok(ptr) => (new_cap, <core::ptr::NonNull<T> as Into<_>>::into(ptr)),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `core::ptr::NonNull<T>`
[INFO] [stdout]    --> src/liballoc/raw_vec.rs:617:41
[INFO] [stdout]     |
[INFO] [stdout] 617 |                     Ok(p) => self.ptr = p.cast().into(),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 617 -                     Ok(p) => self.ptr = p.cast().into(),
[INFO] [stdout] 617 +                     Ok(p) => self.ptr = p.cast(),
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 617 -                     Ok(p) => self.ptr = p.cast().into(),
[INFO] [stdout] 617 +                     Ok(p) => self.ptr = <core::ptr::NonNull<T> as Into<_>>::into(p.cast()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `core::ptr::NonNull<T>`
[INFO] [stdout]    --> src/liballoc/raw_vec.rs:686:24
[INFO] [stdout]     |
[INFO] [stdout] 686 |             self.ptr = res?.cast().into();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 686 -             self.ptr = res?.cast().into();
[INFO] [stdout] 686 +             self.ptr = res?.cast();
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 686 -             self.ptr = res?.cast().into();
[INFO] [stdout] 686 +             self.ptr = <core::ptr::NonNull<T> as Into<_>>::into(res?.cast());
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `core::alloc::Layout`
[INFO] [stdout]   --> src/lib.rs:63:32
[INFO] [stdout]    |
[INFO] [stdout] 63 |             NonNull::new(alloc(layout.into())).ok_or(AllocErr)
[INFO] [stdout]    |                                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 63 -             NonNull::new(alloc(layout.into())).ok_or(AllocErr)
[INFO] [stdout] 63 +             NonNull::new(alloc(layout)).ok_or(AllocErr)
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 63 -             NonNull::new(alloc(layout.into())).ok_or(AllocErr)
[INFO] [stdout] 63 +             NonNull::new(alloc(<core::alloc::Layout as Into<_>>::into(layout))).ok_or(AllocErr)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `core::alloc::Layout`
[INFO] [stdout]   --> src/lib.rs:67:35
[INFO] [stdout]    |
[INFO] [stdout] 67 |             dealloc(ptr.as_ptr(), layout.into())
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 67 -             dealloc(ptr.as_ptr(), layout.into())
[INFO] [stdout] 67 +             dealloc(ptr.as_ptr(), layout)
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 67 -             dealloc(ptr.as_ptr(), layout.into())
[INFO] [stdout] 67 +             dealloc(ptr.as_ptr(), <core::alloc::Layout as Into<_>>::into(layout))
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `core::alloc::Layout`
[INFO] [stdout]   --> src/lib.rs:74:48
[INFO] [stdout]    |
[INFO] [stdout] 74 |             NonNull::new(realloc(ptr.as_ptr(), layout.into(), new_size)).ok_or(AllocErr)
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 74 -             NonNull::new(realloc(ptr.as_ptr(), layout.into(), new_size)).ok_or(AllocErr)
[INFO] [stdout] 74 +             NonNull::new(realloc(ptr.as_ptr(), layout, new_size)).ok_or(AllocErr)
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 74 -             NonNull::new(realloc(ptr.as_ptr(), layout.into(), new_size)).ok_or(AllocErr)
[INFO] [stdout] 74 +             NonNull::new(realloc(ptr.as_ptr(), <core::alloc::Layout as Into<_>>::into(layout), new_size)).ok_or(AllocErr)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `core::alloc::Layout`
[INFO] [stdout]   --> src/lib.rs:78:39
[INFO] [stdout]    |
[INFO] [stdout] 78 |             NonNull::new(alloc_zeroed(layout.into())).ok_or(AllocErr)
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 78 -             NonNull::new(alloc_zeroed(layout.into())).ok_or(AllocErr)
[INFO] [stdout] 78 +             NonNull::new(alloc_zeroed(layout)).ok_or(AllocErr)
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 78 -             NonNull::new(alloc_zeroed(layout.into())).ok_or(AllocErr)
[INFO] [stdout] 78 +             NonNull::new(alloc_zeroed(<core::alloc::Layout as Into<_>>::into(layout))).ok_or(AllocErr)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `allocator_api` (lib test) due to 9 previous errors; 15 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: useless conversion to the same type: `NonNull<T>`
[INFO] [stdout]    --> src/liballoc/raw_vec.rs:108:22
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 ptr: ptr.into(),
[INFO] [stdout]     |                      ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 108 -                 ptr: ptr.into(),
[INFO] [stdout] 108 +                 ptr: ptr,
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 108 -                 ptr: ptr.into(),
[INFO] [stdout] 108 +                 ptr: <NonNull<T> as Into<_>>::into(ptr),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `NonNull<T>`
[INFO] [stdout]    --> src/liballoc/raw_vec.rs:322:46
[INFO] [stdout]     |
[INFO] [stdout] 322 |                         Ok(ptr) => (new_cap, ptr.cast().into()),
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 322 -                         Ok(ptr) => (new_cap, ptr.cast().into()),
[INFO] [stdout] 322 +                         Ok(ptr) => (new_cap, ptr.cast()),
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 322 -                         Ok(ptr) => (new_cap, ptr.cast().into()),
[INFO] [stdout] 322 +                         Ok(ptr) => (new_cap, <NonNull<T> as Into<_>>::into(ptr.cast())),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `NonNull<T>`
[INFO] [stdout]    --> src/liballoc/raw_vec.rs:333:46
[INFO] [stdout]     |
[INFO] [stdout] 333 |                         Ok(ptr) => (new_cap, ptr.into()),
[INFO] [stdout]     |                                              ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 333 -                         Ok(ptr) => (new_cap, ptr.into()),
[INFO] [stdout] 333 +                         Ok(ptr) => (new_cap, ptr),
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 333 -                         Ok(ptr) => (new_cap, ptr.into()),
[INFO] [stdout] 333 +                         Ok(ptr) => (new_cap, <NonNull<T> as Into<_>>::into(ptr)),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `NonNull<T>`
[INFO] [stdout]    --> src/liballoc/raw_vec.rs:617:41
[INFO] [stdout]     |
[INFO] [stdout] 617 |                     Ok(p) => self.ptr = p.cast().into(),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 617 -                     Ok(p) => self.ptr = p.cast().into(),
[INFO] [stdout] 617 +                     Ok(p) => self.ptr = p.cast(),
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 617 -                     Ok(p) => self.ptr = p.cast().into(),
[INFO] [stdout] 617 +                     Ok(p) => self.ptr = <NonNull<T> as Into<_>>::into(p.cast()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `NonNull<T>`
[INFO] [stdout]    --> src/liballoc/raw_vec.rs:686:24
[INFO] [stdout]     |
[INFO] [stdout] 686 |             self.ptr = res?.cast().into();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 686 -             self.ptr = res?.cast().into();
[INFO] [stdout] 686 +             self.ptr = res?.cast();
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 686 -             self.ptr = res?.cast().into();
[INFO] [stdout] 686 +             self.ptr = <NonNull<T> as Into<_>>::into(res?.cast());
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `core::alloc::Layout`
[INFO] [stdout]   --> src/lib.rs:63:32
[INFO] [stdout]    |
[INFO] [stdout] 63 |             NonNull::new(alloc(layout.into())).ok_or(AllocErr)
[INFO] [stdout]    |                                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 63 -             NonNull::new(alloc(layout.into())).ok_or(AllocErr)
[INFO] [stdout] 63 +             NonNull::new(alloc(layout)).ok_or(AllocErr)
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 63 -             NonNull::new(alloc(layout.into())).ok_or(AllocErr)
[INFO] [stdout] 63 +             NonNull::new(alloc(<core::alloc::Layout as Into<_>>::into(layout))).ok_or(AllocErr)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `core::alloc::Layout`
[INFO] [stdout]   --> src/lib.rs:67:35
[INFO] [stdout]    |
[INFO] [stdout] 67 |             dealloc(ptr.as_ptr(), layout.into())
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 67 -             dealloc(ptr.as_ptr(), layout.into())
[INFO] [stdout] 67 +             dealloc(ptr.as_ptr(), layout)
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 67 -             dealloc(ptr.as_ptr(), layout.into())
[INFO] [stdout] 67 +             dealloc(ptr.as_ptr(), <core::alloc::Layout as Into<_>>::into(layout))
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `core::alloc::Layout`
[INFO] [stdout]   --> src/lib.rs:74:48
[INFO] [stdout]    |
[INFO] [stdout] 74 |             NonNull::new(realloc(ptr.as_ptr(), layout.into(), new_size)).ok_or(AllocErr)
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 74 -             NonNull::new(realloc(ptr.as_ptr(), layout.into(), new_size)).ok_or(AllocErr)
[INFO] [stdout] 74 +             NonNull::new(realloc(ptr.as_ptr(), layout, new_size)).ok_or(AllocErr)
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 74 -             NonNull::new(realloc(ptr.as_ptr(), layout.into(), new_size)).ok_or(AllocErr)
[INFO] [stdout] 74 +             NonNull::new(realloc(ptr.as_ptr(), <core::alloc::Layout as Into<_>>::into(layout), new_size)).ok_or(AllocErr)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `core::alloc::Layout`
[INFO] [stdout]   --> src/lib.rs:78:39
[INFO] [stdout]    |
[INFO] [stdout] 78 |             NonNull::new(alloc_zeroed(layout.into())).ok_or(AllocErr)
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 78 -             NonNull::new(alloc_zeroed(layout.into())).ok_or(AllocErr)
[INFO] [stdout] 78 +             NonNull::new(alloc_zeroed(layout)).ok_or(AllocErr)
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 78 -             NonNull::new(alloc_zeroed(layout.into())).ok_or(AllocErr)
[INFO] [stdout] 78 +             NonNull::new(alloc_zeroed(<core::alloc::Layout as Into<_>>::into(layout))).ok_or(AllocErr)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `allocator_api` (lib) due to 9 previous errors; 14 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "5d870cbe014b9c00e9caebe153c2577081c68117631415e43cbee5b67f2ce9ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5d870cbe014b9c00e9caebe153c2577081c68117631415e43cbee5b67f2ce9ea", kill_on_drop: false }`
[INFO] [stdout] 5d870cbe014b9c00e9caebe153c2577081c68117631415e43cbee5b67f2ce9ea
