[INFO] fetching crate memory_slice 0.1.0-preview3... [INFO] testing memory_slice-0.1.0-preview3 against 1.55.0 for beta-1.56-1 [INFO] extracting crate memory_slice 0.1.0-preview3 into /workspace/builds/worker-54/source [INFO] validating manifest of crates.io crate memory_slice 0.1.0-preview3 on toolchain 1.55.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.55.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate memory_slice 0.1.0-preview3 [INFO] finished tweaking crates.io crate memory_slice 0.1.0-preview3 [INFO] tweaked toml for crates.io crate memory_slice 0.1.0-preview3 written to /workspace/builds/worker-54/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.55.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.55.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-54/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-54/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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+1.55.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3df6ce926e2ea46e9e43ff4ab2b4551227ac83c6eb46e320dec88e43146072a6 [INFO] running `Command { std: "docker" "start" "-a" "3df6ce926e2ea46e9e43ff4ab2b4551227ac83c6eb46e320dec88e43146072a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3df6ce926e2ea46e9e43ff4ab2b4551227ac83c6eb46e320dec88e43146072a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3df6ce926e2ea46e9e43ff4ab2b4551227ac83c6eb46e320dec88e43146072a6", kill_on_drop: false }` [INFO] [stdout] 3df6ce926e2ea46e9e43ff4ab2b4551227ac83c6eb46e320dec88e43146072a6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-54/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-54/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+1.55.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2bf814abfd942a0d9121a7ac8f1fb598e1fbc0e2904a670597fd51556f508fcc [INFO] running `Command { std: "docker" "start" "-a" "2bf814abfd942a0d9121a7ac8f1fb598e1fbc0e2904a670597fd51556f508fcc", kill_on_drop: false }` [INFO] [stderr] Compiling syn v1.0.76 [INFO] [stderr] Compiling contracts v0.6.2 [INFO] [stderr] Compiling memory_slice v0.1.0-preview3 (/opt/rustwide/workdir) [INFO] [stdout] error[E0495]: cannot infer an appropriate lifetime for autoref due to conflicting requirements [INFO] [stdout] --> src/lib.rs:223:32 [INFO] [stdout] | [INFO] [stdout] 223 | let (l,r) = self.inner.split_at(mid); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: first, the lifetime cannot outlive the anonymous lifetime #1 defined on the body at 217:5... [INFO] [stdout] --> src/lib.rs:217:5 [INFO] [stdout] | [INFO] [stdout] 217 | #[test_ensures(self.len() == ret.0.len() + ret.1.len())] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...so that reference does not outlive borrowed content [INFO] [stdout] --> src/lib.rs:217:5 [INFO] [stdout] | [INFO] [stdout] 217 | #[test_ensures(self.len() == ret.0.len() + ret.1.len())] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: but, the lifetime must be valid for the anonymous lifetime defined on the method body at 222:21... [INFO] [stdout] --> src/lib.rs:222:21 [INFO] [stdout] | [INFO] [stdout] 222 | pub fn split_at(&self, mid: usize) -> (&Self, &Self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] note: ...so that the expression is assignable [INFO] [stdout] --> src/lib.rs:217:5 [INFO] [stdout] | [INFO] [stdout] 217 | #[test_ensures(self.len() == ret.0.len() + ret.1.len())] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: expected `(&Memory, &Memory)` [INFO] [stdout] found `(&Memory, &Memory)` [INFO] [stdout] = note: this error originates in the attribute macro `test_ensures` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0495]: cannot infer an appropriate lifetime for autoref due to conflicting requirements [INFO] [stdout] --> src/lib.rs:333:32 [INFO] [stdout] | [INFO] [stdout] 333 | let (pad, rest) = self.split_at(s0); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: first, the lifetime cannot outlive the anonymous lifetime #1 defined on the body at 315:5... [INFO] [stdout] --> src/lib.rs:315:5 [INFO] [stdout] | [INFO] [stdout] 315 | #[test_ensures(ret.0.len() src/lib.rs:315:5 [INFO] [stdout] | [INFO] [stdout] 315 | #[test_ensures(ret.0.len() src/lib.rs:331:22 [INFO] [stdout] | [INFO] [stdout] 331 | pub fn align_for(&self, layout: Layout) -> (&Self, &Self, &Self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] note: ...so that the expression is assignable [INFO] [stdout] --> src/lib.rs:315:5 [INFO] [stdout] | [INFO] [stdout] 315 | #[test_ensures(ret.0.len() src/lib.rs:348:14 [INFO] [stdout] | [INFO] [stdout] 348 | self.align_for(unsafe { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: first, the lifetime cannot outlive the anonymous lifetime #1 defined on the body at 338:5... [INFO] [stdout] --> src/lib.rs:338:5 [INFO] [stdout] | [INFO] [stdout] 338 | #[test_ensures(ret.1.len()())] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: ...so that reference does not outlive borrowed content [INFO] [stdout] --> src/lib.rs:338:5 [INFO] [stdout] | [INFO] [stdout] 338 | #[test_ensures(ret.1.len()())] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: but, the lifetime must be valid for the anonymous lifetime defined on the method body at 347:30... [INFO] [stdout] --> src/lib.rs:347:30 [INFO] [stdout] | [INFO] [stdout] 347 | pub fn align_for_type(&self) -> (&Self, &Self, &Self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] note: ...so that the expression is assignable [INFO] [stdout] --> src/lib.rs:338:5 [INFO] [stdout] | [INFO] [stdout] 338 | #[test_ensures(ret.1.len()())] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: expected `(&Memory, &Memory, &Memory)` [INFO] [stdout] found `(&Memory, &Memory, &Memory)` [INFO] [stdout] = note: this error originates in the attribute macro `test_ensures` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0495]: cannot infer an appropriate lifetime for autoref due to conflicting requirements [INFO] [stdout] --> src/lib.rs:363:14 [INFO] [stdout] | [INFO] [stdout] 363 | self.align_for(Layout::for_value(v)) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: first, the lifetime cannot outlive the anonymous lifetime #1 defined on the body at 353:5... [INFO] [stdout] --> src/lib.rs:353:5 [INFO] [stdout] | [INFO] [stdout] 353 | #[test_ensures(ret.1.len() src/lib.rs:353:5 [INFO] [stdout] | [INFO] [stdout] 353 | #[test_ensures(ret.1.len() src/lib.rs:362:37 [INFO] [stdout] | [INFO] [stdout] 362 | pub fn align_for_val(&self, v: &T) -> (&Self, &Self, &Self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] note: ...so that the expression is assignable [INFO] [stdout] --> src/lib.rs:353:5 [INFO] [stdout] | [INFO] [stdout] 353 | #[test_ensures(ret.1.len()