[INFO] fetching crate dstructs 0.1.0... [INFO] testing dstructs-0.1.0 against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_libc_patch_0 [INFO] extracting crate dstructs 0.1.0 into /workspace/builds/worker-6-tc1/source [INFO] started tweaking crates.io crate dstructs 0.1.0 [INFO] finished tweaking crates.io crate dstructs 0.1.0 [INFO] tweaked toml for crates.io crate dstructs 0.1.0 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate dstructs 0.1.0 on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate dstructs 0.1.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9b82587589e79900d69ba9f5cdb8284b947d533fa94896a07a3117683d356355 [INFO] running `Command { std: "docker" "start" "-a" "9b82587589e79900d69ba9f5cdb8284b947d533fa94896a07a3117683d356355", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9b82587589e79900d69ba9f5cdb8284b947d533fa94896a07a3117683d356355", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9b82587589e79900d69ba9f5cdb8284b947d533fa94896a07a3117683d356355", kill_on_drop: false }` [INFO] [stdout] 9b82587589e79900d69ba9f5cdb8284b947d533fa94896a07a3117683d356355 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] c194cc4e437416207968a028103d1c282d55db97228128b0c99a57e17a367a3f [INFO] running `Command { std: "docker" "start" "-a" "c194cc4e437416207968a028103d1c282d55db97228128b0c99a57e17a367a3f", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.173 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling zerocopy v0.8.25 [INFO] [stderr] Compiling memchr v2.7.5 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling anstyle v1.0.11 [INFO] [stderr] Compiling anstyle-query v1.1.3 [INFO] [stderr] Compiling colorchoice v1.0.4 [INFO] [stderr] Compiling lock_api v0.4.13 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.1 [INFO] [stderr] Compiling jiff v0.2.15 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling syn v2.0.103 [INFO] [stderr] Compiling hashbrown v0.15.4 [INFO] [stderr] Compiling anstyle-parse v0.2.7 [INFO] [stderr] Compiling anstream v0.6.19 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling crossbeam-channel v0.5.15 [INFO] [stderr] Compiling crossbeam-queue v0.3.12 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling crossbeam v0.8.4 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling num_cpus v1.17.0 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling parking_lot v0.12.4 [INFO] [stderr] Compiling dashmap v5.5.3 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling thiserror-impl v2.0.12 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling thiserror v2.0.12 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling env_filter v0.1.3 [INFO] [stderr] Compiling env_logger v0.11.8 [INFO] [stderr] Compiling dstructs v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `core::cell::RefCell` [INFO] [stdout] --> src/core/collections/graph.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use core::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Display` [INFO] [stdout] --> src/core/collections/queue.rs:1:23 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fmt::{Debug, Display}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/core/concurrent/concurrent_hash_map.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/core/concurrent/concurrent_hash_map.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate-level attribute should be in the root module [INFO] [stdout] --> src/core/collections/graph.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![no_std] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate-level attribute should be in the root module [INFO] [stdout] --> src/core/concurrent/lock_free_queue.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![no_std] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/collections/binary_heap.rs:139:21 [INFO] [stdout] | [INFO] [stdout] 139 | pub fn from_vec(mut vec: Vec, heap_type: HeapType) -> Self { [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/core/collections/binary_tree.rs:166:25 [INFO] [stdout] | [INFO] [stdout] 144 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 166 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/core/collections/binary_tree.rs:170:33 [INFO] [stdout] | [INFO] [stdout] 144 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 170 | let _ = unsafe { Box::from_raw(new_node.as_ptr()) }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `node` is never read [INFO] [stdout] --> src/core/collections/binary_tree.rs:219:17 [INFO] [stdout] | [INFO] [stdout] 219 | node = self.rotate_right(Some(n)); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `node` is never read [INFO] [stdout] --> src/core/collections/binary_tree.rs:225:17 [INFO] [stdout] | [INFO] [stdout] 225 | node = self.rotate_left(Some(n)); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:211:13 [INFO] [stdout] | [INFO] [stdout] 211 | (*n.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:209:5 [INFO] [stdout] | [INFO] [stdout] 209 | unsafe fn rebalance_after_insert(&mut self, mut node: Option>>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:212:27 [INFO] [stdout] | [INFO] [stdout] 212 | let balance = (*n.as_ptr()).balance_factor(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:215:28 [INFO] [stdout] | [INFO] [stdout] 215 | let left = (*n.as_ptr()).left.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:216:20 [INFO] [stdout] | [INFO] [stdout] 216 | if (*left.as_ptr()).balance_factor() < 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:217:21 [INFO] [stdout] | [INFO] [stdout] 217 | self.rotate_left(Some(left)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:219:24 [INFO] [stdout] | [INFO] [stdout] 219 | node = self.rotate_right(Some(n)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:221:29 [INFO] [stdout] | [INFO] [stdout] 221 | let right = (*n.as_ptr()).right.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:222:20 [INFO] [stdout] | [INFO] [stdout] 222 | if (*right.as_ptr()).balance_factor() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:223:21 [INFO] [stdout] | [INFO] [stdout] 223 | self.rotate_right(Some(right)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:225:24 [INFO] [stdout] | [INFO] [stdout] 225 | node = self.rotate_left(Some(n)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:228:20 [INFO] [stdout] | [INFO] [stdout] 228 | node = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:235:34 [INFO] [stdout] | [INFO] [stdout] 235 | if let Some(right) = (*n.as_ptr()).right { [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:233:5 [INFO] [stdout] | [INFO] [stdout] 233 | unsafe fn rotate_left(&mut self, node: Option>>) -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:236:17 [INFO] [stdout] | [INFO] [stdout] 236 | (*n.as_ptr()).right = (*right.as_ptr()).left; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:236:39 [INFO] [stdout] | [INFO] [stdout] 236 | (*n.as_ptr()).right = (*right.as_ptr()).left; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:237:37 [INFO] [stdout] | [INFO] [stdout] 237 | if let Some(left) = (*right.as_ptr()).left { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:238:21 [INFO] [stdout] | [INFO] [stdout] 238 | (*left.as_ptr()).parent = Some(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:240:17 [INFO] [stdout] | [INFO] [stdout] 240 | (*right.as_ptr()).left = Some(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:241:17 [INFO] [stdout] | [INFO] [stdout] 241 | (*right.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:241:44 [INFO] [stdout] | [INFO] [stdout] 241 | (*right.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:242:17 [INFO] [stdout] | [INFO] [stdout] 242 | (*n.as_ptr()).parent = Some(right); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:244:39 [INFO] [stdout] | [INFO] [stdout] 244 | if let Some(parent) = (*right.as_ptr()).parent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:245:24 [INFO] [stdout] | [INFO] [stdout] 245 | if (*parent.as_ptr()).left == Some(n) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:246:25 [INFO] [stdout] | [INFO] [stdout] 246 | (*parent.as_ptr()).left = Some(right); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:248:25 [INFO] [stdout] | [INFO] [stdout] 248 | (*parent.as_ptr()).right = Some(right); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:254:17 [INFO] [stdout] | [INFO] [stdout] 254 | (*n.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:255:17 [INFO] [stdout] | [INFO] [stdout] 255 | (*right.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:266:33 [INFO] [stdout] | [INFO] [stdout] 266 | if let Some(left) = (*n.as_ptr()).left { [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:264:5 [INFO] [stdout] | [INFO] [stdout] 264 | unsafe fn rotate_right(&mut self, node: Option>>) -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:267:17 [INFO] [stdout] | [INFO] [stdout] 267 | (*n.as_ptr()).left = (*left.as_ptr()).right; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:267:38 [INFO] [stdout] | [INFO] [stdout] 267 | (*n.as_ptr()).left = (*left.as_ptr()).right; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:268:38 [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(right) = (*left.as_ptr()).right { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:269:21 [INFO] [stdout] | [INFO] [stdout] 269 | (*right.as_ptr()).parent = Some(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:271:17 [INFO] [stdout] | [INFO] [stdout] 271 | (*left.as_ptr()).right = Some(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:272:17 [INFO] [stdout] | [INFO] [stdout] 272 | (*left.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:272:43 [INFO] [stdout] | [INFO] [stdout] 272 | (*left.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:273:17 [INFO] [stdout] | [INFO] [stdout] 273 | (*n.as_ptr()).parent = Some(left); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:275:39 [INFO] [stdout] | [INFO] [stdout] 275 | if let Some(parent) = (*left.as_ptr()).parent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:276:24 [INFO] [stdout] | [INFO] [stdout] 276 | if (*parent.as_ptr()).left == Some(n) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:277:25 [INFO] [stdout] | [INFO] [stdout] 277 | (*parent.as_ptr()).left = Some(left); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:279:25 [INFO] [stdout] | [INFO] [stdout] 279 | (*parent.as_ptr()).right = Some(left); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:285:17 [INFO] [stdout] | [INFO] [stdout] 285 | (*n.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:286:17 [INFO] [stdout] | [INFO] [stdout] 286 | (*left.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:314:22 [INFO] [stdout] | [INFO] [stdout] 314 | let parent = (*node).parent; [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:312:5 [INFO] [stdout] | [INFO] [stdout] 312 | unsafe fn remove_node(&mut self, node: NonNull>) -> T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:316:16 [INFO] [stdout] | [INFO] [stdout] 316 | match ((*node).left, (*node).right) { [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:316:30 [INFO] [stdout] | [INFO] [stdout] 316 | match ((*node).left, (*node).right) { [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::update_parent_link` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:319:17 [INFO] [stdout] | [INFO] [stdout] 319 | self.update_parent_link(node, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::boxed::Box::::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:320:28 [INFO] [stdout] | [INFO] [stdout] 320 | let node = Box::from_raw(node); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rebalance_after_remove` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:322:17 [INFO] [stdout] | [INFO] [stdout] 322 | self.rebalance_after_remove(parent); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::update_parent_link` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:328:17 [INFO] [stdout] | [INFO] [stdout] 328 | self.update_parent_link(node, Some(child)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:329:17 [INFO] [stdout] | [INFO] [stdout] 329 | (*child.as_ptr()).parent = (*node).parent; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:329:44 [INFO] [stdout] | [INFO] [stdout] 329 | (*child.as_ptr()).parent = (*node).parent; [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::boxed::Box::::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:330:28 [INFO] [stdout] | [INFO] [stdout] 330 | let node = Box::from_raw(node); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rebalance_after_remove` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:332:17 [INFO] [stdout] | [INFO] [stdout] 332 | self.rebalance_after_remove(parent); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::find_successor` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:337:33 [INFO] [stdout] | [INFO] [stdout] 337 | let successor = self.find_successor(node); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:338:32 [INFO] [stdout] | [INFO] [stdout] 338 | mem::swap(&mut (*node).data, &mut (*successor.as_ptr()).data); [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:338:51 [INFO] [stdout] | [INFO] [stdout] 338 | mem::swap(&mut (*node).data, &mut (*successor.as_ptr()).data); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::remove_node` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:339:17 [INFO] [stdout] | [INFO] [stdout] 339 | self.remove_node(successor) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:350:22 [INFO] [stdout] | [INFO] [stdout] 350 | let parent = (*node).parent; [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:345:5 [INFO] [stdout] | [INFO] [stdout] 345 | / unsafe fn update_parent_link( [INFO] [stdout] 346 | | &mut self, [INFO] [stdout] 347 | | node: *mut Node, [INFO] [stdout] 348 | | new_child: Option>>, [INFO] [stdout] 349 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:354:20 [INFO] [stdout] | [INFO] [stdout] 354 | if (*p.as_ptr()).left == Some(NonNull::new(node).unwrap()) { [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:355:21 [INFO] [stdout] | [INFO] [stdout] 355 | (*p.as_ptr()).left = new_child; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:357:21 [INFO] [stdout] | [INFO] [stdout] 357 | (*p.as_ptr()).right = new_child; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:365:27 [INFO] [stdout] | [INFO] [stdout] 365 | let mut current = (*node).right.unwrap(); [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:364:5 [INFO] [stdout] | [INFO] [stdout] 364 | unsafe fn find_successor(&self, node: *mut Node) -> NonNull> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:366:32 [INFO] [stdout] | [INFO] [stdout] 366 | while let Some(left) = (*current.as_ptr()).left { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `node` is never read [INFO] [stdout] --> src/core/collections/binary_tree.rs:383:17 [INFO] [stdout] | [INFO] [stdout] 383 | node = self.rotate_right(Some(n)); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `node` is never read [INFO] [stdout] --> src/core/collections/binary_tree.rs:389:17 [INFO] [stdout] | [INFO] [stdout] 389 | node = self.rotate_left(Some(n)); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:375:13 [INFO] [stdout] | [INFO] [stdout] 375 | (*n.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:373:5 [INFO] [stdout] | [INFO] [stdout] 373 | unsafe fn rebalance_after_remove(&mut self, mut node: Option>>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:376:27 [INFO] [stdout] | [INFO] [stdout] 376 | let balance = (*n.as_ptr()).balance_factor(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:379:28 [INFO] [stdout] | [INFO] [stdout] 379 | let left = (*n.as_ptr()).left.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:380:20 [INFO] [stdout] | [INFO] [stdout] 380 | if (*left.as_ptr()).balance_factor() < 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:381:21 [INFO] [stdout] | [INFO] [stdout] 381 | self.rotate_left(Some(left)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:383:24 [INFO] [stdout] | [INFO] [stdout] 383 | node = self.rotate_right(Some(n)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:385:29 [INFO] [stdout] | [INFO] [stdout] 385 | let right = (*n.as_ptr()).right.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:386:20 [INFO] [stdout] | [INFO] [stdout] 386 | if (*right.as_ptr()).balance_factor() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:387:21 [INFO] [stdout] | [INFO] [stdout] 387 | self.rotate_right(Some(right)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:389:24 [INFO] [stdout] | [INFO] [stdout] 389 | node = self.rotate_left(Some(n)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:392:20 [INFO] [stdout] | [INFO] [stdout] 392 | node = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/concurrent/lock_free_queue.rs:72:36 [INFO] [stdout] | [INFO] [stdout] 72 | NonNull::new(ptr).map(|p| &*p.as_ptr()) [INFO] [stdout] | ^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/concurrent/lock_free_queue.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | unsafe fn as_ref<'a>(ptr: *mut Self) -> Option<&'a Self> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `old_head` [INFO] [stdout] --> src/core/concurrent/lock_free_queue.rs:153:25 [INFO] [stdout] | [INFO] [stdout] 153 | let old_head = Box::from_raw(head); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_head` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `SegmentStats` is more private than the item `ConcurrentHashMap::::get_stats` [INFO] [stdout] --> src/core/concurrent/concurrent_hash_map.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | pub fn get_stats(&self) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `ConcurrentHashMap::::get_stats` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `SegmentStats` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/core/concurrent/concurrent_hash_map.rs:39:1 [INFO] [stdout] | [INFO] [stdout] 39 | struct SegmentStats { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_valid_heap` is never used [INFO] [stdout] --> src/core/collections/binary_heap.rs:421:8 [INFO] [stdout] | [INFO] [stdout] 58 | impl BinaryHeap { [INFO] [stdout] | -------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 421 | fn is_valid_heap(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `height` is never used [INFO] [stdout] --> src/core/collections/binary_tree.rs:76:8 [INFO] [stdout] | [INFO] [stdout] 57 | impl Node { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 76 | fn height(&self) -> i32 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_deleted` is never used [INFO] [stdout] --> src/core/collections/hash_map.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 33 | impl Entry { [INFO] [stdout] | ---------------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 44 | fn new_deleted() -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `vec` and `range` are never read [INFO] [stdout] --> src/core/collections/vector.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Drain<'a, T: 'a> { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 18 | vec: &'a mut Vector, [INFO] [stdout] | ^^^ [INFO] [stdout] 19 | range: Range, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `contention_count` and `last_resize` are never read [INFO] [stdout] --> src/core/concurrent/concurrent_hash_map.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 39 | struct SegmentStats { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 40 | operations: u64, [INFO] [stdout] 41 | contention_count: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 42 | last_resize: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SegmentStats` has derived impls for the traits `Debug`, `Default`, and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.71s [INFO] running `Command { std: "docker" "inspect" "c194cc4e437416207968a028103d1c282d55db97228128b0c99a57e17a367a3f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c194cc4e437416207968a028103d1c282d55db97228128b0c99a57e17a367a3f", kill_on_drop: false }` [INFO] [stdout] c194cc4e437416207968a028103d1c282d55db97228128b0c99a57e17a367a3f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] cd1d133bf8c5506117953c12cc55a31b38bc1ce53bc1d67340795c1df2e71147 [INFO] running `Command { std: "docker" "start" "-a" "cd1d133bf8c5506117953c12cc55a31b38bc1ce53bc1d67340795c1df2e71147", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `core::cell::RefCell` [INFO] [stdout] --> src/core/collections/graph.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use core::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Display` [INFO] [stdout] --> src/core/collections/queue.rs:1:23 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fmt::{Debug, Display}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/core/concurrent/concurrent_hash_map.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/core/concurrent/concurrent_hash_map.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate-level attribute should be in the root module [INFO] [stdout] --> src/core/collections/graph.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![no_std] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate-level attribute should be in the root module [INFO] [stdout] --> src/core/concurrent/lock_free_queue.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![no_std] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/collections/binary_heap.rs:139:21 [INFO] [stdout] | [INFO] [stdout] 139 | pub fn from_vec(mut vec: Vec, heap_type: HeapType) -> Self { [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/core/collections/binary_tree.rs:166:25 [INFO] [stdout] | [INFO] [stdout] 144 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 166 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/core/collections/binary_tree.rs:170:33 [INFO] [stdout] | [INFO] [stdout] 144 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 170 | let _ = unsafe { Box::from_raw(new_node.as_ptr()) }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `node` is never read [INFO] [stdout] --> src/core/collections/binary_tree.rs:219:17 [INFO] [stdout] | [INFO] [stdout] 219 | node = self.rotate_right(Some(n)); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `node` is never read [INFO] [stdout] --> src/core/collections/binary_tree.rs:225:17 [INFO] [stdout] | [INFO] [stdout] 225 | node = self.rotate_left(Some(n)); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:211:13 [INFO] [stdout] | [INFO] [stdout] 211 | (*n.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:209:5 [INFO] [stdout] | [INFO] [stdout] 209 | unsafe fn rebalance_after_insert(&mut self, mut node: Option>>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:212:27 [INFO] [stdout] | [INFO] [stdout] 212 | let balance = (*n.as_ptr()).balance_factor(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:215:28 [INFO] [stdout] | [INFO] [stdout] 215 | let left = (*n.as_ptr()).left.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:216:20 [INFO] [stdout] | [INFO] [stdout] 216 | if (*left.as_ptr()).balance_factor() < 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:217:21 [INFO] [stdout] | [INFO] [stdout] 217 | self.rotate_left(Some(left)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:219:24 [INFO] [stdout] | [INFO] [stdout] 219 | node = self.rotate_right(Some(n)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:221:29 [INFO] [stdout] | [INFO] [stdout] 221 | let right = (*n.as_ptr()).right.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:222:20 [INFO] [stdout] | [INFO] [stdout] 222 | if (*right.as_ptr()).balance_factor() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:223:21 [INFO] [stdout] | [INFO] [stdout] 223 | self.rotate_right(Some(right)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:225:24 [INFO] [stdout] | [INFO] [stdout] 225 | node = self.rotate_left(Some(n)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:228:20 [INFO] [stdout] | [INFO] [stdout] 228 | node = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:235:34 [INFO] [stdout] | [INFO] [stdout] 235 | if let Some(right) = (*n.as_ptr()).right { [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:233:5 [INFO] [stdout] | [INFO] [stdout] 233 | unsafe fn rotate_left(&mut self, node: Option>>) -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:236:17 [INFO] [stdout] | [INFO] [stdout] 236 | (*n.as_ptr()).right = (*right.as_ptr()).left; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:236:39 [INFO] [stdout] | [INFO] [stdout] 236 | (*n.as_ptr()).right = (*right.as_ptr()).left; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:237:37 [INFO] [stdout] | [INFO] [stdout] 237 | if let Some(left) = (*right.as_ptr()).left { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:238:21 [INFO] [stdout] | [INFO] [stdout] 238 | (*left.as_ptr()).parent = Some(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:240:17 [INFO] [stdout] | [INFO] [stdout] 240 | (*right.as_ptr()).left = Some(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:241:17 [INFO] [stdout] | [INFO] [stdout] 241 | (*right.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:241:44 [INFO] [stdout] | [INFO] [stdout] 241 | (*right.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:242:17 [INFO] [stdout] | [INFO] [stdout] 242 | (*n.as_ptr()).parent = Some(right); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:244:39 [INFO] [stdout] | [INFO] [stdout] 244 | if let Some(parent) = (*right.as_ptr()).parent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:245:24 [INFO] [stdout] | [INFO] [stdout] 245 | if (*parent.as_ptr()).left == Some(n) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:246:25 [INFO] [stdout] | [INFO] [stdout] 246 | (*parent.as_ptr()).left = Some(right); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:248:25 [INFO] [stdout] | [INFO] [stdout] 248 | (*parent.as_ptr()).right = Some(right); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:254:17 [INFO] [stdout] | [INFO] [stdout] 254 | (*n.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:255:17 [INFO] [stdout] | [INFO] [stdout] 255 | (*right.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:266:33 [INFO] [stdout] | [INFO] [stdout] 266 | if let Some(left) = (*n.as_ptr()).left { [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:264:5 [INFO] [stdout] | [INFO] [stdout] 264 | unsafe fn rotate_right(&mut self, node: Option>>) -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:267:17 [INFO] [stdout] | [INFO] [stdout] 267 | (*n.as_ptr()).left = (*left.as_ptr()).right; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:267:38 [INFO] [stdout] | [INFO] [stdout] 267 | (*n.as_ptr()).left = (*left.as_ptr()).right; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:268:38 [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(right) = (*left.as_ptr()).right { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:269:21 [INFO] [stdout] | [INFO] [stdout] 269 | (*right.as_ptr()).parent = Some(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:271:17 [INFO] [stdout] | [INFO] [stdout] 271 | (*left.as_ptr()).right = Some(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:272:17 [INFO] [stdout] | [INFO] [stdout] 272 | (*left.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:272:43 [INFO] [stdout] | [INFO] [stdout] 272 | (*left.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:273:17 [INFO] [stdout] | [INFO] [stdout] 273 | (*n.as_ptr()).parent = Some(left); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:275:39 [INFO] [stdout] | [INFO] [stdout] 275 | if let Some(parent) = (*left.as_ptr()).parent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:276:24 [INFO] [stdout] | [INFO] [stdout] 276 | if (*parent.as_ptr()).left == Some(n) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:277:25 [INFO] [stdout] | [INFO] [stdout] 277 | (*parent.as_ptr()).left = Some(left); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:279:25 [INFO] [stdout] | [INFO] [stdout] 279 | (*parent.as_ptr()).right = Some(left); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:285:17 [INFO] [stdout] | [INFO] [stdout] 285 | (*n.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:286:17 [INFO] [stdout] | [INFO] [stdout] 286 | (*left.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:314:22 [INFO] [stdout] | [INFO] [stdout] 314 | let parent = (*node).parent; [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:312:5 [INFO] [stdout] | [INFO] [stdout] 312 | unsafe fn remove_node(&mut self, node: NonNull>) -> T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:316:16 [INFO] [stdout] | [INFO] [stdout] 316 | match ((*node).left, (*node).right) { [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:316:30 [INFO] [stdout] | [INFO] [stdout] 316 | match ((*node).left, (*node).right) { [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::update_parent_link` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:319:17 [INFO] [stdout] | [INFO] [stdout] 319 | self.update_parent_link(node, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::boxed::Box::::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:320:28 [INFO] [stdout] | [INFO] [stdout] 320 | let node = Box::from_raw(node); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rebalance_after_remove` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:322:17 [INFO] [stdout] | [INFO] [stdout] 322 | self.rebalance_after_remove(parent); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::update_parent_link` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:328:17 [INFO] [stdout] | [INFO] [stdout] 328 | self.update_parent_link(node, Some(child)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:329:17 [INFO] [stdout] | [INFO] [stdout] 329 | (*child.as_ptr()).parent = (*node).parent; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:329:44 [INFO] [stdout] | [INFO] [stdout] 329 | (*child.as_ptr()).parent = (*node).parent; [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::boxed::Box::::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:330:28 [INFO] [stdout] | [INFO] [stdout] 330 | let node = Box::from_raw(node); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rebalance_after_remove` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:332:17 [INFO] [stdout] | [INFO] [stdout] 332 | self.rebalance_after_remove(parent); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::find_successor` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:337:33 [INFO] [stdout] | [INFO] [stdout] 337 | let successor = self.find_successor(node); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:338:32 [INFO] [stdout] | [INFO] [stdout] 338 | mem::swap(&mut (*node).data, &mut (*successor.as_ptr()).data); [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:338:51 [INFO] [stdout] | [INFO] [stdout] 338 | mem::swap(&mut (*node).data, &mut (*successor.as_ptr()).data); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::remove_node` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:339:17 [INFO] [stdout] | [INFO] [stdout] 339 | self.remove_node(successor) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:350:22 [INFO] [stdout] | [INFO] [stdout] 350 | let parent = (*node).parent; [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:345:5 [INFO] [stdout] | [INFO] [stdout] 345 | / unsafe fn update_parent_link( [INFO] [stdout] 346 | | &mut self, [INFO] [stdout] 347 | | node: *mut Node, [INFO] [stdout] 348 | | new_child: Option>>, [INFO] [stdout] 349 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:354:20 [INFO] [stdout] | [INFO] [stdout] 354 | if (*p.as_ptr()).left == Some(NonNull::new(node).unwrap()) { [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:355:21 [INFO] [stdout] | [INFO] [stdout] 355 | (*p.as_ptr()).left = new_child; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:357:21 [INFO] [stdout] | [INFO] [stdout] 357 | (*p.as_ptr()).right = new_child; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:365:27 [INFO] [stdout] | [INFO] [stdout] 365 | let mut current = (*node).right.unwrap(); [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:364:5 [INFO] [stdout] | [INFO] [stdout] 364 | unsafe fn find_successor(&self, node: *mut Node) -> NonNull> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:366:32 [INFO] [stdout] | [INFO] [stdout] 366 | while let Some(left) = (*current.as_ptr()).left { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `node` is never read [INFO] [stdout] --> src/core/collections/binary_tree.rs:383:17 [INFO] [stdout] | [INFO] [stdout] 383 | node = self.rotate_right(Some(n)); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `node` is never read [INFO] [stdout] --> src/core/collections/binary_tree.rs:389:17 [INFO] [stdout] | [INFO] [stdout] 389 | node = self.rotate_left(Some(n)); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:375:13 [INFO] [stdout] | [INFO] [stdout] 375 | (*n.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:373:5 [INFO] [stdout] | [INFO] [stdout] 373 | unsafe fn rebalance_after_remove(&mut self, mut node: Option>>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:376:27 [INFO] [stdout] | [INFO] [stdout] 376 | let balance = (*n.as_ptr()).balance_factor(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:379:28 [INFO] [stdout] | [INFO] [stdout] 379 | let left = (*n.as_ptr()).left.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:380:20 [INFO] [stdout] | [INFO] [stdout] 380 | if (*left.as_ptr()).balance_factor() < 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:381:21 [INFO] [stdout] | [INFO] [stdout] 381 | self.rotate_left(Some(left)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:383:24 [INFO] [stdout] | [INFO] [stdout] 383 | node = self.rotate_right(Some(n)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:385:29 [INFO] [stdout] | [INFO] [stdout] 385 | let right = (*n.as_ptr()).right.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:386:20 [INFO] [stdout] | [INFO] [stdout] 386 | if (*right.as_ptr()).balance_factor() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:387:21 [INFO] [stdout] | [INFO] [stdout] 387 | self.rotate_right(Some(right)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:389:24 [INFO] [stdout] | [INFO] [stdout] 389 | node = self.rotate_left(Some(n)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:392:20 [INFO] [stdout] | [INFO] [stdout] 392 | node = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/concurrent/lock_free_queue.rs:72:36 [INFO] [stdout] | [INFO] [stdout] 72 | NonNull::new(ptr).map(|p| &*p.as_ptr()) [INFO] [stdout] | ^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/concurrent/lock_free_queue.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | unsafe fn as_ref<'a>(ptr: *mut Self) -> Option<&'a Self> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling dstructs v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `old_head` [INFO] [stdout] --> src/core/concurrent/lock_free_queue.rs:153:25 [INFO] [stdout] | [INFO] [stdout] 153 | let old_head = Box::from_raw(head); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_head` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `SegmentStats` is more private than the item `ConcurrentHashMap::::get_stats` [INFO] [stdout] --> src/core/concurrent/concurrent_hash_map.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | pub fn get_stats(&self) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `ConcurrentHashMap::::get_stats` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `SegmentStats` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/core/concurrent/concurrent_hash_map.rs:39:1 [INFO] [stdout] | [INFO] [stdout] 39 | struct SegmentStats { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_valid_heap` is never used [INFO] [stdout] --> src/core/collections/binary_heap.rs:421:8 [INFO] [stdout] | [INFO] [stdout] 58 | impl BinaryHeap { [INFO] [stdout] | -------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 421 | fn is_valid_heap(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `height` is never used [INFO] [stdout] --> src/core/collections/binary_tree.rs:76:8 [INFO] [stdout] | [INFO] [stdout] 57 | impl Node { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 76 | fn height(&self) -> i32 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_deleted` is never used [INFO] [stdout] --> src/core/collections/hash_map.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 33 | impl Entry { [INFO] [stdout] | ---------------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 44 | fn new_deleted() -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `vec` and `range` are never read [INFO] [stdout] --> src/core/collections/vector.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Drain<'a, T: 'a> { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 18 | vec: &'a mut Vector, [INFO] [stdout] | ^^^ [INFO] [stdout] 19 | range: Range, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `contention_count` and `last_resize` are never read [INFO] [stdout] --> src/core/concurrent/concurrent_hash_map.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 39 | struct SegmentStats { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 40 | operations: u64, [INFO] [stdout] 41 | contention_count: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 42 | last_resize: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SegmentStats` has derived impls for the traits `Debug`, `Default`, and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::cell::RefCell` [INFO] [stdout] --> src/core/collections/graph.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use core::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloc::string::String` [INFO] [stdout] --> src/core/collections/graph.rs:884:9 [INFO] [stdout] | [INFO] [stdout] 884 | use alloc::string::String; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::hash_map::DefaultHasher` [INFO] [stdout] --> src/core/collections/hash_map.rs:449:13 [INFO] [stdout] | [INFO] [stdout] 449 | use std::collections::hash_map::DefaultHasher; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Display` [INFO] [stdout] --> src/core/collections/queue.rs:1:23 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fmt::{Debug, Display}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/core/concurrent/concurrent_hash_map.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate-level attribute should be in the root module [INFO] [stdout] --> src/core/collections/graph.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![no_std] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate-level attribute should be in the root module [INFO] [stdout] --> src/core/concurrent/lock_free_queue.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![no_std] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/collections/binary_heap.rs:139:21 [INFO] [stdout] | [INFO] [stdout] 139 | pub fn from_vec(mut vec: Vec, heap_type: HeapType) -> Self { [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/core/collections/binary_tree.rs:166:25 [INFO] [stdout] | [INFO] [stdout] 144 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 166 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/core/collections/binary_tree.rs:170:33 [INFO] [stdout] | [INFO] [stdout] 144 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 170 | let _ = unsafe { Box::from_raw(new_node.as_ptr()) }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `node` is never read [INFO] [stdout] --> src/core/collections/binary_tree.rs:219:17 [INFO] [stdout] | [INFO] [stdout] 219 | node = self.rotate_right(Some(n)); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `node` is never read [INFO] [stdout] --> src/core/collections/binary_tree.rs:225:17 [INFO] [stdout] | [INFO] [stdout] 225 | node = self.rotate_left(Some(n)); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:211:13 [INFO] [stdout] | [INFO] [stdout] 211 | (*n.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:209:5 [INFO] [stdout] | [INFO] [stdout] 209 | unsafe fn rebalance_after_insert(&mut self, mut node: Option>>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:212:27 [INFO] [stdout] | [INFO] [stdout] 212 | let balance = (*n.as_ptr()).balance_factor(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:215:28 [INFO] [stdout] | [INFO] [stdout] 215 | let left = (*n.as_ptr()).left.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:216:20 [INFO] [stdout] | [INFO] [stdout] 216 | if (*left.as_ptr()).balance_factor() < 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:217:21 [INFO] [stdout] | [INFO] [stdout] 217 | self.rotate_left(Some(left)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:219:24 [INFO] [stdout] | [INFO] [stdout] 219 | node = self.rotate_right(Some(n)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:221:29 [INFO] [stdout] | [INFO] [stdout] 221 | let right = (*n.as_ptr()).right.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:222:20 [INFO] [stdout] | [INFO] [stdout] 222 | if (*right.as_ptr()).balance_factor() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:223:21 [INFO] [stdout] | [INFO] [stdout] 223 | self.rotate_right(Some(right)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:225:24 [INFO] [stdout] | [INFO] [stdout] 225 | node = self.rotate_left(Some(n)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:228:20 [INFO] [stdout] | [INFO] [stdout] 228 | node = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:235:34 [INFO] [stdout] | [INFO] [stdout] 235 | if let Some(right) = (*n.as_ptr()).right { [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:233:5 [INFO] [stdout] | [INFO] [stdout] 233 | unsafe fn rotate_left(&mut self, node: Option>>) -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:236:17 [INFO] [stdout] | [INFO] [stdout] 236 | (*n.as_ptr()).right = (*right.as_ptr()).left; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:236:39 [INFO] [stdout] | [INFO] [stdout] 236 | (*n.as_ptr()).right = (*right.as_ptr()).left; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:237:37 [INFO] [stdout] | [INFO] [stdout] 237 | if let Some(left) = (*right.as_ptr()).left { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:238:21 [INFO] [stdout] | [INFO] [stdout] 238 | (*left.as_ptr()).parent = Some(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:240:17 [INFO] [stdout] | [INFO] [stdout] 240 | (*right.as_ptr()).left = Some(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:241:17 [INFO] [stdout] | [INFO] [stdout] 241 | (*right.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:241:44 [INFO] [stdout] | [INFO] [stdout] 241 | (*right.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:242:17 [INFO] [stdout] | [INFO] [stdout] 242 | (*n.as_ptr()).parent = Some(right); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:244:39 [INFO] [stdout] | [INFO] [stdout] 244 | if let Some(parent) = (*right.as_ptr()).parent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:245:24 [INFO] [stdout] | [INFO] [stdout] 245 | if (*parent.as_ptr()).left == Some(n) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:246:25 [INFO] [stdout] | [INFO] [stdout] 246 | (*parent.as_ptr()).left = Some(right); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:248:25 [INFO] [stdout] | [INFO] [stdout] 248 | (*parent.as_ptr()).right = Some(right); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:254:17 [INFO] [stdout] | [INFO] [stdout] 254 | (*n.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:255:17 [INFO] [stdout] | [INFO] [stdout] 255 | (*right.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:266:33 [INFO] [stdout] | [INFO] [stdout] 266 | if let Some(left) = (*n.as_ptr()).left { [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:264:5 [INFO] [stdout] | [INFO] [stdout] 264 | unsafe fn rotate_right(&mut self, node: Option>>) -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:267:17 [INFO] [stdout] | [INFO] [stdout] 267 | (*n.as_ptr()).left = (*left.as_ptr()).right; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:267:38 [INFO] [stdout] | [INFO] [stdout] 267 | (*n.as_ptr()).left = (*left.as_ptr()).right; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:268:38 [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(right) = (*left.as_ptr()).right { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:269:21 [INFO] [stdout] | [INFO] [stdout] 269 | (*right.as_ptr()).parent = Some(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:271:17 [INFO] [stdout] | [INFO] [stdout] 271 | (*left.as_ptr()).right = Some(n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:272:17 [INFO] [stdout] | [INFO] [stdout] 272 | (*left.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:272:43 [INFO] [stdout] | [INFO] [stdout] 272 | (*left.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:273:17 [INFO] [stdout] | [INFO] [stdout] 273 | (*n.as_ptr()).parent = Some(left); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:275:39 [INFO] [stdout] | [INFO] [stdout] 275 | if let Some(parent) = (*left.as_ptr()).parent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:276:24 [INFO] [stdout] | [INFO] [stdout] 276 | if (*parent.as_ptr()).left == Some(n) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:277:25 [INFO] [stdout] | [INFO] [stdout] 277 | (*parent.as_ptr()).left = Some(left); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:279:25 [INFO] [stdout] | [INFO] [stdout] 279 | (*parent.as_ptr()).right = Some(left); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:285:17 [INFO] [stdout] | [INFO] [stdout] 285 | (*n.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:286:17 [INFO] [stdout] | [INFO] [stdout] 286 | (*left.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:314:22 [INFO] [stdout] | [INFO] [stdout] 314 | let parent = (*node).parent; [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:312:5 [INFO] [stdout] | [INFO] [stdout] 312 | unsafe fn remove_node(&mut self, node: NonNull>) -> T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:316:16 [INFO] [stdout] | [INFO] [stdout] 316 | match ((*node).left, (*node).right) { [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:316:30 [INFO] [stdout] | [INFO] [stdout] 316 | match ((*node).left, (*node).right) { [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::update_parent_link` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:319:17 [INFO] [stdout] | [INFO] [stdout] 319 | self.update_parent_link(node, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::boxed::Box::::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:320:28 [INFO] [stdout] | [INFO] [stdout] 320 | let node = Box::from_raw(node); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rebalance_after_remove` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:322:17 [INFO] [stdout] | [INFO] [stdout] 322 | self.rebalance_after_remove(parent); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::update_parent_link` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:328:17 [INFO] [stdout] | [INFO] [stdout] 328 | self.update_parent_link(node, Some(child)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:329:17 [INFO] [stdout] | [INFO] [stdout] 329 | (*child.as_ptr()).parent = (*node).parent; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:329:44 [INFO] [stdout] | [INFO] [stdout] 329 | (*child.as_ptr()).parent = (*node).parent; [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::boxed::Box::::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:330:28 [INFO] [stdout] | [INFO] [stdout] 330 | let node = Box::from_raw(node); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rebalance_after_remove` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:332:17 [INFO] [stdout] | [INFO] [stdout] 332 | self.rebalance_after_remove(parent); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::find_successor` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:337:33 [INFO] [stdout] | [INFO] [stdout] 337 | let successor = self.find_successor(node); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:338:32 [INFO] [stdout] | [INFO] [stdout] 338 | mem::swap(&mut (*node).data, &mut (*successor.as_ptr()).data); [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:338:51 [INFO] [stdout] | [INFO] [stdout] 338 | mem::swap(&mut (*node).data, &mut (*successor.as_ptr()).data); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::remove_node` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:339:17 [INFO] [stdout] | [INFO] [stdout] 339 | self.remove_node(successor) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:350:22 [INFO] [stdout] | [INFO] [stdout] 350 | let parent = (*node).parent; [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:345:5 [INFO] [stdout] | [INFO] [stdout] 345 | / unsafe fn update_parent_link( [INFO] [stdout] 346 | | &mut self, [INFO] [stdout] 347 | | node: *mut Node, [INFO] [stdout] 348 | | new_child: Option>>, [INFO] [stdout] 349 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:354:20 [INFO] [stdout] | [INFO] [stdout] 354 | if (*p.as_ptr()).left == Some(NonNull::new(node).unwrap()) { [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:355:21 [INFO] [stdout] | [INFO] [stdout] 355 | (*p.as_ptr()).left = new_child; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:357:21 [INFO] [stdout] | [INFO] [stdout] 357 | (*p.as_ptr()).right = new_child; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:365:27 [INFO] [stdout] | [INFO] [stdout] 365 | let mut current = (*node).right.unwrap(); [INFO] [stdout] | ^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:364:5 [INFO] [stdout] | [INFO] [stdout] 364 | unsafe fn find_successor(&self, node: *mut Node) -> NonNull> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:366:32 [INFO] [stdout] | [INFO] [stdout] 366 | while let Some(left) = (*current.as_ptr()).left { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `node` is never read [INFO] [stdout] --> src/core/collections/binary_tree.rs:383:17 [INFO] [stdout] | [INFO] [stdout] 383 | node = self.rotate_right(Some(n)); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `node` is never read [INFO] [stdout] --> src/core/collections/binary_tree.rs:389:17 [INFO] [stdout] | [INFO] [stdout] 389 | node = self.rotate_left(Some(n)); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:375:13 [INFO] [stdout] | [INFO] [stdout] 375 | (*n.as_ptr()).update_height(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/collections/binary_tree.rs:373:5 [INFO] [stdout] | [INFO] [stdout] 373 | unsafe fn rebalance_after_remove(&mut self, mut node: Option>>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:376:27 [INFO] [stdout] | [INFO] [stdout] 376 | let balance = (*n.as_ptr()).balance_factor(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:379:28 [INFO] [stdout] | [INFO] [stdout] 379 | let left = (*n.as_ptr()).left.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:380:20 [INFO] [stdout] | [INFO] [stdout] 380 | if (*left.as_ptr()).balance_factor() < 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:381:21 [INFO] [stdout] | [INFO] [stdout] 381 | self.rotate_left(Some(left)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:383:24 [INFO] [stdout] | [INFO] [stdout] 383 | node = self.rotate_right(Some(n)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:385:29 [INFO] [stdout] | [INFO] [stdout] 385 | let right = (*n.as_ptr()).right.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:386:20 [INFO] [stdout] | [INFO] [stdout] 386 | if (*right.as_ptr()).balance_factor() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:387:21 [INFO] [stdout] | [INFO] [stdout] 387 | self.rotate_right(Some(right)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:389:24 [INFO] [stdout] | [INFO] [stdout] 389 | node = self.rotate_left(Some(n)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/collections/binary_tree.rs:392:20 [INFO] [stdout] | [INFO] [stdout] 392 | node = (*n.as_ptr()).parent; [INFO] [stdout] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/core/collections/graph.rs:890:13 [INFO] [stdout] | [INFO] [stdout] 890 | let mut graph: Graph = Graph::new(false); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/core/concurrent/lock_free_queue.rs:72:36 [INFO] [stdout] | [INFO] [stdout] 72 | NonNull::new(ptr).map(|p| &*p.as_ptr()) [INFO] [stdout] | ^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/core/concurrent/lock_free_queue.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | unsafe fn as_ref<'a>(ptr: *mut Self) -> Option<&'a Self> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `old_head` [INFO] [stdout] --> src/core/concurrent/lock_free_queue.rs:153:25 [INFO] [stdout] | [INFO] [stdout] 153 | let old_head = Box::from_raw(head); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_head` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `SegmentStats` is more private than the item `concurrent_hash_map::ConcurrentHashMap::::get_stats` [INFO] [stdout] --> src/core/concurrent/concurrent_hash_map.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | pub fn get_stats(&self) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `concurrent_hash_map::ConcurrentHashMap::::get_stats` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `SegmentStats` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/core/concurrent/concurrent_hash_map.rs:39:1 [INFO] [stdout] | [INFO] [stdout] 39 | struct SegmentStats { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `height` is never used [INFO] [stdout] --> src/core/collections/binary_tree.rs:76:8 [INFO] [stdout] | [INFO] [stdout] 57 | impl Node { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 76 | fn height(&self) -> i32 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_deleted` is never used [INFO] [stdout] --> src/core/collections/hash_map.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 33 | impl Entry { [INFO] [stdout] | ---------------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 44 | fn new_deleted() -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `vec` and `range` are never read [INFO] [stdout] --> src/core/collections/vector.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Drain<'a, T: 'a> { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 18 | vec: &'a mut Vector, [INFO] [stdout] | ^^^ [INFO] [stdout] 19 | range: Range, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `contention_count` and `last_resize` are never read [INFO] [stdout] --> src/core/concurrent/concurrent_hash_map.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 39 | struct SegmentStats { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 40 | operations: u64, [INFO] [stdout] 41 | contention_count: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 42 | last_resize: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SegmentStats` has derived impls for the traits `Debug`, `Default`, and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2.93s [INFO] running `Command { std: "docker" "inspect" "cd1d133bf8c5506117953c12cc55a31b38bc1ce53bc1d67340795c1df2e71147", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cd1d133bf8c5506117953c12cc55a31b38bc1ce53bc1d67340795c1df2e71147", kill_on_drop: false }` [INFO] [stdout] cd1d133bf8c5506117953c12cc55a31b38bc1ce53bc1d67340795c1df2e71147 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] e795e7b64c1a90fb7524e046579b7fd6efefb18ad1819029088ec3785c4fc269 [INFO] running `Command { std: "docker" "start" "-a" "e795e7b64c1a90fb7524e046579b7fd6efefb18ad1819029088ec3785c4fc269", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `core::cell::RefCell` [INFO] [stderr] --> src/core/collections/graph.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use core::cell::RefCell; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Display` [INFO] [stderr] --> src/core/collections/queue.rs:1:23 [INFO] [stderr] | [INFO] [stderr] 1 | use std::fmt::{Debug, Display}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::Rng` [INFO] [stderr] --> src/core/concurrent/concurrent_hash_map.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use rand::Rng; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::thread` [INFO] [stderr] --> src/core/concurrent/concurrent_hash_map.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use std::thread; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: crate-level attribute should be in the root module [INFO] [stderr] --> src/core/collections/graph.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #![no_std] [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_attributes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: crate-level attribute should be in the root module [INFO] [stderr] --> src/core/concurrent/lock_free_queue.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #![no_std] [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/collections/binary_heap.rs:139:21 [INFO] [stderr] | [INFO] [stderr] 139 | pub fn from_vec(mut vec: Vec, heap_type: HeapType) -> Self { [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/core/collections/binary_tree.rs:166:25 [INFO] [stderr] | [INFO] [stderr] 144 | unsafe { [INFO] [stderr] | ------ because it's nested under this `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 166 | 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/core/collections/binary_tree.rs:170:33 [INFO] [stderr] | [INFO] [stderr] 144 | unsafe { [INFO] [stderr] | ------ because it's nested under this `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 170 | let _ = unsafe { Box::from_raw(new_node.as_ptr()) }; [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: value assigned to `node` is never read [INFO] [stderr] --> src/core/collections/binary_tree.rs:219:17 [INFO] [stderr] | [INFO] [stderr] 219 | node = self.rotate_right(Some(n)); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `node` is never read [INFO] [stderr] --> src/core/collections/binary_tree.rs:225:17 [INFO] [stderr] | [INFO] [stderr] 225 | node = self.rotate_left(Some(n)); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:211:13 [INFO] [stderr] | [INFO] [stderr] 211 | (*n.as_ptr()).update_height(); [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/core/collections/binary_tree.rs:209:5 [INFO] [stderr] | [INFO] [stderr] 209 | unsafe fn rebalance_after_insert(&mut self, mut node: Option>>) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(unsafe_op_in_unsafe_fn)]` on by default [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:212:27 [INFO] [stderr] | [INFO] [stderr] 212 | let balance = (*n.as_ptr()).balance_factor(); [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:215:28 [INFO] [stderr] | [INFO] [stderr] 215 | let left = (*n.as_ptr()).left.unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:216:20 [INFO] [stderr] | [INFO] [stderr] 216 | if (*left.as_ptr()).balance_factor() < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:217:21 [INFO] [stderr] | [INFO] [stderr] 217 | self.rotate_left(Some(left)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:219:24 [INFO] [stderr] | [INFO] [stderr] 219 | node = self.rotate_right(Some(n)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:221:29 [INFO] [stderr] | [INFO] [stderr] 221 | let right = (*n.as_ptr()).right.unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:222:20 [INFO] [stderr] | [INFO] [stderr] 222 | if (*right.as_ptr()).balance_factor() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:223:21 [INFO] [stderr] | [INFO] [stderr] 223 | self.rotate_right(Some(right)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:225:24 [INFO] [stderr] | [INFO] [stderr] 225 | node = self.rotate_left(Some(n)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:228:20 [INFO] [stderr] | [INFO] [stderr] 228 | node = (*n.as_ptr()).parent; [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:235:34 [INFO] [stderr] | [INFO] [stderr] 235 | if let Some(right) = (*n.as_ptr()).right { [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/core/collections/binary_tree.rs:233:5 [INFO] [stderr] | [INFO] [stderr] 233 | unsafe fn rotate_left(&mut self, node: Option>>) -> Option>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:236:17 [INFO] [stderr] | [INFO] [stderr] 236 | (*n.as_ptr()).right = (*right.as_ptr()).left; [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:236:39 [INFO] [stderr] | [INFO] [stderr] 236 | (*n.as_ptr()).right = (*right.as_ptr()).left; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:237:37 [INFO] [stderr] | [INFO] [stderr] 237 | if let Some(left) = (*right.as_ptr()).left { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:238:21 [INFO] [stderr] | [INFO] [stderr] 238 | (*left.as_ptr()).parent = Some(n); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:240:17 [INFO] [stderr] | [INFO] [stderr] 240 | (*right.as_ptr()).left = Some(n); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:241:17 [INFO] [stderr] | [INFO] [stderr] 241 | (*right.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:241:44 [INFO] [stderr] | [INFO] [stderr] 241 | (*right.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:242:17 [INFO] [stderr] | [INFO] [stderr] 242 | (*n.as_ptr()).parent = Some(right); [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:244:39 [INFO] [stderr] | [INFO] [stderr] 244 | if let Some(parent) = (*right.as_ptr()).parent { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:245:24 [INFO] [stderr] | [INFO] [stderr] 245 | if (*parent.as_ptr()).left == Some(n) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:246:25 [INFO] [stderr] | [INFO] [stderr] 246 | (*parent.as_ptr()).left = Some(right); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:248:25 [INFO] [stderr] | [INFO] [stderr] 248 | (*parent.as_ptr()).right = Some(right); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:254:17 [INFO] [stderr] | [INFO] [stderr] 254 | (*n.as_ptr()).update_height(); [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:255:17 [INFO] [stderr] | [INFO] [stderr] 255 | (*right.as_ptr()).update_height(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:266:33 [INFO] [stderr] | [INFO] [stderr] 266 | if let Some(left) = (*n.as_ptr()).left { [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/core/collections/binary_tree.rs:264:5 [INFO] [stderr] | [INFO] [stderr] 264 | unsafe fn rotate_right(&mut self, node: Option>>) -> Option>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:267:17 [INFO] [stderr] | [INFO] [stderr] 267 | (*n.as_ptr()).left = (*left.as_ptr()).right; [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:267:38 [INFO] [stderr] | [INFO] [stderr] 267 | (*n.as_ptr()).left = (*left.as_ptr()).right; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:268:38 [INFO] [stderr] | [INFO] [stderr] 268 | if let Some(right) = (*left.as_ptr()).right { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:269:21 [INFO] [stderr] | [INFO] [stderr] 269 | (*right.as_ptr()).parent = Some(n); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:271:17 [INFO] [stderr] | [INFO] [stderr] 271 | (*left.as_ptr()).right = Some(n); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:272:17 [INFO] [stderr] | [INFO] [stderr] 272 | (*left.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:272:43 [INFO] [stderr] | [INFO] [stderr] 272 | (*left.as_ptr()).parent = (*n.as_ptr()).parent; [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:273:17 [INFO] [stderr] | [INFO] [stderr] 273 | (*n.as_ptr()).parent = Some(left); [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:275:39 [INFO] [stderr] | [INFO] [stderr] 275 | if let Some(parent) = (*left.as_ptr()).parent { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:276:24 [INFO] [stderr] | [INFO] [stderr] 276 | if (*parent.as_ptr()).left == Some(n) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:277:25 [INFO] [stderr] | [INFO] [stderr] 277 | (*parent.as_ptr()).left = Some(left); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:279:25 [INFO] [stderr] | [INFO] [stderr] 279 | (*parent.as_ptr()).right = Some(left); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:285:17 [INFO] [stderr] | [INFO] [stderr] 285 | (*n.as_ptr()).update_height(); [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:286:17 [INFO] [stderr] | [INFO] [stderr] 286 | (*left.as_ptr()).update_height(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:314:22 [INFO] [stderr] | [INFO] [stderr] 314 | let parent = (*node).parent; [INFO] [stderr] | ^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/core/collections/binary_tree.rs:312:5 [INFO] [stderr] | [INFO] [stderr] 312 | unsafe fn remove_node(&mut self, node: NonNull>) -> T { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:316:16 [INFO] [stderr] | [INFO] [stderr] 316 | match ((*node).left, (*node).right) { [INFO] [stderr] | ^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:316:30 [INFO] [stderr] | [INFO] [stderr] 316 | match ((*node).left, (*node).right) { [INFO] [stderr] | ^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::update_parent_link` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:319:17 [INFO] [stderr] | [INFO] [stderr] 319 | self.update_parent_link(node, None); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::boxed::Box::::from_raw` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:320:28 [INFO] [stderr] | [INFO] [stderr] 320 | let node = Box::from_raw(node); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rebalance_after_remove` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:322:17 [INFO] [stderr] | [INFO] [stderr] 322 | self.rebalance_after_remove(parent); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::update_parent_link` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:328:17 [INFO] [stderr] | [INFO] [stderr] 328 | self.update_parent_link(node, Some(child)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:329:17 [INFO] [stderr] | [INFO] [stderr] 329 | (*child.as_ptr()).parent = (*node).parent; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:329:44 [INFO] [stderr] | [INFO] [stderr] 329 | (*child.as_ptr()).parent = (*node).parent; [INFO] [stderr] | ^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::boxed::Box::::from_raw` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:330:28 [INFO] [stderr] | [INFO] [stderr] 330 | let node = Box::from_raw(node); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rebalance_after_remove` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:332:17 [INFO] [stderr] | [INFO] [stderr] 332 | self.rebalance_after_remove(parent); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::find_successor` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:337:33 [INFO] [stderr] | [INFO] [stderr] 337 | let successor = self.find_successor(node); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:338:32 [INFO] [stderr] | [INFO] [stderr] 338 | mem::swap(&mut (*node).data, &mut (*successor.as_ptr()).data); [INFO] [stderr] | ^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:338:51 [INFO] [stderr] | [INFO] [stderr] 338 | mem::swap(&mut (*node).data, &mut (*successor.as_ptr()).data); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::remove_node` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:339:17 [INFO] [stderr] | [INFO] [stderr] 339 | self.remove_node(successor) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:350:22 [INFO] [stderr] | [INFO] [stderr] 350 | let parent = (*node).parent; [INFO] [stderr] | ^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/core/collections/binary_tree.rs:345:5 [INFO] [stderr] | [INFO] [stderr] 345 | / unsafe fn update_parent_link( [INFO] [stderr] 346 | | &mut self, [INFO] [stderr] 347 | | node: *mut Node, [INFO] [stderr] 348 | | new_child: Option>>, [INFO] [stderr] 349 | | ) { [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:354:20 [INFO] [stderr] | [INFO] [stderr] 354 | if (*p.as_ptr()).left == Some(NonNull::new(node).unwrap()) { [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:355:21 [INFO] [stderr] | [INFO] [stderr] 355 | (*p.as_ptr()).left = new_child; [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:357:21 [INFO] [stderr] | [INFO] [stderr] 357 | (*p.as_ptr()).right = new_child; [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:365:27 [INFO] [stderr] | [INFO] [stderr] 365 | let mut current = (*node).right.unwrap(); [INFO] [stderr] | ^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/core/collections/binary_tree.rs:364:5 [INFO] [stderr] | [INFO] [stderr] 364 | unsafe fn find_successor(&self, node: *mut Node) -> NonNull> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:366:32 [INFO] [stderr] | [INFO] [stderr] 366 | while let Some(left) = (*current.as_ptr()).left { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning: value assigned to `node` is never read [INFO] [stderr] --> src/core/collections/binary_tree.rs:383:17 [INFO] [stderr] | [INFO] [stderr] 383 | node = self.rotate_right(Some(n)); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `node` is never read [INFO] [stderr] --> src/core/collections/binary_tree.rs:389:17 [INFO] [stderr] | [INFO] [stderr] 389 | node = self.rotate_left(Some(n)); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:375:13 [INFO] [stderr] | [INFO] [stderr] 375 | (*n.as_ptr()).update_height(); [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/core/collections/binary_tree.rs:373:5 [INFO] [stderr] | [INFO] [stderr] 373 | unsafe fn rebalance_after_remove(&mut self, mut node: Option>>) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:376:27 [INFO] [stderr] | [INFO] [stderr] 376 | let balance = (*n.as_ptr()).balance_factor(); [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:379:28 [INFO] [stderr] | [INFO] [stderr] 379 | let left = (*n.as_ptr()).left.unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:380:20 [INFO] [stderr] | [INFO] [stderr] 380 | if (*left.as_ptr()).balance_factor() < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:381:21 [INFO] [stderr] | [INFO] [stderr] 381 | self.rotate_left(Some(left)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:383:24 [INFO] [stderr] | [INFO] [stderr] 383 | node = self.rotate_right(Some(n)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:385:29 [INFO] [stderr] | [INFO] [stderr] 385 | let right = (*n.as_ptr()).right.unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:386:20 [INFO] [stderr] | [INFO] [stderr] 386 | if (*right.as_ptr()).balance_factor() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_right` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:387:21 [INFO] [stderr] | [INFO] [stderr] 387 | self.rotate_right(Some(right)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::collections::binary_tree::BinaryTree::::rotate_left` is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:389:24 [INFO] [stderr] | [INFO] [stderr] 389 | node = self.rotate_left(Some(n)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/collections/binary_tree.rs:392:20 [INFO] [stderr] | [INFO] [stderr] 392 | node = (*n.as_ptr()).parent; [INFO] [stderr] | ^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stderr] --> src/core/concurrent/lock_free_queue.rs:72:36 [INFO] [stderr] | [INFO] [stderr] 72 | NonNull::new(ptr).map(|p| &*p.as_ptr()) [INFO] [stderr] | ^^^^^^^^^^^ dereference of raw pointer [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/core/concurrent/lock_free_queue.rs:71:5 [INFO] [stderr] | [INFO] [stderr] 71 | unsafe fn as_ref<'a>(ptr: *mut Self) -> Option<&'a Self> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `old_head` [INFO] [stderr] --> src/core/concurrent/lock_free_queue.rs:153:25 [INFO] [stderr] | [INFO] [stderr] 153 | let old_head = Box::from_raw(head); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_old_head` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: type `SegmentStats` is more private than the item `ConcurrentHashMap::::get_stats` [INFO] [stderr] --> src/core/concurrent/concurrent_hash_map.rs:127:5 [INFO] [stderr] | [INFO] [stderr] 127 | pub fn get_stats(&self) -> HashMap { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `ConcurrentHashMap::::get_stats` is reachable at visibility `pub` [INFO] [stderr] | [INFO] [stderr] note: but type `SegmentStats` is only usable at visibility `pub(self)` [INFO] [stderr] --> src/core/concurrent/concurrent_hash_map.rs:39:1 [INFO] [stderr] | [INFO] [stderr] 39 | struct SegmentStats { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(private_interfaces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method `is_valid_heap` is never used [INFO] [stderr] --> src/core/collections/binary_heap.rs:421:8 [INFO] [stderr] | [INFO] [stderr] 58 | impl BinaryHeap { [INFO] [stderr] | -------------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 421 | fn is_valid_heap(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method `height` is never used [INFO] [stderr] --> src/core/collections/binary_tree.rs:76:8 [INFO] [stderr] | [INFO] [stderr] 57 | impl Node { [INFO] [stderr] | --------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 76 | fn height(&self) -> i32 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new_deleted` is never used [INFO] [stderr] --> src/core/collections/hash_map.rs:44:8 [INFO] [stderr] | [INFO] [stderr] 33 | impl Entry { [INFO] [stderr] | ---------------------- associated function in this implementation [INFO] [stderr] ... [INFO] [stderr] 44 | fn new_deleted() -> Self { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `vec` and `range` are never read [INFO] [stderr] --> src/core/collections/vector.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 17 | pub struct Drain<'a, T: 'a> { [INFO] [stderr] | ----- fields in this struct [INFO] [stderr] 18 | vec: &'a mut Vector, [INFO] [stderr] | ^^^ [INFO] [stderr] 19 | range: Range, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `contention_count` and `last_resize` are never read [INFO] [stderr] --> src/core/concurrent/concurrent_hash_map.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 39 | struct SegmentStats { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] 40 | operations: u64, [INFO] [stderr] 41 | contention_count: u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 42 | last_resize: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `SegmentStats` has derived impls for the traits `Debug`, `Default`, and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0133`. [INFO] [stderr] warning: unused import: `alloc::string::String` [INFO] [stderr] --> src/core/collections/graph.rs:884:9 [INFO] [stderr] | [INFO] [stderr] 884 | use alloc::string::String; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::hash_map::DefaultHasher` [INFO] [stderr] --> src/core/collections/hash_map.rs:449:13 [INFO] [stderr] | [INFO] [stderr] 449 | use std::collections::hash_map::DefaultHasher; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/core/collections/graph.rs:890:13 [INFO] [stderr] | [INFO] [stderr] 890 | let mut graph: Graph = Graph::new(false); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: type `SegmentStats` is more private than the item `concurrent_hash_map::ConcurrentHashMap::::get_stats` [INFO] [stderr] --> src/core/concurrent/concurrent_hash_map.rs:127:5 [INFO] [stderr] | [INFO] [stderr] 127 | pub fn get_stats(&self) -> HashMap { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `concurrent_hash_map::ConcurrentHashMap::::get_stats` is reachable at visibility `pub` [INFO] [stderr] | [INFO] [stderr] note: but type `SegmentStats` is only usable at visibility `pub(self)` [INFO] [stderr] --> src/core/concurrent/concurrent_hash_map.rs:39:1 [INFO] [stderr] | [INFO] [stderr] 39 | struct SegmentStats { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(private_interfaces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method `height` is never used [INFO] [stderr] --> src/core/collections/binary_tree.rs:76:8 [INFO] [stderr] | [INFO] [stderr] 57 | impl Node { [INFO] [stderr] | --------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 76 | fn height(&self) -> i32 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `dstructs` (lib) generated 94 warnings (run `cargo fix --lib -p dstructs` to apply 13 suggestions) [INFO] [stderr] warning: `dstructs` (lib test) generated 95 warnings (90 duplicates) (run `cargo fix --lib -p dstructs --tests` to apply 3 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/dstructs-4426e678cf49182e) [INFO] [stdout] [INFO] [stdout] running 86 tests [INFO] [stdout] test core::collections::binary_heap::tests::test_capacity ... ok [INFO] [stdout] test core::collections::binary_heap::tests::test_clear ... ok [INFO] [stdout] test core::collections::binary_heap::tests::test_extend ... ok [INFO] [stdout] test core::collections::binary_heap::tests::test_from_iterator ... ok [INFO] [stdout] test core::collections::binary_heap::tests::test_from_vec ... ok [INFO] [stdout] test core::collections::binary_heap::tests::test_increase_key ... ok [INFO] [stdout] test core::collections::binary_heap::tests::test_merge ... ok [INFO] [stdout] test core::collections::binary_heap::tests::test_max_heap ... ok [INFO] [stdout] test core::collections::binary_heap::tests::test_decrease_key ... ok [INFO] [stdout] test core::collections::binary_heap::tests::test_peek ... ok [INFO] [stdout] test core::collections::binary_heap::tests::test_priority_queue ... ok [INFO] [stdout] test core::collections::binary_heap::tests::test_min_heap ... ok [INFO] [stdout] test core::collections::binary_tree::tests::test_custom_comparator ... ok [INFO] [stdout] test core::collections::binary_tree::tests::test_insert_and_find ... ok [INFO] [stdout] test core::collections::binary_tree::tests::test_iterators ... ok [INFO] [stdout] test core::collections::binary_heap::tests::test_remove ... ok [INFO] [stdout] test core::collections::binary_tree::tests::test_balance ... ok [INFO] [stdout] test core::collections::graph::tests::test_disconnected_graph ... ok [INFO] [stdout] test core::collections::graph::tests::test_add_vertex ... ok [INFO] [stdout] test core::collections::graph::tests::test_add_edge ... ok [INFO] [stdout] test core::collections::graph::tests::test_graph_creation ... ok [INFO] [stdout] test core::collections::graph::tests::test_dfs ... ok [INFO] [stdout] test core::collections::graph::tests::test_graph_traversal_with_cycles ... ok [INFO] [stdout] test core::collections::graph::tests::test_dfs_recursive ... ok [INFO] [stdout] test core::collections::graph::tests::test_cycle_with_self_loop ... ok [INFO] [stdout] test core::collections::graph::tests::test_has_cycle_undirected ... ok [INFO] [stdout] test core::collections::graph::tests::test_has_directed_cycle ... ok [INFO] [stdout] test core::collections::graph::tests::test_is_connected ... ok [INFO] [stdout] test core::collections::graph::tests::test_is_strongly_connected ... ok [INFO] [stdout] test core::collections::graph::tests::test_remove_edge ... ok [INFO] [stdout] test core::collections::graph::tests::test_remove_vertex ... ok [INFO] [stdout] test core::collections::graph::tests::test_shortest_path ... ok [INFO] [stdout] test core::collections::graph::tests::test_shortest_path_no_path ... ok [INFO] [stdout] test core::collections::graph::tests::test_topological_sort ... ok [INFO] [stdout] test core::collections::graph::tests::test_topological_sort_empty_and_single ... ok [INFO] [stdout] test core::collections::graph::tests::test_bfs ... ok [INFO] [stdout] test core::collections::graph::tests::test_shortest_path_with_cycles ... ok [INFO] [stdout] test core::collections::graph::tests::test_topological_sort_undirected ... ok [INFO] [stdout] test core::collections::graph::tests::test_topological_sort_with_cycle ... ok [INFO] [stdout] test core::collections::list::tests::test_into_iterator ... ok [INFO] [stdout] test core::collections::hash_map::tests::test_rehash ... ok [INFO] [stdout] test core::collections::list::tests::test_iterator ... ok [INFO] [stdout] test core::collections::hash_map::tests::test_custom_hasher ... ok [INFO] [stdout] test core::collections::hash_map::tests::test_iterators ... ok [INFO] [stdout] test core::collections::list::tests::test_iterator_mut ... ok [INFO] [stdout] test core::collections::list::tests::test_mixed_operations ... ok [INFO] [stdout] test core::collections::list::tests::test_push_pop_back ... ok [INFO] [stdout] test core::collections::binary_tree::tests::test_remove ... ok [INFO] [stdout] test core::collections::queue::tests::test_clear ... ok [INFO] [stdout] test core::collections::queue::tests::test_full_queue ... ok [INFO] [stdout] test core::collections::queue::tests::test_peek ... ok [INFO] [stdout] test core::collections::stack::tests::test_drain ... ok [INFO] [stdout] test core::collections::stack::tests::test_as_slice ... ok [INFO] [stdout] test core::collections::queue::tests::test_circular_behavior ... ok [INFO] [stdout] test core::collections::list::tests::test_push_pop_front ... ok [INFO] [stdout] test core::collections::stack::tests::test_extend ... ok [INFO] [stdout] test core::collections::stack::tests::test_from_iterator ... ok [INFO] [stdout] test core::collections::stack::tests::test_iterator ... ok [INFO] [stdout] test core::collections::stack::tests::test_stack_basic_operations ... ok [INFO] [stdout] test core::collections::stack::tests::test_from_vec ... ok [INFO] [stdout] test core::collections::stack::tests::test_stack_capacity ... ok [INFO] [stdout] test core::collections::hash_map::tests::test_basic_operations ... ok [INFO] [stdout] test core::collections::queue::tests::test_new_queue ... ok [INFO] [stdout] test core::collections::queue::tests::test_enqueue_dequeue ... ok [INFO] [stdout] test core::collections::vector::tests::test_append ... ok [INFO] [stdout] test core::collections::vector::tests::test_insert_remove ... ok [INFO] [stdout] test core::collections::vector::tests::test_vector_clear ... ok [INFO] [stdout] test core::collections::vector::tests::test_performance_critical_path ... ok [INFO] [stdout] test core::collections::vector::tests::test_into_iterator ... ok [INFO] [stdout] test core::collections::vector::tests::test_split_off ... ok [INFO] [stdout] test core::collections::vector::tests::test_vector_extend ... ok [INFO] [stdout] test core::collections::vector::tests::test_vector_from_vec ... ok [INFO] [stdout] test core::collections::vector::tests::test_vector_pop ... ok [INFO] [stdout] test core::collections::vector::tests::test_vector_push ... ok [INFO] [stdout] test core::collections::vector::tests::test_vector_spill ... ok [INFO] [stdout] test core::collections::vector::tests::test_vector_creation ... ok [INFO] [stdout] test core::concurrent::lock_free_queue::tests::test_basic_operations ... ok [INFO] [stdout] test core::collections::vector::tests::test_from_iterator ... ok [INFO] [stdout] test core::concurrent::lock_free_queue::tests::test_multiple_pushes_pops ... ok [INFO] [stdout] test core::collections::vector::tests::test_retain ... ok [INFO] [stdout] test core::collections::stack::tests::test_stack_peek ... ok [INFO] [stdout] test core::collections::vector::tests::test_slice_operations ... ok [INFO] [stdout] test core::concurrent::lock_free_queue::tests::test_peek ... ok [INFO] [stdout] test core::concurrent::concurrent_hash_map::tests::test_basic_operations ... ok [INFO] [stdout] test core::concurrent::concurrent_hash_map::tests::test_concurrent_operations_with_metrics ... ok [INFO] [stdout] test core::concurrent::concurrent_hash_map::tests::test_concurrent_operations ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 86 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.32s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "e795e7b64c1a90fb7524e046579b7fd6efefb18ad1819029088ec3785c4fc269", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e795e7b64c1a90fb7524e046579b7fd6efefb18ad1819029088ec3785c4fc269", kill_on_drop: false }` [INFO] [stdout] e795e7b64c1a90fb7524e046579b7fd6efefb18ad1819029088ec3785c4fc269