[INFO] fetching crate shareable 0.1.1... [INFO] testing shareable-0.1.1 against try#2440211fe03bc45c89b6dc1a3df18382ce91e32b for pr-146098-1 [INFO] extracting crate shareable 0.1.1 into /workspace/builds/worker-3-tc2/source [INFO] started tweaking crates.io crate shareable 0.1.1 [INFO] finished tweaking crates.io crate shareable 0.1.1 [INFO] tweaked toml for crates.io crate shareable 0.1.1 written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate shareable 0.1.1 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] 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] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 51265f0102fdf22c9c0262fed1f98d543fbd0052dfd2cd7273eeb44b1b7c8832 [INFO] running `Command { std: "docker" "start" "-a" "51265f0102fdf22c9c0262fed1f98d543fbd0052dfd2cd7273eeb44b1b7c8832", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "51265f0102fdf22c9c0262fed1f98d543fbd0052dfd2cd7273eeb44b1b7c8832", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "51265f0102fdf22c9c0262fed1f98d543fbd0052dfd2cd7273eeb44b1b7c8832", kill_on_drop: false }` [INFO] [stdout] 51265f0102fdf22c9c0262fed1f98d543fbd0052dfd2cd7273eeb44b1b7c8832 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] e24b6cb2769086f99421dac341eec083c6db78b1b772083ef07bbdde14e8c974 [INFO] running `Command { std: "docker" "start" "-a" "e24b6cb2769086f99421dac341eec083c6db78b1b772083ef07bbdde14e8c974", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling shareable v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> src/shared_object.rs:56:27 [INFO] [stdout] | [INFO] [stdout] 56 | if self.lock.compare_and_swap(false, true, Ordering::Relaxed) == false [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f32.rs:56:50 [INFO] [stdout] | [INFO] [stdout] 56 | data : Arc::new(AtomicUsize::new(transmute::(value) as usize)) [INFO] [stdout] | ---------------------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `f32::to_bits` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unnecessary_transmutes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f32.rs:70:17 [INFO] [stdout] | [INFO] [stdout] 70 | transmute::(val) as usize, [INFO] [stdout] | ---------------------^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `f32::to_bits` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f32.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | transmute(self.data.load(Ordering::Relaxed) as u32) [INFO] [stdout] | ---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `f32::from_bits` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f64.rs:104:50 [INFO] [stdout] | [INFO] [stdout] 104 | data : Arc::new(AtomicUsize::new(transmute(value))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 104 - data : Arc::new(AtomicUsize::new(transmute(value))) [INFO] [stdout] 104 + data : Arc::new(AtomicUsize::new(f64::to_bits(value) as usize)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f64.rs:117:29 [INFO] [stdout] | [INFO] [stdout] 117 | self.data.store(transmute(value), Ordering::Relaxed) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 117 - self.data.store(transmute(value), Ordering::Relaxed) [INFO] [stdout] 117 + self.data.store(f64::to_bits(value) as usize, Ordering::Relaxed) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f64.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | transmute(self.data.load(Ordering::Relaxed)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 126 - transmute(self.data.load(Ordering::Relaxed)) [INFO] [stdout] 126 + f64::from_bits(self.data.load(Ordering::Relaxed) as _) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_i64.rs:104:50 [INFO] [stdout] | [INFO] [stdout] 104 | data : Arc::new(AtomicUsize::new(transmute(value))) [INFO] [stdout] | ---------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `i64::cast_unsigned` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_i64.rs:117:29 [INFO] [stdout] | [INFO] [stdout] 117 | self.data.store(transmute(value), Ordering::Relaxed) [INFO] [stdout] | ---------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `i64::cast_unsigned` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_i64.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | transmute(self.data.load(Ordering::Relaxed)) [INFO] [stdout] | ---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `usize::cast_signed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/shared_object.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | Box::from_raw(self.data.swap(Box::into_raw(value), Ordering::AcqRel)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 101 | let _ = Box::from_raw(self.data.swap(Box::into_raw(value), Ordering::AcqRel)); [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/shared_object.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | Box::from_raw(self.data.swap(ptr::null_mut(), Ordering::Acquire)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 114 | let _ = Box::from_raw(self.data.swap(ptr::null_mut(), Ordering::Acquire)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.28s [INFO] running `Command { std: "docker" "inspect" "e24b6cb2769086f99421dac341eec083c6db78b1b772083ef07bbdde14e8c974", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e24b6cb2769086f99421dac341eec083c6db78b1b772083ef07bbdde14e8c974", kill_on_drop: false }` [INFO] [stdout] e24b6cb2769086f99421dac341eec083c6db78b1b772083ef07bbdde14e8c974 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] b4135b3e57867f0dd6cfc81c0c5f7955f2ca1ba137e69abb30697841cabbc58a [INFO] running `Command { std: "docker" "start" "-a" "b4135b3e57867f0dd6cfc81c0c5f7955f2ca1ba137e69abb30697841cabbc58a", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> src/shared_object.rs:56:27 [INFO] [stdout] | [INFO] [stdout] 56 | if self.lock.compare_and_swap(false, true, Ordering::Relaxed) == false [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f32.rs:56:50 [INFO] [stdout] | [INFO] [stdout] 56 | data : Arc::new(AtomicUsize::new(transmute::(value) as usize)) [INFO] [stdout] | ---------------------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `f32::to_bits` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unnecessary_transmutes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f32.rs:70:17 [INFO] [stdout] | [INFO] [stdout] 70 | transmute::(val) as usize, [INFO] [stdout] | ---------------------^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `f32::to_bits` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f32.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | transmute(self.data.load(Ordering::Relaxed) as u32) [INFO] [stdout] | ---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `f32::from_bits` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f64.rs:104:50 [INFO] [stdout] | [INFO] [stdout] 104 | data : Arc::new(AtomicUsize::new(transmute(value))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 104 - data : Arc::new(AtomicUsize::new(transmute(value))) [INFO] [stdout] 104 + data : Arc::new(AtomicUsize::new(f64::to_bits(value) as usize)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling shareable v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f64.rs:117:29 [INFO] [stdout] | [INFO] [stdout] 117 | self.data.store(transmute(value), Ordering::Relaxed) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 117 - self.data.store(transmute(value), Ordering::Relaxed) [INFO] [stdout] 117 + self.data.store(f64::to_bits(value) as usize, Ordering::Relaxed) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f64.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | transmute(self.data.load(Ordering::Relaxed)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 126 - transmute(self.data.load(Ordering::Relaxed)) [INFO] [stdout] 126 + f64::from_bits(self.data.load(Ordering::Relaxed) as _) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_i64.rs:104:50 [INFO] [stdout] | [INFO] [stdout] 104 | data : Arc::new(AtomicUsize::new(transmute(value))) [INFO] [stdout] | ---------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `i64::cast_unsigned` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_i64.rs:117:29 [INFO] [stdout] | [INFO] [stdout] 117 | self.data.store(transmute(value), Ordering::Relaxed) [INFO] [stdout] | ---------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `i64::cast_unsigned` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_i64.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | transmute(self.data.load(Ordering::Relaxed)) [INFO] [stdout] | ---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `usize::cast_signed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/shared_object.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | Box::from_raw(self.data.swap(Box::into_raw(value), Ordering::AcqRel)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 101 | let _ = Box::from_raw(self.data.swap(Box::into_raw(value), Ordering::AcqRel)); [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/shared_object.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | Box::from_raw(self.data.swap(ptr::null_mut(), Ordering::Acquire)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 114 | let _ = Box::from_raw(self.data.swap(ptr::null_mut(), Ordering::Acquire)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> src/shared_object.rs:56:27 [INFO] [stdout] | [INFO] [stdout] 56 | if self.lock.compare_and_swap(false, true, Ordering::Relaxed) == false [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f32.rs:56:50 [INFO] [stdout] | [INFO] [stdout] 56 | data : Arc::new(AtomicUsize::new(transmute::(value) as usize)) [INFO] [stdout] | ---------------------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `f32::to_bits` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unnecessary_transmutes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f32.rs:70:17 [INFO] [stdout] | [INFO] [stdout] 70 | transmute::(val) as usize, [INFO] [stdout] | ---------------------^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `f32::to_bits` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f32.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | transmute(self.data.load(Ordering::Relaxed) as u32) [INFO] [stdout] | ---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `f32::from_bits` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f64.rs:104:50 [INFO] [stdout] | [INFO] [stdout] 104 | data : Arc::new(AtomicUsize::new(transmute(value))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 104 - data : Arc::new(AtomicUsize::new(transmute(value))) [INFO] [stdout] 104 + data : Arc::new(AtomicUsize::new(f64::to_bits(value) as usize)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f64.rs:117:29 [INFO] [stdout] | [INFO] [stdout] 117 | self.data.store(transmute(value), Ordering::Relaxed) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 117 - self.data.store(transmute(value), Ordering::Relaxed) [INFO] [stdout] 117 + self.data.store(f64::to_bits(value) as usize, Ordering::Relaxed) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_f64.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | transmute(self.data.load(Ordering::Relaxed)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 126 - transmute(self.data.load(Ordering::Relaxed)) [INFO] [stdout] 126 + f64::from_bits(self.data.load(Ordering::Relaxed) as _) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_i64.rs:104:50 [INFO] [stdout] | [INFO] [stdout] 104 | data : Arc::new(AtomicUsize::new(transmute(value))) [INFO] [stdout] | ---------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `i64::cast_unsigned` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_i64.rs:117:29 [INFO] [stdout] | [INFO] [stdout] 117 | self.data.store(transmute(value), Ordering::Relaxed) [INFO] [stdout] | ---------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `i64::cast_unsigned` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/shared_i64.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | transmute(self.data.load(Ordering::Relaxed)) [INFO] [stdout] | ---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `usize::cast_signed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/shared_object.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | Box::from_raw(self.data.swap(Box::into_raw(value), Ordering::AcqRel)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 101 | let _ = Box::from_raw(self.data.swap(Box::into_raw(value), Ordering::AcqRel)); [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stdout] --> src/shared_object.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | Box::from_raw(self.data.swap(ptr::null_mut(), Ordering::Acquire)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 114 | let _ = Box::from_raw(self.data.swap(ptr::null_mut(), Ordering::Acquire)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.50s [INFO] running `Command { std: "docker" "inspect" "b4135b3e57867f0dd6cfc81c0c5f7955f2ca1ba137e69abb30697841cabbc58a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b4135b3e57867f0dd6cfc81c0c5f7955f2ca1ba137e69abb30697841cabbc58a", kill_on_drop: false }` [INFO] [stdout] b4135b3e57867f0dd6cfc81c0c5f7955f2ca1ba137e69abb30697841cabbc58a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 49cad52c11d5cca30dfeea34c30a81ed9dedb5f4a4889fe084a87357975833ab [INFO] running `Command { std: "docker" "start" "-a" "49cad52c11d5cca30dfeea34c30a81ed9dedb5f4a4889fe084a87357975833ab", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stderr] --> src/shared_object.rs:56:27 [INFO] [stderr] | [INFO] [stderr] 56 | if self.lock.compare_and_swap(false, true, Ordering::Relaxed) == false [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary transmute [INFO] [stderr] --> src/shared_f32.rs:56:50 [INFO] [stderr] | [INFO] [stderr] 56 | data : Arc::new(AtomicUsize::new(transmute::(value) as usize)) [INFO] [stderr] | ---------------------^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: replace this with: `f32::to_bits` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unnecessary_transmutes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary transmute [INFO] [stderr] --> src/shared_f32.rs:70:17 [INFO] [stderr] | [INFO] [stderr] 70 | transmute::(val) as usize, [INFO] [stderr] | ---------------------^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: replace this with: `f32::to_bits` [INFO] [stderr] [INFO] [stderr] warning: unnecessary transmute [INFO] [stderr] --> src/shared_f32.rs:81:13 [INFO] [stderr] | [INFO] [stderr] 81 | transmute(self.data.load(Ordering::Relaxed) as u32) [INFO] [stderr] | ---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: replace this with: `f32::from_bits` [INFO] [stderr] [INFO] [stderr] warning: unnecessary transmute [INFO] [stderr] --> src/shared_f64.rs:104:50 [INFO] [stderr] | [INFO] [stderr] 104 | data : Arc::new(AtomicUsize::new(transmute(value))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: replace this with [INFO] [stderr] | [INFO] [stderr] 104 - data : Arc::new(AtomicUsize::new(transmute(value))) [INFO] [stderr] 104 + data : Arc::new(AtomicUsize::new(f64::to_bits(value) as usize)) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary transmute [INFO] [stderr] --> src/shared_f64.rs:117:29 [INFO] [stderr] | [INFO] [stderr] 117 | self.data.store(transmute(value), Ordering::Relaxed) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: replace this with [INFO] [stderr] | [INFO] [stderr] 117 - self.data.store(transmute(value), Ordering::Relaxed) [INFO] [stderr] 117 + self.data.store(f64::to_bits(value) as usize, Ordering::Relaxed) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary transmute [INFO] [stderr] --> src/shared_f64.rs:126:13 [INFO] [stderr] | [INFO] [stderr] 126 | transmute(self.data.load(Ordering::Relaxed)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: replace this with [INFO] [stderr] | [INFO] [stderr] 126 - transmute(self.data.load(Ordering::Relaxed)) [INFO] [stderr] 126 + f64::from_bits(self.data.load(Ordering::Relaxed) as _) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary transmute [INFO] [stderr] --> src/shared_i64.rs:104:50 [INFO] [stderr] | [INFO] [stderr] 104 | data : Arc::new(AtomicUsize::new(transmute(value))) [INFO] [stderr] | ---------^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: replace this with: `i64::cast_unsigned` [INFO] [stderr] [INFO] [stderr] warning: unnecessary transmute [INFO] [stderr] --> src/shared_i64.rs:117:29 [INFO] [stderr] | [INFO] [stderr] 117 | self.data.store(transmute(value), Ordering::Relaxed) [INFO] [stderr] | ---------^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: replace this with: `i64::cast_unsigned` [INFO] [stderr] [INFO] [stderr] warning: unnecessary transmute [INFO] [stderr] --> src/shared_i64.rs:126:13 [INFO] [stderr] | [INFO] [stderr] 126 | transmute(self.data.load(Ordering::Relaxed)) [INFO] [stderr] | ---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: replace this with: `usize::cast_signed` [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/shared_object.rs:101:17 [INFO] [stderr] | [INFO] [stderr] 101 | Box::from_raw(self.data.swap(Box::into_raw(value), Ordering::AcqRel)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 101 | let _ = Box::from_raw(self.data.swap(Box::into_raw(value), Ordering::AcqRel)); [INFO] [stderr] | +++++++ + [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Box::::from_raw` that must be used [INFO] [stderr] --> src/shared_object.rs:114:13 [INFO] [stderr] | [INFO] [stderr] 114 | Box::from_raw(self.data.swap(ptr::null_mut(), Ordering::Acquire)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box` [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 114 | let _ = Box::from_raw(self.data.swap(ptr::null_mut(), Ordering::Acquire)); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: `shareable` (lib) generated 12 warnings (run `cargo fix --lib -p shareable` to apply 9 suggestions) [INFO] [stderr] warning: `shareable` (lib test) generated 12 warnings (12 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/shareable-2ca78e1e72bc678c) [INFO] [stdout] [INFO] [stdout] running 28 tests [INFO] [stdout] test shared_bool::tests::test_multiple ... ok [INFO] [stdout] test shared_f32::tests::test_multiple ... ok [INFO] [stdout] test shared_bool::tests::test_single ... ok [INFO] [stdout] test shared_f32::tests::test_single ... ok [INFO] [stdout] test shared_f64::tests::test_multiple ... ok [INFO] [stdout] test shared_f64::tests::test_single ... ok [INFO] [stdout] test shared_i16::tests::test_multiple ... ok [INFO] [stdout] test shared_i32::tests::test_multiple ... ok [INFO] [stdout] test shared_i32::tests::test_single ... ok [INFO] [stdout] test shared_i16::tests::test_single ... ok [INFO] [stdout] test shared_i64::tests::test_multiple ... ok [INFO] [stdout] test shared_i64::tests::test_single ... ok [INFO] [stdout] test shared_isize::tests::test_multiple ... ok [INFO] [stdout] test shared_i8::tests::test_multiple ... ok [INFO] [stdout] test shared_u16::tests::test_multiple ... ok [INFO] [stdout] test shared_isize::tests::test_single ... ok [INFO] [stdout] test shared_object::tests::multiple ... ok [INFO] [stdout] test shared_u32::tests::test_single ... ok [INFO] [stdout] test shared_u64::tests::test_single ... ok [INFO] [stdout] test shared_usize::tests::test_single ... ok [INFO] [stdout] test shared_u8::tests::test_multiple ... ok [INFO] [stdout] test shared_u8::tests::test_single ... ok [INFO] [stdout] test shared_i8::tests::test_single ... ok [INFO] [stdout] test shared_usize::tests::test_multiple ... ok [INFO] [stdout] test shared_u64::tests::test_multiple ... ok [INFO] [stdout] test shared_object::tests::single ... ok [INFO] [stdout] test shared_u32::tests::test_multiple ... ok [INFO] [stdout] test shared_u16::tests::test_single ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 28 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests shareable [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stdout] test src/shared_u8.rs - shared_u8::SharedU8 (line 18) ... ok [INFO] [stdout] test src/shared_object.rs - shared_object::SharedObject (line 127) ... ok [INFO] [stdout] test src/shared_isize.rs - shared_isize::SharedIsize (line 18) ... ok [INFO] [stdout] test src/shared_i8.rs - shared_i8::SharedI8 (line 18) ... ok [INFO] [stdout] test src/shared_u64.rs - shared_u64::SharedU64 (line 26) ... ok [INFO] [stdout] test src/shared_i32.rs - shared_i32::SharedI32 (line 18) ... ok [INFO] [stdout] test src/shared_f32.rs - shared_f32::SharedF32 (line 18) ... ok [INFO] [stdout] test src/shared_usize.rs - shared_usize::SharedUsize (line 18) ... ok [INFO] [stdout] test src/shared_f64.rs - shared_f64::SharedF64 (line 26) ... ok [INFO] [stdout] test src/shared_i64.rs - shared_i64::SharedI64 (line 26) ... ok [INFO] [stdout] test src/shared_u32.rs - shared_u32::SharedU32 (line 18) ... ok [INFO] [stdout] test src/lib.rs - (line 25) ... ok [INFO] [stdout] test src/shared_bool.rs - shared_bool::SharedBool (line 18) ... ok [INFO] [stdout] test src/shared_u16.rs - shared_u16::SharedU16 (line 18) ... ok [INFO] [stdout] test src/shared_i16.rs - shared_i16::SharedI16 (line 18) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.22s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "49cad52c11d5cca30dfeea34c30a81ed9dedb5f4a4889fe084a87357975833ab", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "49cad52c11d5cca30dfeea34c30a81ed9dedb5f4a4889fe084a87357975833ab", kill_on_drop: false }` [INFO] [stdout] 49cad52c11d5cca30dfeea34c30a81ed9dedb5f4a4889fe084a87357975833ab