[INFO] fetching crate projecture 0.0.4...
[INFO] testing projecture-0.0.4 against nightly-2024-10-28 for randomize-layout
[INFO] extracting crate projecture 0.0.4 into /workspace/builds/worker-1-tc1/source
[INFO] validating manifest of crates.io crate projecture 0.0.4 on toolchain nightly-2024-10-28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate projecture 0.0.4
[INFO] finished tweaking crates.io crate projecture 0.0.4
[INFO] tweaked toml for crates.io crate projecture 0.0.4 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 23 packages to latest compatible versions
[INFO] [stderr]       Adding atomic v0.5.3 (available: v0.6.0)
[INFO] [stderr]       Adding macro_rules_attribute v0.1.3 (available: v0.2.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 94d443e2fb3363c8dbebffce1a2fb718dd338e607cf6b0478763948d04f416bd
[INFO] running `Command { std: "docker" "start" "-a" "94d443e2fb3363c8dbebffce1a2fb718dd338e607cf6b0478763948d04f416bd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "94d443e2fb3363c8dbebffce1a2fb718dd338e607cf6b0478763948d04f416bd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "94d443e2fb3363c8dbebffce1a2fb718dd338e607cf6b0478763948d04f416bd", kill_on_drop: false }`
[INFO] [stdout] 94d443e2fb3363c8dbebffce1a2fb718dd338e607cf6b0478763948d04f416bd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3ca47b9f60b193b6eae441a7f5223ca174ef5af3c5f1e2ee9c1e005b517936d2
[INFO] running `Command { std: "docker" "start" "-a" "3ca47b9f60b193b6eae441a7f5223ca174ef5af3c5f1e2ee9c1e005b517936d2", kill_on_drop: false }`
[INFO] [stderr]    Compiling projecture v0.0.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `UnsafeCell`
[INFO] [stdout]   --> src/lib.rs:13:24
[INFO] [stdout]    |
[INFO] [stdout] 13 | use core::cell::{Cell, UnsafeCell};
[INFO] [stdout]    |                        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `null_mut`
[INFO] [stdout]   --> src/lib.rs:20:32
[INFO] [stdout]    |
[INFO] [stdout] 20 | use core::ptr::{drop_in_place, null_mut, NonNull};
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `impl_pin`
[INFO] [stdout]   --> src/pin.rs:18:14
[INFO] [stdout]    |
[INFO] [stdout] 18 | macro_rules! impl_pin {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DropLeftovers` and `project`
[INFO] [stdout]  --> src/generic.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     project, CustomWrapper, DropLeftovers, Marker, Owned, OwningMarker, Projectable,
[INFO] [stdout]   |     ^^^^^^^                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `align_of` and `size_of`
[INFO] [stdout]  --> src/generic.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use core::mem::{align_of, size_of, transmute_copy, ManuallyDrop};
[INFO] [stdout]   |                 ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DerefMut`
[INFO] [stdout]  --> src/generic.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::ops::{Deref, DerefMut};
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deref`
[INFO] [stdout]  --> src/generic.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::ops::{Deref, DerefMut};
[INFO] [stdout]   |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/generic.rs:197:76
[INFO] [stdout]     |
[INFO] [stdout] 197 |     unsafe fn drop_leftovers(_self: ManuallyDrop<GenericPointer<X, Self>>, idx: Idx) {}
[INFO] [stdout]     |                                                                            ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/generic.rs:205:9
[INFO] [stdout]     |
[INFO] [stdout] 205 |         idx: DerefOperation,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/generic.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |         idx: DerefOperation,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:418:19
[INFO] [stdout]     |
[INFO] [stdout] 418 |         let ptr = unsafe { &**self.0 } as *const _ as _;
[INFO] [stdout]     |                   ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]     --> src/lib.rs:1256:32
[INFO] [stdout]      |
[INFO] [stdout] 1256 | pub struct OwningMarker<'a, T>(&'a mut ManuallyDrop<T>);
[INFO] [stdout]      |            ------------        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |            |
[INFO] [stdout]      |            field in this struct
[INFO] [stdout]      |
[INFO] [stdout]      = help: consider removing this field
[INFO] [stdout]      = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/pin.rs:183:29
[INFO] [stdout]     |
[INFO] [stdout] 183 | pub struct PinnedMarker<'a>(&'a (), PhantomPinned);
[INFO] [stdout]     |            ------------     ^^^^^^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            field in this struct
[INFO] [stdout]     |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 183 | pub struct PinnedMarker<'a>((), PhantomPinned);
[INFO] [stdout]     |                             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.11s
[INFO] running `Command { std: "docker" "inspect" "3ca47b9f60b193b6eae441a7f5223ca174ef5af3c5f1e2ee9c1e005b517936d2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3ca47b9f60b193b6eae441a7f5223ca174ef5af3c5f1e2ee9c1e005b517936d2", kill_on_drop: false }`
[INFO] [stdout] 3ca47b9f60b193b6eae441a7f5223ca174ef5af3c5f1e2ee9c1e005b517936d2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a9d39a41bdb9759554a534bcd7b4694a921b1b4a6260ffb4cfda5845e1b0d02c
[INFO] running `Command { std: "docker" "start" "-a" "a9d39a41bdb9759554a534bcd7b4694a921b1b4a6260ffb4cfda5845e1b0d02c", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `UnsafeCell`
[INFO] [stdout]   --> src/lib.rs:13:24
[INFO] [stdout]    |
[INFO] [stdout] 13 | use core::cell::{Cell, UnsafeCell};
[INFO] [stdout]    |                        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `null_mut`
[INFO] [stdout]   --> src/lib.rs:20:32
[INFO] [stdout]    |
[INFO] [stdout] 20 | use core::ptr::{drop_in_place, null_mut, NonNull};
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `impl_pin`
[INFO] [stdout]   --> src/pin.rs:18:14
[INFO] [stdout]    |
[INFO] [stdout] 18 | macro_rules! impl_pin {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DropLeftovers` and `project`
[INFO] [stdout]  --> src/generic.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     project, CustomWrapper, DropLeftovers, Marker, Owned, OwningMarker, Projectable,
[INFO] [stdout]   |     ^^^^^^^                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `align_of` and `size_of`
[INFO] [stdout]  --> src/generic.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use core::mem::{align_of, size_of, transmute_copy, ManuallyDrop};
[INFO] [stdout]   |                 ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DerefMut`
[INFO] [stdout]  --> src/generic.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::ops::{Deref, DerefMut};
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deref`
[INFO] [stdout]  --> src/generic.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::ops::{Deref, DerefMut};
[INFO] [stdout]   |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/generic.rs:197:76
[INFO] [stdout]     |
[INFO] [stdout] 197 |     unsafe fn drop_leftovers(_self: ManuallyDrop<GenericPointer<X, Self>>, idx: Idx) {}
[INFO] [stdout]     |                                                                            ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/generic.rs:205:9
[INFO] [stdout]     |
[INFO] [stdout] 205 |         idx: DerefOperation,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/generic.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |         idx: DerefOperation,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:418:19
[INFO] [stdout]     |
[INFO] [stdout] 418 |         let ptr = unsafe { &**self.0 } as *const _ as _;
[INFO] [stdout]     |                   ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]     --> src/lib.rs:1256:32
[INFO] [stdout]      |
[INFO] [stdout] 1256 | pub struct OwningMarker<'a, T>(&'a mut ManuallyDrop<T>);
[INFO] [stdout]      |            ------------        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |            |
[INFO] [stdout]      |            field in this struct
[INFO] [stdout]      |
[INFO] [stdout]      = help: consider removing this field
[INFO] [stdout]      = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/pin.rs:183:29
[INFO] [stdout]     |
[INFO] [stdout] 183 | pub struct PinnedMarker<'a>(&'a (), PhantomPinned);
[INFO] [stdout]     |            ------------     ^^^^^^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            field in this struct
[INFO] [stdout]     |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 183 | pub struct PinnedMarker<'a>((), PhantomPinned);
[INFO] [stdout]     |                             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling projecture v0.0.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `UnsafeCell`
[INFO] [stdout]   --> src/lib.rs:13:24
[INFO] [stdout]    |
[INFO] [stdout] 13 | use core::cell::{Cell, UnsafeCell};
[INFO] [stdout]    |                        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `null_mut`
[INFO] [stdout]   --> src/lib.rs:20:32
[INFO] [stdout]    |
[INFO] [stdout] 20 | use core::ptr::{drop_in_place, null_mut, NonNull};
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `impl_pin`
[INFO] [stdout]   --> src/pin.rs:18:14
[INFO] [stdout]    |
[INFO] [stdout] 18 | macro_rules! impl_pin {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DropLeftovers` and `project`
[INFO] [stdout]  --> src/generic.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     project, CustomWrapper, DropLeftovers, Marker, Owned, OwningMarker, Projectable,
[INFO] [stdout]   |     ^^^^^^^                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `align_of` and `size_of`
[INFO] [stdout]  --> src/generic.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use core::mem::{align_of, size_of, transmute_copy, ManuallyDrop};
[INFO] [stdout]   |                 ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DerefMut` and `Deref`
[INFO] [stdout]  --> src/generic.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::ops::{Deref, DerefMut};
[INFO] [stdout]   |                 ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OptionMarker`
[INFO] [stdout]  --> tests/tests.rs:2:44
[INFO] [stdout]   |
[INFO] [stdout] 2 | use projecture::{pin_projectable, project, OptionMarker};
[INFO] [stdout]   |                                            ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]  --> tests/tests.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::fmt::Debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `unaligned_references` has been removed: converted into hard error, see issue #82523 <https://github.com/rust-lang/rust/issues/82523> for more information
[INFO] [stdout]   --> tests/tests.rs:82:18
[INFO] [stdout]    |
[INFO] [stdout] 82 |         #[forbid(unaligned_references)]
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e1`
[INFO] [stdout]   --> tests/tests.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |         let e1: &mut usize = e1;
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_e1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e2`
[INFO] [stdout]   --> tests/tests.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |         let e2: &mut usize = e2;
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_e2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]   --> tests/tests.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let d: Pin<&mut PhantomPinned> = d;
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> tests/tests.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let x: &mut usize = project!((&mut *arg) -> a -> e);
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> tests/tests.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |         let x: Pin<&mut PhantomPinned> = project!((&mut *arg) -> c -> d);
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> tests/tests.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let x = project!((&*arg) -> b -> e);
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/generic.rs:197:76
[INFO] [stdout]     |
[INFO] [stdout] 197 |     unsafe fn drop_leftovers(_self: ManuallyDrop<GenericPointer<X, Self>>, idx: Idx) {}
[INFO] [stdout]     |                                                                            ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/generic.rs:205:9
[INFO] [stdout]     |
[INFO] [stdout] 205 |         idx: DerefOperation,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/generic.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |         idx: DerefOperation,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:418:19
[INFO] [stdout]     |
[INFO] [stdout] 418 |         let ptr = unsafe { &**self.0 } as *const _ as _;
[INFO] [stdout]     |                   ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> tests/tests.rs:107:9
[INFO] [stdout]     |
[INFO] [stdout] 107 |     let x: Option<Box<usize>> = x;
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> tests/tests.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let mut arg = Some(Foo::default());
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]     --> src/lib.rs:1256:32
[INFO] [stdout]      |
[INFO] [stdout] 1256 | pub struct OwningMarker<'a, T>(&'a mut ManuallyDrop<T>);
[INFO] [stdout]      |            ------------        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |            |
[INFO] [stdout]      |            field in this struct
[INFO] [stdout]      |
[INFO] [stdout]      = help: consider removing this field
[INFO] [stdout]      = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/pin.rs:183:29
[INFO] [stdout]     |
[INFO] [stdout] 183 | pub struct PinnedMarker<'a>(&'a (), PhantomPinned);
[INFO] [stdout]     |            ------------     ^^^^^^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            field in this struct
[INFO] [stdout]     |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 183 | pub struct PinnedMarker<'a>((), PhantomPinned);
[INFO] [stdout]     |                             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `d` is never read
[INFO] [stdout]   --> tests/tests.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     struct Foo {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |         d: PhantomPinned,
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `y` and `p` are never read
[INFO] [stdout]   --> tests/tests.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |     struct Foo {
[INFO] [stdout]    |            --- fields in this struct
[INFO] [stdout] 61 |         x: Box<usize>,
[INFO] [stdout] 62 |         y: usize,
[INFO] [stdout]    |         ^
[INFO] [stdout] 63 |         p: PhantomPinned,
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Foo` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.28s
[INFO] running `Command { std: "docker" "inspect" "a9d39a41bdb9759554a534bcd7b4694a921b1b4a6260ffb4cfda5845e1b0d02c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a9d39a41bdb9759554a534bcd7b4694a921b1b4a6260ffb4cfda5845e1b0d02c", kill_on_drop: false }`
[INFO] [stdout] a9d39a41bdb9759554a534bcd7b4694a921b1b4a6260ffb4cfda5845e1b0d02c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 3c38b9d60ffdd958f721fb2d04477d3ebb45cd1560f49c4122c2214cddcd2072
[INFO] running `Command { std: "docker" "start" "-a" "3c38b9d60ffdd958f721fb2d04477d3ebb45cd1560f49c4122c2214cddcd2072", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `UnsafeCell`
[INFO] [stderr]   --> src/lib.rs:13:24
[INFO] [stderr]    |
[INFO] [stderr] 13 | use core::cell::{Cell, UnsafeCell};
[INFO] [stderr]    |                        ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `null_mut`
[INFO] [stderr]   --> src/lib.rs:20:32
[INFO] [stderr]    |
[INFO] [stderr] 20 | use core::ptr::{drop_in_place, null_mut, NonNull};
[INFO] [stderr]    |                                ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused macro definition: `impl_pin`
[INFO] [stderr]   --> src/pin.rs:18:14
[INFO] [stderr]    |
[INFO] [stderr] 18 | macro_rules! impl_pin {
[INFO] [stderr]    |              ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DropLeftovers` and `project`
[INFO] [stderr]  --> src/generic.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 |     project, CustomWrapper, DropLeftovers, Marker, Owned, OwningMarker, Projectable,
[INFO] [stderr]   |     ^^^^^^^                 ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `align_of` and `size_of`
[INFO] [stderr]  --> src/generic.rs:7:17
[INFO] [stderr]   |
[INFO] [stderr] 7 | use core::mem::{align_of, size_of, transmute_copy, ManuallyDrop};
[INFO] [stderr]   |                 ^^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `DerefMut`
[INFO] [stderr]  --> src/generic.rs:8:24
[INFO] [stderr]   |
[INFO] [stderr] 8 | use core::ops::{Deref, DerefMut};
[INFO] [stderr]   |                        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Deref`
[INFO] [stderr]  --> src/generic.rs:8:17
[INFO] [stderr]   |
[INFO] [stderr] 8 | use core::ops::{Deref, DerefMut};
[INFO] [stderr]   |                 ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `idx`
[INFO] [stderr]    --> src/generic.rs:197:76
[INFO] [stderr]     |
[INFO] [stderr] 197 |     unsafe fn drop_leftovers(_self: ManuallyDrop<GenericPointer<X, Self>>, idx: Idx) {}
[INFO] [stderr]     |                                                                            ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `idx`
[INFO] [stderr]    --> src/generic.rs:205:9
[INFO] [stderr]     |
[INFO] [stderr] 205 |         idx: DerefOperation,
[INFO] [stderr]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `idx`
[INFO] [stderr]    --> src/generic.rs:218:9
[INFO] [stderr]     |
[INFO] [stderr] 218 |         idx: DerefOperation,
[INFO] [stderr]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/lib.rs:418:19
[INFO] [stderr]     |
[INFO] [stderr] 418 |         let ptr = unsafe { &**self.0 } as *const _ as _;
[INFO] [stderr]     |                   ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]     --> src/lib.rs:1256:32
[INFO] [stderr]      |
[INFO] [stderr] 1256 | pub struct OwningMarker<'a, T>(&'a mut ManuallyDrop<T>);
[INFO] [stderr]      |            ------------        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |            |
[INFO] [stderr]      |            field in this struct
[INFO] [stderr]      |
[INFO] [stderr]      = help: consider removing this field
[INFO] [stderr]      = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> src/pin.rs:183:29
[INFO] [stderr]     |
[INFO] [stderr] 183 | pub struct PinnedMarker<'a>(&'a (), PhantomPinned);
[INFO] [stderr]     |            ------------     ^^^^^^
[INFO] [stderr]     |            |
[INFO] [stderr]     |            field in this struct
[INFO] [stderr]     |
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]     |
[INFO] [stderr] 183 | pub struct PinnedMarker<'a>((), PhantomPinned);
[INFO] [stderr]     |                             ~~
[INFO] [stderr] 
[INFO] [stderr] warning: `projecture` (lib) generated 13 warnings (run `cargo fix --lib -p projecture` to apply 4 suggestions)
[INFO] [stderr] warning: unused import: `OptionMarker`
[INFO] [stderr]  --> tests/tests.rs:2:44
[INFO] [stderr]   |
[INFO] [stderr] 2 | use projecture::{pin_projectable, project, OptionMarker};
[INFO] [stderr]   |                                            ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fmt::Debug`
[INFO] [stderr]  --> tests/tests.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::fmt::Debug;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lint `unaligned_references` has been removed: converted into hard error, see issue #82523 <https://github.com/rust-lang/rust/issues/82523> for more information
[INFO] [stderr]   --> tests/tests.rs:82:18
[INFO] [stderr]    |
[INFO] [stderr] 82 |         #[forbid(unaligned_references)]
[INFO] [stderr]    |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e1`
[INFO] [stderr]   --> tests/tests.rs:31:13
[INFO] [stderr]    |
[INFO] [stderr] 31 |         let e1: &mut usize = e1;
[INFO] [stderr]    |             ^^ help: if this is intentional, prefix it with an underscore: `_e1`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e2`
[INFO] [stderr]   --> tests/tests.rs:32:13
[INFO] [stderr]    |
[INFO] [stderr] 32 |         let e2: &mut usize = e2;
[INFO] [stderr]    |             ^^ help: if this is intentional, prefix it with an underscore: `_e2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `d`
[INFO] [stderr]   --> tests/tests.rs:33:13
[INFO] [stderr]    |
[INFO] [stderr] 33 |         let d: Pin<&mut PhantomPinned> = d;
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `x`
[INFO] [stderr]   --> tests/tests.rs:35:13
[INFO] [stderr]    |
[INFO] [stderr] 35 |         let x: &mut usize = project!((&mut *arg) -> a -> e);
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `x`
[INFO] [stderr]   --> tests/tests.rs:37:13
[INFO] [stderr]    |
[INFO] [stderr] 37 |         let x: Pin<&mut PhantomPinned> = project!((&mut *arg) -> c -> d);
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `x`
[INFO] [stderr]   --> tests/tests.rs:38:13
[INFO] [stderr]    |
[INFO] [stderr] 38 |         let x = project!((&*arg) -> b -> e);
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `x`
[INFO] [stderr]    --> tests/tests.rs:107:9
[INFO] [stderr]     |
[INFO] [stderr] 107 |     let x: Option<Box<usize>> = x;
[INFO] [stderr]     |         ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/tests.rs:65:9
[INFO] [stderr]    |
[INFO] [stderr] 65 |     let mut arg = Some(Foo::default());
[INFO] [stderr]    |         ----^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `d` is never read
[INFO] [stderr]   --> tests/tests.rs:17:9
[INFO] [stderr]    |
[INFO] [stderr] 13 |     struct Foo {
[INFO] [stderr]    |            --- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 17 |         d: PhantomPinned,
[INFO] [stderr]    |         ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `y` and `p` are never read
[INFO] [stderr]   --> tests/tests.rs:62:9
[INFO] [stderr]    |
[INFO] [stderr] 60 |     struct Foo {
[INFO] [stderr]    |            --- fields in this struct
[INFO] [stderr] 61 |         x: Box<usize>,
[INFO] [stderr] 62 |         y: usize,
[INFO] [stderr]    |         ^
[INFO] [stderr] 63 |         p: PhantomPinned,
[INFO] [stderr]    |         ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Foo` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DerefMut` and `Deref`
[INFO] [stderr]  --> src/generic.rs:8:17
[INFO] [stderr]   |
[INFO] [stderr] 8 | use core::ops::{Deref, DerefMut};
[INFO] [stderr]   |                 ^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `projecture` (test "tests") generated 13 warnings (run `cargo fix --test "tests"` to apply 3 suggestions)
[INFO] [stderr] warning: `projecture` (lib test) generated 12 warnings (11 duplicates) (run `cargo fix --lib -p projecture --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.01s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/projecture-78dccc1fc53df667)
[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] [stderr]      Running tests/tests.rs (/opt/rustwide/target/debug/deps/tests-19c52729bfcbceac)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test test_nested ... ok
[INFO] [stdout] test test_tmp ... ok
[INFO] [stdout] test test_packed_destructuring ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests projecture
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test src/lib.rs - not_packed (line 1077) - compile fail ... ok
[INFO] [stdout] test src/pin.rs - pin::PinProjectable (line 270) ... FAILED
[INFO] [stdout] test src/lib.rs - not_packed (line 1065) - compile fail ... ok
[INFO] [stdout] test src/lib.rs - project (line 816) ... FAILED
[INFO] [stdout] test src/lib.rs - not_packed (line 1085) - compile fail ... ok
[INFO] [stdout] test src/lib.rs - project (line 839) ... FAILED
[INFO] [stdout] test src/pin.rs - pin::pin_projectable (line 215) ... ok
[INFO] [stdout] test src/lib.rs - project (line 799) ... ok
[INFO] [stdout] test src/lib.rs - project (line 865) ... ok
[INFO] [stdout] test src/lib.rs - project (line 881) ... ok
[INFO] [stdout] test src/generic.rs - generic::GenericPointer (line 12) ... ok
[INFO] [stdout] test src/lib.rs - project (line 754) ... ok
[INFO] [stdout] test src/../README.md - (line 36) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/pin.rs - pin::PinProjectable (line 270) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `macro_rules_attribute`
[INFO] [stdout]  --> src/pin.rs:273:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use macro_rules_attribute::derive;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `macro_rules_attribute`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - project (line 816) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `macro_rules_attribute`
[INFO] [stdout]  --> src/lib.rs:821:7
[INFO] [stdout]   |
[INFO] [stdout] 8 |     #[macro_rules_attribute::derive(PinProjectable!)]
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `macro_rules_attribute`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_raw` found for reference `&&&&&&&Pin<Helper<&mut _doctest_main_src_lib_rs_816_0::Foo<T, U, V>>>` in the current scope
[INFO] [stdout]   --> src/lib.rs:831:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         project!(let Foo{ a,b,c,d,e } = foo);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `&&&&&&&Pin<Helper<&mut Foo<T, U, V>>>`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `get_raw`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Projectable`
[INFO] [stdout]    = note: this error originates in the macro `project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - project (line 839) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `macro_rules_attribute`
[INFO] [stdout]  --> src/lib.rs:844:3
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[macro_rules_attribute::derive(Default,PinProjectable!)]
[INFO] [stdout]   |   ^^^^^^^^^^^^^^^^^^^^^ use of undeclared crate or module `macro_rules_attribute`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `default` found for struct `_doctest_main_src_lib_rs_839_0::Foo` in the current scope
[INFO] [stdout]   --> src/lib.rs:850:25
[INFO] [stdout]    |
[INFO] [stdout] 9  | struct Foo{
[INFO] [stdout]    | ---------- function or associated item `default` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 | let mut arg = Some(Foo::default());
[INFO] [stdout]    |                         ^^^^^^^ function or associated item not found in `Foo`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `default`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `Default`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/../README.md - (line 36) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `atomic`
[INFO] [stdout]  --> src/../README.md:42:8
[INFO] [stdout]   |
[INFO] [stdout] 9 |    use atomic::Atomic;
[INFO] [stdout]   |        ^^^^^^ use of undeclared crate or module `atomic`
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `deref_raw` exists for reference `&&&&&&&Owned<Rc<Cell<Bar>>>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> src/../README.md:57:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | /         project!(
[INFO] [stdout] 25 | |         let Foo {
[INFO] [stdout] 26 | |             a: Bar (e, ..),
[INFO] [stdout] 27 | |             b: *Bar{ 0: cell },
[INFO] [stdout] 28 | |             c: *Bar (_, f) ,
[INFO] [stdout] 29 | |             d: Bar(atomic, ..),
[INFO] [stdout] 30 | |         } = arg);
[INFO] [stdout]    | |________________^
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/lib.rs:53:1
[INFO] [stdout]    |
[INFO] [stdout] 53 |   pub struct Owned<T>(ManuallyDrop<T>);
[INFO] [stdout]    |   ------------------- doesn't satisfy `projecture::Owned<Rc<Cell<Bar>>>: DerefProjectable`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `Rc<Cell<Bar>>: DerefOwned`
[INFO] [stdout]            which is required by `projecture::Owned<Rc<Cell<Bar>>>: DerefProjectable`
[INFO] [stdout]    = note: this error originates in the macro `$crate::project_deref` which comes from the expansion of the macro `project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `deref_raw` found for reference `&&&&&&&Pin<Box<Bar>>` in the current scope
[INFO] [stdout]   --> src/../README.md:57:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | /         project!(
[INFO] [stdout] 25 | |         let Foo {
[INFO] [stdout] 26 | |             a: Bar (e, ..),
[INFO] [stdout] 27 | |             b: *Bar{ 0: cell },
[INFO] [stdout] 28 | |             c: *Bar (_, f) ,
[INFO] [stdout] 29 | |             d: Bar(atomic, ..),
[INFO] [stdout] 30 | |         } = arg);
[INFO] [stdout]    | |________________^
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the following trait defines an item `deref_raw`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `DerefProjectable`
[INFO] [stdout]    = note: this error originates in the macro `$crate::project_deref` which comes from the expansion of the macro `project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: there is a method `deref` with a similar name
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:1014:28
[INFO] [stdout]    |
[INFO] [stdout] 101|             (&&&&&&& *var).deref()
[INFO] [stdout]    |                            ~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/../README.md:57:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | /         project!(
[INFO] [stdout] 25 | |         let Foo {
[INFO] [stdout] 26 | |             a: Bar (e, ..),
[INFO] [stdout] 27 | |             b: *Bar{ 0: cell },
[INFO] [stdout] 28 | |             c: *Bar (_, f) ,
[INFO] [stdout] 29 | |             d: Bar(atomic, ..),
[INFO] [stdout] 30 | |         } = arg);
[INFO] [stdout]    | |________________^ cannot infer type
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::project_field_inner` which comes from the expansion of the macro `project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/../README.md:64:25
[INFO] [stdout]    |
[INFO] [stdout] 31 |         let _: &usize = e;
[INFO] [stdout]    |                ------   ^ expected `&usize`, found `usize`
[INFO] [stdout]    |                |
[INFO] [stdout]    |                expected due to this
[INFO] [stdout]    |
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]    |
[INFO] [stdout] 31 |         let _: &usize = &e;
[INFO] [stdout]    |                         +
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `a` on type `Infallible`
[INFO] [stdout]   --> src/../README.md:69:41
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let _: &usize = project!(arg -> a -> 0);
[INFO] [stdout]    |                                         ^ unknown field
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/../README.md:69:25
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let _: &usize = project!(arg -> a -> 0);
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::project_field_inner` which comes from the expansion of the macro `project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/../README.md:69:25
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let _: &usize = project!(arg -> a -> 0);
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::project` which comes from the expansion of the macro `project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `b` on type `Infallible`
[INFO] [stdout]   --> src/../README.md:70:47
[INFO] [stdout]    |
[INFO] [stdout] 37 |         let _: &Cell<usize> = project!(arg -> b -> 0);
[INFO] [stdout]    |                                               ^ unknown field
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/../README.md:70:31
[INFO] [stdout]    |
[INFO] [stdout] 37 |         let _: &Cell<usize> = project!(arg -> b -> 0);
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::project_field_inner` which comes from the expansion of the macro `project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/../README.md:70:31
[INFO] [stdout]    |
[INFO] [stdout] 37 |         let _: &Cell<usize> = project!(arg -> b -> 0);
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::project` which comes from the expansion of the macro `project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `c` on type `Infallible`
[INFO] [stdout]   --> src/../README.md:71:55
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let _: Pin<& PhantomPinned> = project!(arg -> c -> 1);
[INFO] [stdout]    |                                                       ^ unknown field
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/../README.md:71:39
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let _: Pin<& PhantomPinned> = project!(arg -> c -> 1);
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::project_field_inner` which comes from the expansion of the macro `project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/../README.md:71:39
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let _: Pin<& PhantomPinned> = project!(arg -> c -> 1);
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::project` which comes from the expansion of the macro `project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `d` on type `Infallible`
[INFO] [stdout]   --> src/../README.md:72:49
[INFO] [stdout]    |
[INFO] [stdout] 39 |         let _: &Atomic<usize> = project!(arg -> d -> 0);
[INFO] [stdout]    |                                                 ^ unknown field
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/../README.md:72:33
[INFO] [stdout]    |
[INFO] [stdout] 39 |         let _: &Atomic<usize> = project!(arg -> d -> 0);
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::project_field_inner` which comes from the expansion of the macro `project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/../README.md:72:33
[INFO] [stdout]    |
[INFO] [stdout] 39 |         let _: &Atomic<usize> = project!(arg -> d -> 0);
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `$crate::project` which comes from the expansion of the macro `project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 17 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0308, E0432, E0599, E0609.
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/../README.md - (line 36)
[INFO] [stdout]     src/lib.rs - project (line 816)
[INFO] [stdout]     src/lib.rs - project (line 839)
[INFO] [stdout]     src/pin.rs - pin::PinProjectable (line 270)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 9 passed; 4 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.23s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "3c38b9d60ffdd958f721fb2d04477d3ebb45cd1560f49c4122c2214cddcd2072", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3c38b9d60ffdd958f721fb2d04477d3ebb45cd1560f49c4122c2214cddcd2072", kill_on_drop: false }`
[INFO] [stdout] 3c38b9d60ffdd958f721fb2d04477d3ebb45cd1560f49c4122c2214cddcd2072
