[INFO] fetching crate selfie 0.0.3... [INFO] testing selfie-0.0.3 against try#2440211fe03bc45c89b6dc1a3df18382ce91e32b for pr-146098-1 [INFO] extracting crate selfie 0.0.3 into /workspace/builds/worker-6-tc2/source [INFO] started tweaking crates.io crate selfie 0.0.3 [INFO] finished tweaking crates.io crate selfie 0.0.3 [INFO] tweaked toml for crates.io crate selfie 0.0.3 written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate selfie 0.0.3 on toolchain 2440211fe03bc45c89b6dc1a3df18382ce91e32b [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "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" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 20 packages to latest compatible versions [INFO] [stderr] Adding trybuild v1.0.63 (available: v1.0.111) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e2b6882f529ac4a32fbdc2e4abcaff662acf52bf6ec1431e53d52647eff8af25 [INFO] running `Command { std: "docker" "start" "-a" "e2b6882f529ac4a32fbdc2e4abcaff662acf52bf6ec1431e53d52647eff8af25", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e2b6882f529ac4a32fbdc2e4abcaff662acf52bf6ec1431e53d52647eff8af25", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e2b6882f529ac4a32fbdc2e4abcaff662acf52bf6ec1431e53d52647eff8af25", kill_on_drop: false }` [INFO] [stdout] e2b6882f529ac4a32fbdc2e4abcaff662acf52bf6ec1431e53d52647eff8af25 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c09d1c2a541c15171e059d3d1288a8dad119bb45f6a4e2089920d64957267469 [INFO] running `Command { std: "docker" "start" "-a" "c09d1c2a541c15171e059d3d1288a8dad119bb45f6a4e2089920d64957267469", kill_on_drop: false }` [INFO] [stderr] Compiling stable_deref_trait v1.2.0 [INFO] [stderr] Compiling selfie v0.0.3 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.22s [INFO] running `Command { std: "docker" "inspect" "c09d1c2a541c15171e059d3d1288a8dad119bb45f6a4e2089920d64957267469", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c09d1c2a541c15171e059d3d1288a8dad119bb45f6a4e2089920d64957267469", kill_on_drop: false }` [INFO] [stdout] c09d1c2a541c15171e059d3d1288a8dad119bb45f6a4e2089920d64957267469 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4894a2caf7e37a4c32bf8f377713e21cf0cdae767f87b51da9df71486e307d16 [INFO] running `Command { std: "docker" "start" "-a" "4894a2caf7e37a4c32bf8f377713e21cf0cdae767f87b51da9df71486e307d16", kill_on_drop: false }` [INFO] [stderr] Compiling trybuild v1.0.63 [INFO] [stderr] Compiling glob v0.3.3 [INFO] [stderr] Compiling termcolor v1.4.1 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling toml v0.5.11 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling selfie v0.0.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> tests/simple_ref.rs:121:26 [INFO] [stdout] | [INFO] [stdout] 121 | fn all_but_first_char(x: &RefCell) -> Selfie<::core::cell::Ref, Ref> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | | | [INFO] [stdout] | | | the same lifetime is hidden here [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 121 | fn all_but_first_char(x: &RefCell) -> Selfie<'_, ::core::cell::Ref<'_, String>, Ref> { [INFO] [stdout] | +++ +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 8.85s [INFO] running `Command { std: "docker" "inspect" "4894a2caf7e37a4c32bf8f377713e21cf0cdae767f87b51da9df71486e307d16", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4894a2caf7e37a4c32bf8f377713e21cf0cdae767f87b51da9df71486e307d16", kill_on_drop: false }` [INFO] [stdout] 4894a2caf7e37a4c32bf8f377713e21cf0cdae767f87b51da9df71486e307d16 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 84aa6fb2113232c374e5a766e8e347bbee52b8dbf18563064cf8535ca28e2b04 [INFO] running `Command { std: "docker" "start" "-a" "84aa6fb2113232c374e5a766e8e347bbee52b8dbf18563064cf8535ca28e2b04", kill_on_drop: false }` [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> tests/simple_ref.rs:121:26 [INFO] [stderr] | [INFO] [stderr] 121 | fn all_but_first_char(x: &RefCell) -> Selfie<::core::cell::Ref, Ref> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | | | [INFO] [stderr] | | | the same lifetime is hidden here [INFO] [stderr] | | the same lifetime is hidden here [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 121 | fn all_but_first_char(x: &RefCell) -> Selfie<'_, ::core::cell::Ref<'_, String>, Ref> { [INFO] [stderr] | +++ +++ [INFO] [stderr] [INFO] [stderr] warning: `selfie` (test "simple_ref") generated 1 warning (run `cargo fix --test "simple_ref"` to apply 1 suggestion) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/selfie-0845445fce4636c0) [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/cascading.rs (/opt/rustwide/target/debug/deps/cascading-ad35a16621d41a38) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test cascading_mut ... ok [INFO] [stdout] test more_cascading ... ok [INFO] [stderr] Running tests/compile_fail.rs (/opt/rustwide/target/debug/deps/compile_fail-1a1a3ef304a7267b) [INFO] [stdout] test cascading ... 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] [stdout] [INFO] [stdout] running 1 test [INFO] [stderr] warning: `/opt/rustwide/target/tests/selfie/.cargo/config` is deprecated in favor of `config.toml` [INFO] [stderr] note: if you need to support cargo 1.38 or earlier, you can symlink `config` to `config.toml` [INFO] [stderr] Checking stable_deref_trait v1.2.0 [INFO] [stderr] Checking selfie v0.0.3 (/opt/rustwide/workdir) [INFO] [stderr] Checking selfie-tests v0.0.0 (/opt/rustwide/target/tests/selfie) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.37s [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] test tests/compile_fail/circular.rs ... mismatch [INFO] [stderr] [INFO] [stderr] EXPECTED: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error[E0495]: cannot infer an appropriate lifetime due to conflicting requirements [INFO] [stderr] --> tests/compile_fail/circular.rs:21:40 [INFO] [stderr] | [INFO] [stderr] 21 | referential.0.borrow_mut().0 = Some(selfie.with_referential(|r| r)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: first, the lifetime cannot outlive the anonymous lifetime #1 defined here... [INFO] [stderr] --> tests/compile_fail/circular.rs:21:69 [INFO] [stderr] | [INFO] [stderr] 21 | referential.0.borrow_mut().0 = Some(selfie.with_referential(|r| r)); [INFO] [stderr] | ^^^^^ [INFO] [stderr] note: ...so that the type `Bar<'_>` is not borrowed for too long [INFO] [stderr] --> tests/compile_fail/circular.rs:21:45 [INFO] [stderr] | [INFO] [stderr] 21 | referential.0.borrow_mut().0 = Some(selfie.with_referential(|r| r)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] note: but, the lifetime must be valid for the anonymous lifetime #1 defined here... [INFO] [stderr] --> tests/compile_fail/circular.rs:20:29 [INFO] [stderr] | [INFO] [stderr] 20 | selfie.with_referential(|referential| { [INFO] [stderr] | _____________________________^ [INFO] [stderr] 21 | | referential.0.borrow_mut().0 = Some(selfie.with_referential(|r| r)); [INFO] [stderr] 22 | | }); [INFO] [stderr] | |_____^ [INFO] [stderr] note: ...so that the expression is assignable [INFO] [stderr] --> tests/compile_fail/circular.rs:21:40 [INFO] [stderr] | [INFO] [stderr] 21 | referential.0.borrow_mut().0 = Some(selfie.with_referential(|r| r)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: expected `Option<&Bar<'_>>` [INFO] [stderr] found `Option<&Bar<'_>>` [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> tests/compile_fail/circular.rs:21:45 [INFO] [stderr] | [INFO] [stderr] 21 | referential.0.borrow_mut().0 = Some(selfie.with_referential(|r| r)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ lifetime mismatch [INFO] [stderr] | [INFO] [stderr] = note: expected reference `&Bar<'_>` [INFO] [stderr] found reference `&Bar<'_>` [INFO] [stderr] note: the anonymous lifetime #1 defined here... [INFO] [stderr] --> tests/compile_fail/circular.rs:21:69 [INFO] [stderr] | [INFO] [stderr] 21 | referential.0.borrow_mut().0 = Some(selfie.with_referential(|r| r)); [INFO] [stderr] | ^^^^^ [INFO] [stderr] note: ...does not necessarily outlive the anonymous lifetime #1 defined here [INFO] [stderr] --> tests/compile_fail/circular.rs:20:29 [INFO] [stderr] | [INFO] [stderr] 20 | selfie.with_referential(|referential| { [INFO] [stderr] | _____________________________^ [INFO] [stderr] 21 | | referential.0.borrow_mut().0 = Some(selfie.with_referential(|r| r)); [INFO] [stderr] 22 | | }); [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] error[E0308]: mismatched types [INFO] [stderr] --> tests/compile_fail/circular.rs:21:45 [INFO] [stderr] | [INFO] [stderr] 21 | referential.0.borrow_mut().0 = Some(selfie.with_referential(|r| r)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ lifetime mismatch [INFO] [stderr] | [INFO] [stderr] = note: expected reference `&Bar<'_>` [INFO] [stderr] found reference `&Bar<'_>` [INFO] [stderr] note: the anonymous lifetime #1 defined here... [INFO] [stderr] --> tests/compile_fail/circular.rs:20:29 [INFO] [stderr] | [INFO] [stderr] 20 | selfie.with_referential(|referential| { [INFO] [stderr] | _____________________________^ [INFO] [stderr] 21 | | referential.0.borrow_mut().0 = Some(selfie.with_referential(|r| r)); [INFO] [stderr] 22 | | }); [INFO] [stderr] | |_____^ [INFO] [stderr] note: ...does not necessarily outlive the anonymous lifetime #1 defined here [INFO] [stderr] --> tests/compile_fail/circular.rs:21:69 [INFO] [stderr] | [INFO] [stderr] 21 | referential.0.borrow_mut().0 = Some(selfie.with_referential(|r| r)); [INFO] [stderr] | ^^^^^ [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] [INFO] [stderr] ACTUAL OUTPUT: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error[E0597]: `selfie` does not live long enough [INFO] [stderr] --> tests/compile_fail/circular.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 17 | let mut selfie: Selfie, BarRef> = [INFO] [stderr] | ---------- binding `selfie` declared here [INFO] [stderr] ... [INFO] [stderr] 20 | selfie.with_referential(|referential| { [INFO] [stderr] | ^^^^^^ borrowed value does not live long enough [INFO] [stderr] 21 | referential.0.borrow_mut().0 = Some(selfie.with_referential(|r| r)); [INFO] [stderr] | - returning this value requires that `selfie` is borrowed for `'static` [INFO] [stderr] ... [INFO] [stderr] 35 | } [INFO] [stderr] | - `selfie` dropped here while still borrowed [INFO] [stderr] [INFO] [stderr] error[E0597]: `selfie` does not live long enough [INFO] [stderr] --> tests/compile_fail/circular.rs:21:45 [INFO] [stderr] | [INFO] [stderr] 17 | let mut selfie: Selfie, BarRef> = [INFO] [stderr] | ---------- binding `selfie` declared here [INFO] [stderr] ... [INFO] [stderr] 20 | selfie.with_referential(|referential| { [INFO] [stderr] | ------------- value captured here [INFO] [stderr] 21 | referential.0.borrow_mut().0 = Some(selfie.with_referential(|r| r)); [INFO] [stderr] | ^^^^^^ - returning this value requires that `selfie` is borrowed for `'static` [INFO] [stderr] | | [INFO] [stderr] | borrowed value does not live long enough [INFO] [stderr] ... [INFO] [stderr] 35 | } [INFO] [stderr] | - `selfie` dropped here while still borrowed [INFO] [stderr] [INFO] [stderr] error[E0502]: cannot borrow `selfie` as mutable because it is also borrowed as immutable [INFO] [stderr] --> tests/compile_fail/circular.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 20 | selfie.with_referential(|referential| { [INFO] [stderr] | ------ immutable borrow occurs here [INFO] [stderr] 21 | referential.0.borrow_mut().0 = Some(selfie.with_referential(|r| r)); [INFO] [stderr] | - returning this value requires that `selfie` is borrowed for `'static` [INFO] [stderr] ... [INFO] [stderr] 24 | / selfie.with_referential_mut(|dep| { [INFO] [stderr] 25 | | let r1 = dep.0.get_mut(); [INFO] [stderr] 26 | | let string_ref_1 = &mut r1.1; [INFO] [stderr] 27 | | let mut r2 = r1.0.unwrap().0.borrow_mut(); [INFO] [stderr] ... | [INFO] [stderr] 33 | | println!("{}", s); // prints garbage [INFO] [stderr] 34 | | }); [INFO] [stderr] | |______^ mutable borrow occurs here [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning [INFO] [stderr] your test with the environment variable TRYBUILD=overwrite [INFO] [stderr] [INFO] [stderr] test tests/compile_fail/clone.rs ... mismatch [INFO] [stderr] [INFO] [stderr] EXPECTED: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error[E0505]: cannot move out of `selfie` because it is borrowed [INFO] [stderr] --> tests/compile_fail/clone.rs:21:10 [INFO] [stderr] | [INFO] [stderr] 20 | let cloned = selfie.with_referential(|r| r.clone()); [INFO] [stderr] | -------------------------------------- borrow of `selfie` occurs here [INFO] [stderr] 21 | drop(selfie); // Drops both data and selfie [INFO] [stderr] | ^^^^^^ move out of `selfie` occurs here [INFO] [stderr] 22 | println!("{}", cloned.inner); // Boom [INFO] [stderr] | ------------ borrow later used here [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] [INFO] [stderr] ACTUAL OUTPUT: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error[E0505]: cannot move out of `selfie` because it is borrowed [INFO] [stderr] --> tests/compile_fail/clone.rs:21:10 [INFO] [stderr] | [INFO] [stderr] 18 | let selfie: Selfie = Selfie::new(data, |inner| StrRef { inner }); [INFO] [stderr] | ------ binding `selfie` declared here [INFO] [stderr] 19 | [INFO] [stderr] 20 | let cloned = selfie.with_referential(|r| r.clone()); [INFO] [stderr] | ------ borrow of `selfie` occurs here [INFO] [stderr] 21 | drop(selfie); // Drops both data and selfie [INFO] [stderr] | ^^^^^^ move out of `selfie` occurs here [INFO] [stderr] 22 | println!("{}", cloned.inner); // Boom [INFO] [stderr] | ------------ borrow later used here [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning [INFO] [stderr] your test with the environment variable TRYBUILD=overwrite [INFO] [stderr] [INFO] [stderr] test tests/compile_fail/with_referential_mut_from_outer.rs ... mismatch [INFO] [stderr] [INFO] [stderr] EXPECTED: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error[E0597]: `new_string` does not live long enough [INFO] [stderr] --> tests/compile_fail/with_referential_mut_from_outer.rs:13:47 [INFO] [stderr] | [INFO] [stderr] 13 | selfie.with_referential_mut(|s| *s = &new_string); [INFO] [stderr] | --- ------^^^^^^^^^^ [INFO] [stderr] | | | | [INFO] [stderr] | | | borrowed value does not live long enough [INFO] [stderr] | | assignment requires that `new_string` is borrowed for `'static` [INFO] [stderr] | value captured here [INFO] [stderr] 14 | } [INFO] [stderr] | - `new_string` dropped here while still borrowed [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] [INFO] [stderr] ACTUAL OUTPUT: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error[E0597]: `new_string` does not live long enough [INFO] [stderr] --> tests/compile_fail/with_referential_mut_from_outer.rs:13:47 [INFO] [stderr] | [INFO] [stderr] 12 | let new_string = String::from("foo"); [INFO] [stderr] | ---------- binding `new_string` declared here [INFO] [stderr] 13 | selfie.with_referential_mut(|s| *s = &new_string); [INFO] [stderr] | --- ------^^^^^^^^^^ [INFO] [stderr] | | | | [INFO] [stderr] | | | borrowed value does not live long enough [INFO] [stderr] | | assignment requires that `new_string` is borrowed for `'static` [INFO] [stderr] | value captured here [INFO] [stderr] 14 | } [INFO] [stderr] | - `new_string` dropped here while still borrowed [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning [INFO] [stderr] your test with the environment variable TRYBUILD=overwrite [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] [INFO] [stdout] test ui ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- ui stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'ui' (30) panicked at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/trybuild-1.0.63/src/run.rs:101:13: [INFO] [stdout] 3 of 3 tests failed [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5f3bfec8c262 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5f3bfec8c262 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5f3bfec8c262 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5f3bfec8c262 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5f3bfec9d85f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5f3bfec9d85f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5f3bfec56691 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5f3bfec56691 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5f3bfec63e62 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5f3bfec6962f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5f3bfec694c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5f3bfec26d5e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5f3bfec26d5e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5f3bfec69cef - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5f3bfec69cef - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5f3bfec69b4a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5f3bfec63fa9 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5f3bfec49c9d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5f3bfeca6ac0 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5f3bfea32f51 - trybuild::run::::run::h071f0f8b14705861 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/trybuild-1.0.63/src/run.rs:101:13 [INFO] [stdout] 20: 0x5f3bfea2ff98 - ::drop::h864924d6591a27f6 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/trybuild-1.0.63/src/lib.rs:310:38 [INFO] [stdout] 21: 0x5f3bfea28f77 - core::ptr::drop_in_place::h3e4b3f2a9f3655ad [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ptr/mod.rs:804:1 [INFO] [stdout] 22: 0x5f3bfea28da3 - compile_fail::ui::hdf65847db94ecad3 [INFO] [stdout] at /opt/rustwide/workdir/tests/compile_fail.rs:8:1 [INFO] [stdout] 23: 0x5f3bfea28dd7 - compile_fail::ui::{{closure}}::h109dd323f5b7efb1 [INFO] [stdout] at /opt/rustwide/workdir/tests/compile_fail.rs:3:8 [INFO] [stdout] 24: 0x5f3bfea28ee6 - core::ops::function::FnOnce::call_once::h9d4b749c620f7a30 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 25: 0x5f3bfec26b3b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5f3bfec26b3b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 27: 0x5f3bfec3c765 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 28: 0x5f3bfec3c765 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 29: 0x5f3bfec3c765 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 30: 0x5f3bfec3c765 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 31: 0x5f3bfec3c765 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 32: 0x5f3bfec3c765 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 33: 0x5f3bfec3c765 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 34: 0x5f3bfec12f74 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 35: 0x5f3bfec12f74 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 36: 0x5f3bfec1691a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 37: 0x5f3bfec1691a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 38: 0x5f3bfec1691a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 39: 0x5f3bfec1691a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 40: 0x5f3bfec1691a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 41: 0x5f3bfec1691a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 42: 0x5f3bfec1691a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 43: 0x5f3bfec5ef2f - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 44: 0x5f3bfec5ef2f - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 45: 0x7105cac58aa4 - [INFO] [stdout] 46: 0x7105cace5a34 - clone [INFO] [stdout] 47: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] ui [INFO] [stdout] [INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.85s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass `--test compile_fail` [INFO] running `Command { std: "docker" "inspect" "84aa6fb2113232c374e5a766e8e347bbee52b8dbf18563064cf8535ca28e2b04", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "84aa6fb2113232c374e5a766e8e347bbee52b8dbf18563064cf8535ca28e2b04", kill_on_drop: false }` [INFO] [stdout] 84aa6fb2113232c374e5a766e8e347bbee52b8dbf18563064cf8535ca28e2b04