[INFO] fetching crate thunk 0.3.0... [INFO] extracting crate thunk 0.3.0 into work/ex/pr-61629/sources/master#c8865d8e195813ade6b84434ac9f8850e7112d1a/reg/thunk/0.3.0 [INFO] extracting crate thunk 0.3.0 into work/ex/pr-61629/sources/try#e212b7d492c96d3837691ba29d32d5f468933fb8/reg/thunk/0.3.0 [INFO] validating manifest of thunk-0.3.0 on toolchain master#c8865d8e195813ade6b84434ac9f8850e7112d1a [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+c8865d8e195813ade6b84434ac9f8850e7112d1a-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of thunk-0.3.0 on toolchain try#e212b7d492c96d3837691ba29d32d5f468933fb8 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+e212b7d492c96d3837691ba29d32d5f468933fb8-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing thunk-0.3.0 [INFO] finished frobbing thunk-0.3.0 [INFO] frobbed toml for thunk-0.3.0 written to work/ex/pr-61629/sources/master#c8865d8e195813ade6b84434ac9f8850e7112d1a/reg/thunk/0.3.0/Cargo.toml [INFO] started frobbing thunk-0.3.0 [INFO] finished frobbing thunk-0.3.0 [INFO] frobbed toml for thunk-0.3.0 written to work/ex/pr-61629/sources/try#e212b7d492c96d3837691ba29d32d5f468933fb8/reg/thunk/0.3.0/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+c8865d8e195813ade6b84434ac9f8850e7112d1a-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+e212b7d492c96d3837691ba29d32d5f468933fb8-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+c8865d8e195813ade6b84434ac9f8850e7112d1a-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+e212b7d492c96d3837691ba29d32d5f468933fb8-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] testing thunk-0.3.0 against try#e212b7d492c96d3837691ba29d32d5f468933fb8 for pr-61629 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-61629/worker-1/try#e212b7d492c96d3837691ba29d32d5f468933fb8:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-61629/sources/try#e212b7d492c96d3837691ba29d32d5f468933fb8/reg/thunk/0.3.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+e212b7d492c96d3837691ba29d32d5f468933fb8-alt" "build" "--frozen"` [INFO] [stdout] b537c3d03fac286e026f6a29089dd01da2e7d407ab544c97dcce35da02e3a377 [INFO] running `"docker" "start" "-a" "b537c3d03fac286e026f6a29089dd01da2e7d407ab544c97dcce35da02e3a377"` [INFO] [stderr] Compiling thunk v0.3.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/sync.rs:260:13 [INFO] [stderr] | [INFO] [stderr] 260 | /// If the `AtomicThunk` is evaluated, do nothing. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 261 | THUNK_EVALUATED => {} [INFO] [stderr] | --------------------- rustdoc does not generate documentation for match arms [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_doc_comments)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/sync.rs:263:13 [INFO] [stderr] | [INFO] [stderr] 263 | / /// If the `AtomicThunk` is `LOCKING` or `LOCKED`, wait until the thunk is [INFO] [stderr] 264 | | /// done evaluating and then return a reference to the inner value. [INFO] [stderr] | |_______________________________________________________________________________^ [INFO] [stderr] 265 | THUNK_LOCKING | THUNK_LOCKED => unsafe { self.besiege() }, [INFO] [stderr] | --------------------------------------------------------- rustdoc does not generate documentation for match arms [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/sync.rs:267:13 [INFO] [stderr] | [INFO] [stderr] 267 | / /// Only `THUNK_DEFERRED`, `THUNK_EVALUATED`, `THUNK_LOCKING`, and [INFO] [stderr] 268 | | /// `THUNK_LOCKED` are valid values of the flag. [INFO] [stderr] | |____________________________________________________________^ [INFO] [stderr] 269 | / THUNK_INVALIDATED | [INFO] [stderr] 270 | | _ => unsafe { unreachable() }, [INFO] [stderr] | |_________________________________________- rustdoc does not generate documentation for match arms [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sync.rs:66:19 [INFO] [stderr] | [INFO] [stderr] 66 | deferred: Box ()>, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> ()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(bare_trait_objects)] on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sync.rs:98:69 [INFO] [stderr] | [INFO] [stderr] 98 | let thunk_cast = Box::from_raw(Box::into_raw(thunk) as *mut FnBox() -> T); [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> T` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sync.rs:221:33 [INFO] [stderr] | [INFO] [stderr] 221 | let thunk_raw: *mut FnBox() -> T = Box::into_raw(Box::new(f)); [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> T` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sync.rs:222:46 [INFO] [stderr] | [INFO] [stderr] 222 | Box::from_raw(thunk_raw as *mut (FnBox() -> () + 'static)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> () + 'static` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/unsync.rs:38:19 [INFO] [stderr] | [INFO] [stderr] 38 | deferred: Box ()>, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> ()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/unsync.rs:66:69 [INFO] [stderr] | [INFO] [stderr] 66 | let thunk_cast = Box::from_raw(Box::into_raw(thunk) as *mut FnBox() -> T); [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> T` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/unsync.rs:156:37 [INFO] [stderr] | [INFO] [stderr] 156 | let thunk_raw: *mut FnBox() -> T = Box::into_raw(Box::new(f)); [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> T` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/unsync.rs:157:50 [INFO] [stderr] | [INFO] [stderr] 157 | Box::from_raw(thunk_raw as *mut (FnBox() -> () + 'static)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> () + 'static` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/sync.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::boxed::FnBox; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/sync.rs:66:19 [INFO] [stderr] | [INFO] [stderr] 66 | deferred: Box ()>, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/sync.rs:98:69 [INFO] [stderr] | [INFO] [stderr] 98 | let thunk_cast = Box::from_raw(Box::into_raw(thunk) as *mut FnBox() -> T); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/sync.rs:217:21 [INFO] [stderr] | [INFO] [stderr] 217 | fn defer<'a, F: FnBox() -> T + 'a>(f: F) -> AtomicThunk [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/sync.rs:221:33 [INFO] [stderr] | [INFO] [stderr] 221 | let thunk_raw: *mut FnBox() -> T = Box::into_raw(Box::new(f)); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/sync.rs:222:46 [INFO] [stderr] | [INFO] [stderr] 222 | Box::from_raw(thunk_raw as *mut (FnBox() -> () + 'static)) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/unsync.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::boxed::FnBox; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/unsync.rs:38:19 [INFO] [stderr] | [INFO] [stderr] 38 | deferred: Box ()>, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/unsync.rs:66:69 [INFO] [stderr] | [INFO] [stderr] 66 | let thunk_cast = Box::from_raw(Box::into_raw(thunk) as *mut FnBox() -> T); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/unsync.rs:151:21 [INFO] [stderr] | [INFO] [stderr] 151 | fn defer<'a, F: FnBox() -> T + 'a>(f: F) -> Thunk [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/unsync.rs:156:37 [INFO] [stderr] | [INFO] [stderr] 156 | let thunk_raw: *mut FnBox() -> T = Box::into_raw(Box::new(f)); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/unsync.rs:157:50 [INFO] [stderr] | [INFO] [stderr] 157 | Box::from_raw(thunk_raw as *mut (FnBox() -> () + 'static)) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/sync.rs:175:9 [INFO] [stderr] | [INFO] [stderr] 175 | unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_unsafe)] on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/unsync.rs:142:9 [INFO] [stderr] | [INFO] [stderr] 142 | unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.52s [INFO] running `"docker" "inspect" "b537c3d03fac286e026f6a29089dd01da2e7d407ab544c97dcce35da02e3a377"` [INFO] running `"docker" "rm" "-f" "b537c3d03fac286e026f6a29089dd01da2e7d407ab544c97dcce35da02e3a377"` [INFO] [stdout] b537c3d03fac286e026f6a29089dd01da2e7d407ab544c97dcce35da02e3a377 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-61629/worker-1/try#e212b7d492c96d3837691ba29d32d5f468933fb8:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-61629/sources/try#e212b7d492c96d3837691ba29d32d5f468933fb8/reg/thunk/0.3.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+e212b7d492c96d3837691ba29d32d5f468933fb8-alt" "test" "--frozen" "--no-run"` [INFO] [stdout] b33917e2da5258599e03bd4f0cc6961559357e8aff620754ee157b6dbb038f08 [INFO] running `"docker" "start" "-a" "b33917e2da5258599e03bd4f0cc6961559357e8aff620754ee157b6dbb038f08"` [INFO] [stderr] Compiling thunk v0.3.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/sync.rs:260:13 [INFO] [stderr] | [INFO] [stderr] 260 | /// If the `AtomicThunk` is evaluated, do nothing. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 261 | THUNK_EVALUATED => {} [INFO] [stderr] | --------------------- rustdoc does not generate documentation for match arms [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_doc_comments)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/sync.rs:263:13 [INFO] [stderr] | [INFO] [stderr] 263 | / /// If the `AtomicThunk` is `LOCKING` or `LOCKED`, wait until the thunk is [INFO] [stderr] 264 | | /// done evaluating and then return a reference to the inner value. [INFO] [stderr] | |_______________________________________________________________________________^ [INFO] [stderr] 265 | THUNK_LOCKING | THUNK_LOCKED => unsafe { self.besiege() }, [INFO] [stderr] | --------------------------------------------------------- rustdoc does not generate documentation for match arms [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/sync.rs:267:13 [INFO] [stderr] | [INFO] [stderr] 267 | / /// Only `THUNK_DEFERRED`, `THUNK_EVALUATED`, `THUNK_LOCKING`, and [INFO] [stderr] 268 | | /// `THUNK_LOCKED` are valid values of the flag. [INFO] [stderr] | |____________________________________________________________^ [INFO] [stderr] 269 | / THUNK_INVALIDATED | [INFO] [stderr] 270 | | _ => unsafe { unreachable() }, [INFO] [stderr] | |_________________________________________- rustdoc does not generate documentation for match arms [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sync.rs:66:19 [INFO] [stderr] | [INFO] [stderr] 66 | deferred: Box ()>, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> ()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(bare_trait_objects)] on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sync.rs:98:69 [INFO] [stderr] | [INFO] [stderr] 98 | let thunk_cast = Box::from_raw(Box::into_raw(thunk) as *mut FnBox() -> T); [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> T` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sync.rs:221:33 [INFO] [stderr] | [INFO] [stderr] 221 | let thunk_raw: *mut FnBox() -> T = Box::into_raw(Box::new(f)); [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> T` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sync.rs:222:46 [INFO] [stderr] | [INFO] [stderr] 222 | Box::from_raw(thunk_raw as *mut (FnBox() -> () + 'static)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> () + 'static` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/unsync.rs:38:19 [INFO] [stderr] | [INFO] [stderr] 38 | deferred: Box ()>, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> ()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/unsync.rs:66:69 [INFO] [stderr] | [INFO] [stderr] 66 | let thunk_cast = Box::from_raw(Box::into_raw(thunk) as *mut FnBox() -> T); [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> T` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/unsync.rs:156:37 [INFO] [stderr] | [INFO] [stderr] 156 | let thunk_raw: *mut FnBox() -> T = Box::into_raw(Box::new(f)); [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> T` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/unsync.rs:157:50 [INFO] [stderr] | [INFO] [stderr] 157 | Box::from_raw(thunk_raw as *mut (FnBox() -> () + 'static)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnBox() -> () + 'static` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/sync.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::boxed::FnBox; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/sync.rs:66:19 [INFO] [stderr] | [INFO] [stderr] 66 | deferred: Box ()>, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/sync.rs:98:69 [INFO] [stderr] | [INFO] [stderr] 98 | let thunk_cast = Box::from_raw(Box::into_raw(thunk) as *mut FnBox() -> T); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/sync.rs:217:21 [INFO] [stderr] | [INFO] [stderr] 217 | fn defer<'a, F: FnBox() -> T + 'a>(f: F) -> AtomicThunk [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/sync.rs:221:33 [INFO] [stderr] | [INFO] [stderr] 221 | let thunk_raw: *mut FnBox() -> T = Box::into_raw(Box::new(f)); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/sync.rs:222:46 [INFO] [stderr] | [INFO] [stderr] 222 | Box::from_raw(thunk_raw as *mut (FnBox() -> () + 'static)) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/unsync.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::boxed::FnBox; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/unsync.rs:38:19 [INFO] [stderr] | [INFO] [stderr] 38 | deferred: Box ()>, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/unsync.rs:66:69 [INFO] [stderr] | [INFO] [stderr] 66 | let thunk_cast = Box::from_raw(Box::into_raw(thunk) as *mut FnBox() -> T); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/unsync.rs:151:21 [INFO] [stderr] | [INFO] [stderr] 151 | fn defer<'a, F: FnBox() -> T + 'a>(f: F) -> Thunk [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/unsync.rs:156:37 [INFO] [stderr] | [INFO] [stderr] 156 | let thunk_raw: *mut FnBox() -> T = Box::into_raw(Box::new(f)); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::boxed::FnBox': use `FnOnce`, `FnMut`, or `Fn` instead [INFO] [stderr] --> src/unsync.rs:157:50 [INFO] [stderr] | [INFO] [stderr] 157 | Box::from_raw(thunk_raw as *mut (FnBox() -> () + 'static)) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/sync.rs:175:9 [INFO] [stderr] | [INFO] [stderr] 175 | unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_unsafe)] on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/unsync.rs:142:9 [INFO] [stderr] | [INFO] [stderr] 142 | unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.50s [INFO] running `"docker" "inspect" "b33917e2da5258599e03bd4f0cc6961559357e8aff620754ee157b6dbb038f08"` [INFO] running `"docker" "rm" "-f" "b33917e2da5258599e03bd4f0cc6961559357e8aff620754ee157b6dbb038f08"` [INFO] [stdout] b33917e2da5258599e03bd4f0cc6961559357e8aff620754ee157b6dbb038f08 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-61629/worker-1/try#e212b7d492c96d3837691ba29d32d5f468933fb8:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-61629/sources/try#e212b7d492c96d3837691ba29d32d5f468933fb8/reg/thunk/0.3.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+e212b7d492c96d3837691ba29d32d5f468933fb8-alt" "test" "--frozen"` [INFO] [stdout] 6ab41c8eb0977ea90af568703c47be352da5bc6a150cf850b14acb92bfd0891b [INFO] running `"docker" "start" "-a" "6ab41c8eb0977ea90af568703c47be352da5bc6a150cf850b14acb92bfd0891b"` [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.01s [INFO] [stderr] Running /opt/crater/target/debug/deps/thunk-a18b03c99904f9bb [INFO] [stdout] [INFO] [stdout] running 16 tests [INFO] [stdout] test strict::test::thunk_computed ... ok [INFO] [stdout] test strict::test::thunk_deferred ... ok [INFO] [stdout] test sync::test::arc_thunk_computed ... ok [INFO] [stdout] test sync::test::arc_thunk_deferred ... ok [INFO] [stdout] test sync::test::ten_thousand_xors_threadsafe_lazy ... ok [INFO] [stdout] test unsync::test::ten_thousand_xors_threadsafe_lazy ... ok [INFO] [stdout] test unsync::test::rc_thunk_deferred ... ok [INFO] [stdout] test unsync::test::rc_thunk_computed ... ok [INFO] [stdout] test sync::test::thunk_deferred ... ok [INFO] [stdout] test unsync::test::thunk_computed ... ok [INFO] [stdout] test sync::test::thunk_computed ... ok [INFO] [stdout] test unsync::test::thunk_deferred ... ok [INFO] [stdout] test strict::test::ten_thousand_xors_threadsafe_lazy ... ok [INFO] [stdout] test strict::test::ten_thousand_xors_threadsafe_strict ... ok [INFO] [stdout] test unsync::test::ten_thousand_xors_threadsafe_strict ... ok [INFO] [stdout] test sync::test::ten_thousand_xors_threadsafe_strict ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests thunk [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 [INFO] [stdout] [INFO] running `"docker" "inspect" "6ab41c8eb0977ea90af568703c47be352da5bc6a150cf850b14acb92bfd0891b"` [INFO] running `"docker" "rm" "-f" "6ab41c8eb0977ea90af568703c47be352da5bc6a150cf850b14acb92bfd0891b"` [INFO] [stdout] 6ab41c8eb0977ea90af568703c47be352da5bc6a150cf850b14acb92bfd0891b