[INFO] fetching crate preemptive-threads 0.5.0-beta...
[INFO] testing preemptive-threads-0.5.0-beta against beta-2025-10-28 for beta-1.92-2
[INFO] extracting crate preemptive-threads 0.5.0-beta into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate preemptive-threads 0.5.0-beta
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate preemptive-threads 0.5.0-beta
[INFO] tweaked toml for crates.io crate preemptive-threads 0.5.0-beta written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate preemptive-threads 0.5.0-beta on toolchain beta-2025-10-28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate preemptive-threads 0.5.0-beta 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" "+beta-2025-10-28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1952cc8a654f9985cb567fb75b3f04b3b74a0dc1a42c39de92de8174c9d845c2
[INFO] running `Command { std: "docker" "start" "-a" "1952cc8a654f9985cb567fb75b3f04b3b74a0dc1a42c39de92de8174c9d845c2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1952cc8a654f9985cb567fb75b3f04b3b74a0dc1a42c39de92de8174c9d845c2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1952cc8a654f9985cb567fb75b3f04b3b74a0dc1a42c39de92de8174c9d845c2", kill_on_drop: false }`
[INFO] [stdout] 1952cc8a654f9985cb567fb75b3f04b3b74a0dc1a42c39de92de8174c9d845c2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bc1a00bc845ee4e21cc279173284096dccedba44d93ada080ca750a7aa82afe5
[INFO] running `Command { std: "docker" "start" "-a" "bc1a00bc845ee4e21cc279173284096dccedba44d93ada080ca750a7aa82afe5", kill_on_drop: false }`
[INFO] [stderr]    Compiling portable-atomic v1.11.1
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling preemptive-threads v0.5.0-beta (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/mem/arc_lite.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::ptr::{self, NonNull};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::arch::asm`
[INFO] [stdout]  --> src/security/cfi.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use core::arch::asm;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::arch::asm`
[INFO] [stdout]  --> src/security/crypto_rng.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use core::arch::asm;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vec`
[INFO] [stdout]  --> src/security/aslr.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use alloc::{vec, vec::Vec};
[INFO] [stdout]   |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/security/mod.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 296 |             crate::exit_thread();
[INFO] [stdout]     |             -------------------- any code following this expression is unreachable
[INFO] [stdout] 297 |             unreachable!("Thread should have been terminated");
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/kernel.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |             unsafe {
[INFO] [stdout]    |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/kernel.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |             unsafe {
[INFO] [stdout]    |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry_wrapper`
[INFO] [stdout]    --> src/kernel.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 137 |         let entry_wrapper = move || {
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entry_wrapper`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current`
[INFO] [stdout]    --> src/kernel.rs:198:33
[INFO] [stdout]     |
[INFO] [stdout] 198 |                     if let Some(current) = current_guard.take() {
[INFO] [stdout]     |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total_size`
[INFO] [stdout]    --> src/mem/stack_pool.rs:292:13
[INFO] [stdout]     |
[INFO] [stdout] 292 |         let total_size = if has_guard_pages {
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/mem/arc_lite.rs:37:16
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn new(data: T) -> Self {
[INFO] [stdout]    |                ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layout`
[INFO] [stdout]   --> src/mem/arc_lite.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let layout = Layout::new::<ArcLiteInner<T>>();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_layout`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_depth`
[INFO] [stdout]    --> src/observability/profiler.rs:165:20
[INFO] [stdout]     |
[INFO] [stdout] 165 |     pub fn capture(max_depth: usize) -> Self {
[INFO] [stdout]     |                    ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_depth`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current`
[INFO] [stdout]    --> src/perf/cache_aware.rs:187:48
[INFO] [stdout]     |
[INFO] [stdout] 187 |     pub fn schedule_next(&self, cpu_id: CpuId, current: Option<Arc<Thread>>) -> Option<Arc<Thread>> {
[INFO] [stdout]     |                                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_data`
[INFO] [stdout]    --> src/perf/cache_aware.rs:223:37
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn pick_from_local_queue(&self, cpu_data: &CacheOptimizedCpuData) -> Option<Arc<Thread>> {
[INFO] [stdout]     |                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_cpu_data`
[INFO] [stdout]    --> src/perf/cache_aware.rs:257:30
[INFO] [stdout]     |
[INFO] [stdout] 257 |     fn steal_from_cpu(&self, target_cpu_data: &CacheOptimizedCpuData) -> Option<Arc<Thread>> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_cpu_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_id`
[INFO] [stdout]    --> src/perf/cache_aware.rs:264:38
[INFO] [stdout]     |
[INFO] [stdout] 264 |     fn pick_from_global_queue(&self, cpu_id: CpuId) -> Option<Arc<Thread>> {
[INFO] [stdout]     |                                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `topology`
[INFO] [stdout]    --> src/perf/numa.rs:441:9
[INFO] [stdout]     |
[INFO] [stdout] 441 |     let topology = if config.numa_nodes > 1 {
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_topology`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `features`
[INFO] [stdout]    --> src/perf/cpu_dispatch.rs:232:33
[INFO] [stdout]     |
[INFO] [stdout] 232 | unsafe fn init_string_functions(features: &CpuFeatures) {
[INFO] [stdout]     |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_features`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `features`
[INFO] [stdout]    --> src/perf/cpu_dispatch.rs:240:38
[INFO] [stdout]     |
[INFO] [stdout] 240 | unsafe fn init_compression_functions(features: &CpuFeatures) {
[INFO] [stdout]     |                                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_features`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size_class`
[INFO] [stdout]    --> src/perf/memory_pools.rs:281:38
[INFO] [stdout]     |
[INFO] [stdout] 281 |     fn allocate_from_fallback(&self, size_class: StackSizeClass) -> Option<Stack> {
[INFO] [stdout]     |                                      ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_size_class`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:127:17
[INFO] [stdout]     |
[INFO] [stdout] 123 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 127 |                 unsafe { A::context_switch(prev_context, next_context); }
[INFO] [stdout]     |                 ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:145:9
[INFO] [stdout]     |
[INFO] [stdout] 145 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:237:21
[INFO] [stdout]     |
[INFO] [stdout] 235 |                 unsafe {
[INFO] [stdout]     |                 ------ because it's nested under this `unsafe` block
[INFO] [stdout] 236 |                     let prefetch_addr = stack_ptr.offset(i * 64); // 64-byte cache lines
[INFO] [stdout] 237 |                     unsafe { core::arch::asm!(
[INFO] [stdout]     |                     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `preemption::Preemption::enable::signal` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/preemption.rs:53:22
[INFO] [stdout]    |
[INFO] [stdout] 53 |         let result = signal(SIGALRM, timer_handler);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/preemption.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub unsafe fn enable(&mut self, interval_us: u64) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout]  2 | #![deny(unsafe_op_in_unsafe_fn)]
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `preemption::Preemption::enable::setitimer` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/preemption.rs:69:22
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let result = setitimer(ITIMER_REAL, &timer, core::ptr::null_mut());
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[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 `preemption::Preemption::disable::setitimer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/preemption.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         setitimer(ITIMER_REAL, &timer, core::ptr::null_mut());
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/preemption.rs:78:5
[INFO] [stdout]     |
[INFO] [stdout]  78 |     pub unsafe fn disable(&mut self) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]    --> src/sched/rr.rs:209:37
[INFO] [stdout]     |
[INFO] [stdout] 209 |                         if let Some(next) = queue.low_priority.peek()
[INFO] [stdout]     |                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]    --> src/sched/rr.rs:217:37
[INFO] [stdout]     |
[INFO] [stdout] 217 |                         if let Some(next) = queue.normal_priority.peek()
[INFO] [stdout]     |                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_canary`
[INFO] [stdout]    --> src/security/stack_protection.rs:189:21
[INFO] [stdout]     |
[INFO] [stdout] 189 |         if let Some(expected_canary) = &self.canary_bottom {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_canary`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_canary`
[INFO] [stdout]    --> src/security/stack_protection.rs:199:21
[INFO] [stdout]     |
[INFO] [stdout] 199 |         if let Some(expected_canary) = &self.canary_top {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_canary`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/security/stack_protection.rs:262:30
[INFO] [stdout]     |
[INFO] [stdout] 262 | pub fn init_stack_protection(config: SecurityConfig) -> Result<(), ThreadError> {
[INFO] [stdout]     |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `message`
[INFO] [stdout]    --> src/security/isolation.rs:433:27
[INFO] [stdout]     |
[INFO] [stdout] 433 |     pub fn send<T>(&self, message: T) -> Result<(), ThreadError> {
[INFO] [stdout]     |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/security/crypto_rng.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut entropy_count = 0;
[INFO] [stdout]    |             ----^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_gap`
[INFO] [stdout]   --> src/security/aslr.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let max_gap = min_gap * 16; // Up to 16 pages
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_gap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stats`
[INFO] [stdout]    --> src/security/aslr.rs:405:9
[INFO] [stdout]     |
[INFO] [stdout] 405 |     let stats = get_aslr_stats();
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_stats`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/security/audit.rs:587:27
[INFO] [stdout]     |
[INFO] [stdout] 587 | pub fn init_audit_logging(config: SecurityConfig) -> Result<(), ThreadError> {
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_arm64_cache_line_size` is never used
[INFO] [stdout]    --> src/arch/detection.rs:270:4
[INFO] [stdout]     |
[INFO] [stdout] 270 | fn detect_arm64_cache_line_size() -> u32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_riscv_cache_line_size` is never used
[INFO] [stdout]    --> src/arch/detection.rs:301:4
[INFO] [stdout]     |
[INFO] [stdout] 301 | fn detect_riscv_cache_line_size() -> u32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_riscv_f_extension` is never used
[INFO] [stdout]    --> src/arch/detection.rs:313:4
[INFO] [stdout]     |
[INFO] [stdout] 313 | fn detect_riscv_f_extension() -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `total_size` is never read
[INFO] [stdout]   --> src/mem/stack_pool.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct Stack {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 77 |     total_size: usize,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Stack` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/perf/cache_aware.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub struct CacheAwareScheduler {
[INFO] [stdout]     |            ------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 153 |     config: PerfConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/perf/numa.rs:209:5
[INFO] [stdout]     |
[INFO] [stdout] 194 | pub struct NumaAwareScheduler {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 209 |     config: PerfConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_physical` is never used
[INFO] [stdout]    --> src/perf/numa.rs:454:8
[INFO] [stdout]     |
[INFO] [stdout] 454 |     fn get_physical() -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `CrcFn` is never used
[INFO] [stdout]   --> src/perf/cpu_dispatch.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | type CrcFn = fn(&[u8]) -> u32;
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `HashFn` is never used
[INFO] [stdout]   --> src/perf/cpu_dispatch.rs:12:6
[INFO] [stdout]    |
[INFO] [stdout] 12 | type HashFn = fn(&[u8]) -> u64;
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `CompressFn` is never used
[INFO] [stdout]   --> src/perf/cpu_dispatch.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | type CompressFn = fn(&[u8], &mut [u8]) -> usize;
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_optimizations` is never used
[INFO] [stdout]    --> src/perf/cpu_dispatch.rs:126:4
[INFO] [stdout]     |
[INFO] [stdout] 126 | fn count_optimizations(features: &CpuFeatures) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `weak_count` and `data_ptr` are never read
[INFO] [stdout]   --> src/perf/fast_paths.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct OptimizedArcCounter {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 84 |     strong_count: AtomicUsize,
[INFO] [stdout] 85 |     weak_count: AtomicUsize,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 86 |     data_ptr: AtomicPtr<u8>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `total_allocated` is never read
[INFO] [stdout]   --> src/perf/memory_pools.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub struct LockFreePool<T> {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 71 |     total_allocated: AtomicUsize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `generation` is never read
[INFO] [stdout]   --> src/perf/memory_pools.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | struct PoolNode<T> {
[INFO] [stdout]    |        -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 84 |     generation: AtomicU64, // ABA prevention
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/perf/memory_pools.rs:400:5
[INFO] [stdout]     |
[INFO] [stdout] 392 | pub struct MemoryPoolManager {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 400 |     config: PerfConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `arch_optimizations` is never read
[INFO] [stdout]   --> src/perf/context_switch_opt.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct ContextSwitchOptimizer<A: Arch> {
[INFO] [stdout]    |            ---------------------- field in this struct
[INFO] [stdout] 10 |     /// Architecture-specific optimizations
[INFO] [stdout] 11 |     arch_optimizations: A,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `current_pos` is never read
[INFO] [stdout]   --> src/sched/rr.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct CpuRunQueue {
[INFO] [stdout]    |        ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 37 |     current_pos: AtomicUsize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_enabled_features` is never used
[INFO] [stdout]    --> src/security/mod.rs:273:4
[INFO] [stdout]     |
[INFO] [stdout] 273 | fn count_enabled_features(config: &SecurityConfig) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `allocate_guard_pages` is never used
[INFO] [stdout]    --> src/security/stack_protection.rs:344:19
[INFO] [stdout]     |
[INFO] [stdout] 344 |     pub(super) fn allocate_guard_pages(size: usize) -> Result<*mut u8, ThreadError> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deallocate_guard_pages` is never used
[INFO] [stdout]    --> src/security/stack_protection.rs:356:19
[INFO] [stdout]     |
[INFO] [stdout] 356 |     pub(super) fn deallocate_guard_pages(ptr: *mut u8, size: usize) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_x86_64_call_target` is never used
[INFO] [stdout]    --> src/security/cfi.rs:360:19
[INFO] [stdout]     |
[INFO] [stdout] 360 |     pub(super) fn verify_x86_64_call_target(_target: *const ()) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_arm64_call_target` is never used
[INFO] [stdout]    --> src/security/cfi.rs:364:19
[INFO] [stdout]     |
[INFO] [stdout] 364 |     pub(super) fn verify_arm64_call_target(_target: *const ()) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sender_domain` and `receiver_domain` are never read
[INFO] [stdout]    --> src/security/isolation.rs:411:5
[INFO] [stdout]     |
[INFO] [stdout] 410 | pub struct CrossDomainChannel {
[INFO] [stdout]     |            ------------------ fields in this struct
[INFO] [stdout] 411 |     sender_domain: ThreadId,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 412 |     receiver_domain: ThreadId,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pool_position` is never read
[INFO] [stdout]   --> src/security/crypto_rng.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct SecureRng {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pool_position: AtomicUsize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quarter_round` is never used
[INFO] [stdout]    --> src/security/crypto_rng.rs:314:4
[INFO] [stdout]     |
[INFO] [stdout] 314 | fn quarter_round(a: &mut u32, b: &mut u32, c: &mut u32, d: &mut u32) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `MemoryError` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:453:12
[INFO] [stdout]     |
[INFO] [stdout] 453 |     pub fn MemoryError() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^ help: convert the identifier to snake case: `memory_error`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ResourceExhaustion` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:458:12
[INFO] [stdout]     |
[INFO] [stdout] 458 |     pub fn ResourceExhaustion() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `resource_exhaustion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `InvalidState` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:463:12
[INFO] [stdout]     |
[INFO] [stdout] 463 |     pub fn InvalidState() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to snake case: `invalid_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `PermissionDenied` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:468:12
[INFO] [stdout]     |
[INFO] [stdout] 468 |     pub fn PermissionDenied() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `permission_denied`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `UnsupportedOperation` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:473:12
[INFO] [stdout]     |
[INFO] [stdout] 473 |     pub fn UnsupportedOperation(msg: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `unsupported_operation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `Other` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:478:12
[INFO] [stdout]     |
[INFO] [stdout] 478 |     pub fn Other(msg: String) -> Self {
[INFO] [stdout]     |            ^^^^^ help: convert the identifier to snake case (notice the capitalization): `other`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:429:34
[INFO] [stdout]     |
[INFO] [stdout] 429 |         if let Some(optimizer) = &mut CONTEXT_SWITCH_OPTIMIZER {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 429 |         if let Some(optimizer) = &raw mut CONTEXT_SWITCH_OPTIMIZER {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:441:9
[INFO] [stdout]     |
[INFO] [stdout] 441 |         CONTEXT_SWITCH_OPTIMIZER.as_ref().map(|opt| opt.get_switch_stats())
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/safe_api.rs:195:17
[INFO] [stdout]     |
[INFO] [stdout] 195 |     pub fn lock(&self) -> MutexGuard<T> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 195 |     pub fn lock(&self) -> MutexGuard<'_, T> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/safe_api.rs:214:21
[INFO] [stdout]     |
[INFO] [stdout] 214 |     pub fn try_lock(&self) -> Option<MutexGuard<T>> {
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 214 |     pub fn try_lock(&self) -> Option<MutexGuard<'_, T>> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:462:34
[INFO] [stdout]     |
[INFO] [stdout] 462 |         if let Some(isolation) = &mut THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 462 |         if let Some(isolation) = &raw mut THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:477:34
[INFO] [stdout]     |
[INFO] [stdout] 477 |         if let Some(isolation) = &THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 477 |         if let Some(isolation) = &raw const THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:493:34
[INFO] [stdout]     |
[INFO] [stdout] 493 |         if let Some(isolation) = &THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 493 |         if let Some(isolation) = &raw const THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:508:34
[INFO] [stdout]     |
[INFO] [stdout] 508 |         if let Some(isolation) = &mut THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 508 |         if let Some(isolation) = &raw mut THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:526:34
[INFO] [stdout]     |
[INFO] [stdout] 526 |         if let Some(isolation) = &THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 526 |         if let Some(isolation) = &raw const THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:518:9
[INFO] [stdout]     |
[INFO] [stdout] 518 |         SECURE_RNG.init()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:528:9
[INFO] [stdout]     |
[INFO] [stdout] 528 |         SECURE_RNG.fill_bytes(dest)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:535:9
[INFO] [stdout]     |
[INFO] [stdout] 535 |         SECURE_RNG.next_u64()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:542:9
[INFO] [stdout]     |
[INFO] [stdout] 542 |         SECURE_RNG.next_u32()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:549:9
[INFO] [stdout]     |
[INFO] [stdout] 549 |         SECURE_RNG.gen_range(max)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:557:30
[INFO] [stdout]     |
[INFO] [stdout] 557 |             bytes_generated: SECURE_RNG.bytes_generated.load(Ordering::Relaxed),
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:558:32
[INFO] [stdout]     |
[INFO] [stdout] 558 |             entropy_collected: SECURE_RNG.entropy_collected.load(Ordering::Relaxed),
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/aslr.rs:414:15
[INFO] [stdout]     |
[INFO] [stdout] 414 |         match &ASLR_MANAGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 414 |         match &raw const ASLR_MANAGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/aslr.rs:424:15
[INFO] [stdout]     |
[INFO] [stdout] 424 |         match &ASLR_MANAGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 424 |         match &raw const ASLR_MANAGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/aslr.rs:434:15
[INFO] [stdout]     |
[INFO] [stdout] 434 |         match &ASLR_MANAGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 434 |         match &raw const ASLR_MANAGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:615:31
[INFO] [stdout]     |
[INFO] [stdout] 615 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 615 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:624:31
[INFO] [stdout]     |
[INFO] [stdout] 624 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 624 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:635:31
[INFO] [stdout]     |
[INFO] [stdout] 635 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 635 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:644:31
[INFO] [stdout]     |
[INFO] [stdout] 644 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 644 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:653:31
[INFO] [stdout]     |
[INFO] [stdout] 653 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 653 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:662:31
[INFO] [stdout]     |
[INFO] [stdout] 662 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 662 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:671:15
[INFO] [stdout]     |
[INFO] [stdout] 671 |         match &AUDIT_LOGGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 671 |         match &raw const AUDIT_LOGGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:681:15
[INFO] [stdout]     |
[INFO] [stdout] 681 |         match &AUDIT_LOGGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 681 |         match &raw const AUDIT_LOGGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:691:15
[INFO] [stdout]     |
[INFO] [stdout] 691 |         match &AUDIT_LOGGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 691 |         match &raw const AUDIT_LOGGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:701:15
[INFO] [stdout]     |
[INFO] [stdout] 701 |         match &AUDIT_LOGGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 701 |         match &raw const AUDIT_LOGGER {
[INFO] [stdout]     |                +++++++++
[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 4.35s
[INFO] running `Command { std: "docker" "inspect" "bc1a00bc845ee4e21cc279173284096dccedba44d93ada080ca750a7aa82afe5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bc1a00bc845ee4e21cc279173284096dccedba44d93ada080ca750a7aa82afe5", kill_on_drop: false }`
[INFO] [stdout] bc1a00bc845ee4e21cc279173284096dccedba44d93ada080ca750a7aa82afe5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 80991ca50e1430bf41b095e4de71e951d76306f61275a08657fc6cc74bfc5cfc
[INFO] running `Command { std: "docker" "start" "-a" "80991ca50e1430bf41b095e4de71e951d76306f61275a08657fc6cc74bfc5cfc", kill_on_drop: false }`
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling portable-atomic v1.11.1
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling preemptive-threads v0.5.0-beta (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/mem/arc_lite.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::ptr::{self, NonNull};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::arch::asm`
[INFO] [stdout]  --> src/security/cfi.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use core::arch::asm;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::arch::asm`
[INFO] [stdout]  --> src/security/crypto_rng.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use core::arch::asm;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vec`
[INFO] [stdout]  --> src/security/aslr.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use alloc::{vec, vec::Vec};
[INFO] [stdout]   |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/mem/arc_lite.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::ptr::{self, NonNull};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::arch::asm`
[INFO] [stdout]  --> src/security/cfi.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use core::arch::asm;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::arch::asm`
[INFO] [stdout]  --> src/security/crypto_rng.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use core::arch::asm;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vec`
[INFO] [stdout]  --> src/security/aslr.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use alloc::{vec, vec::Vec};
[INFO] [stdout]   |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/thread_new/handle.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ThreadId` and `Thread`
[INFO] [stdout]    --> src/thread_new/handle.rs:112:29
[INFO] [stdout]     |
[INFO] [stdout] 112 |     use crate::thread_new::{Thread, ThreadId};
[INFO] [stdout]     |                             ^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `StackPool` and `StackSizeClass`
[INFO] [stdout]    --> src/thread_new/handle.rs:113:22
[INFO] [stdout]     |
[INFO] [stdout] 113 |     use crate::mem::{StackPool, StackSizeClass};
[INFO] [stdout]     |                      ^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/thread_new/builder.rs:376:9
[INFO] [stdout]     |
[INFO] [stdout] 376 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/thread_new/mod.rs:670:9
[INFO] [stdout]     |
[INFO] [stdout] 670 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `StackPool` and `StackSizeClass`
[INFO] [stdout]    --> src/thread_new/mod.rs:671:22
[INFO] [stdout]     |
[INFO] [stdout] 671 |     use crate::mem::{StackPool, StackSizeClass};
[INFO] [stdout]     |                      ^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/security/mod.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 296 |             crate::exit_thread();
[INFO] [stdout]     |             -------------------- any code following this expression is unreachable
[INFO] [stdout] 297 |             unreachable!("Thread should have been terminated");
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/kernel.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |             unsafe {
[INFO] [stdout]    |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/kernel.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |             unsafe {
[INFO] [stdout]    |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry_wrapper`
[INFO] [stdout]    --> src/kernel.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 137 |         let entry_wrapper = move || {
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entry_wrapper`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current`
[INFO] [stdout]    --> src/kernel.rs:198:33
[INFO] [stdout]     |
[INFO] [stdout] 198 |                     if let Some(current) = current_guard.take() {
[INFO] [stdout]     |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total_size`
[INFO] [stdout]    --> src/mem/stack_pool.rs:292:13
[INFO] [stdout]     |
[INFO] [stdout] 292 |         let total_size = if has_guard_pages {
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/mem/arc_lite.rs:37:16
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn new(data: T) -> Self {
[INFO] [stdout]    |                ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/security/mod.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 296 |             crate::exit_thread();
[INFO] [stdout]     |             -------------------- any code following this expression is unreachable
[INFO] [stdout] 297 |             unreachable!("Thread should have been terminated");
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layout`
[INFO] [stdout]   --> src/mem/arc_lite.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let layout = Layout::new::<ArcLiteInner<T>>();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_layout`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_depth`
[INFO] [stdout]    --> src/observability/profiler.rs:165:20
[INFO] [stdout]     |
[INFO] [stdout] 165 |     pub fn capture(max_depth: usize) -> Self {
[INFO] [stdout]     |                    ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_depth`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/kernel.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |             unsafe {
[INFO] [stdout]    |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current`
[INFO] [stdout]    --> src/perf/cache_aware.rs:187:48
[INFO] [stdout]     |
[INFO] [stdout] 187 |     pub fn schedule_next(&self, cpu_id: CpuId, current: Option<Arc<Thread>>) -> Option<Arc<Thread>> {
[INFO] [stdout]     |                                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/kernel.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |             unsafe {
[INFO] [stdout]    |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_data`
[INFO] [stdout]    --> src/perf/cache_aware.rs:223:37
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn pick_from_local_queue(&self, cpu_data: &CacheOptimizedCpuData) -> Option<Arc<Thread>> {
[INFO] [stdout]     |                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_cpu_data`
[INFO] [stdout]    --> src/perf/cache_aware.rs:257:30
[INFO] [stdout]     |
[INFO] [stdout] 257 |     fn steal_from_cpu(&self, target_cpu_data: &CacheOptimizedCpuData) -> Option<Arc<Thread>> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_cpu_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_id`
[INFO] [stdout]    --> src/perf/cache_aware.rs:264:38
[INFO] [stdout]     |
[INFO] [stdout] 264 |     fn pick_from_global_queue(&self, cpu_id: CpuId) -> Option<Arc<Thread>> {
[INFO] [stdout]     |                                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry_wrapper`
[INFO] [stdout]    --> src/kernel.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 137 |         let entry_wrapper = move || {
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entry_wrapper`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current`
[INFO] [stdout]    --> src/kernel.rs:198:33
[INFO] [stdout]     |
[INFO] [stdout] 198 |                     if let Some(current) = current_guard.take() {
[INFO] [stdout]     |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total_size`
[INFO] [stdout]    --> src/mem/stack_pool.rs:292:13
[INFO] [stdout]     |
[INFO] [stdout] 292 |         let total_size = if has_guard_pages {
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/mem/arc_lite.rs:37:16
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn new(data: T) -> Self {
[INFO] [stdout]    |                ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layout`
[INFO] [stdout]   --> src/mem/arc_lite.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let layout = Layout::new::<ArcLiteInner<T>>();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_layout`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `topology`
[INFO] [stdout]    --> src/perf/numa.rs:441:9
[INFO] [stdout]     |
[INFO] [stdout] 441 |     let topology = if config.numa_nodes > 1 {
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_topology`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `features`
[INFO] [stdout]    --> src/perf/cpu_dispatch.rs:232:33
[INFO] [stdout]     |
[INFO] [stdout] 232 | unsafe fn init_string_functions(features: &CpuFeatures) {
[INFO] [stdout]     |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_features`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `features`
[INFO] [stdout]    --> src/perf/cpu_dispatch.rs:240:38
[INFO] [stdout]     |
[INFO] [stdout] 240 | unsafe fn init_compression_functions(features: &CpuFeatures) {
[INFO] [stdout]     |                                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_features`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size_class`
[INFO] [stdout]    --> src/perf/memory_pools.rs:281:38
[INFO] [stdout]     |
[INFO] [stdout] 281 |     fn allocate_from_fallback(&self, size_class: StackSizeClass) -> Option<Stack> {
[INFO] [stdout]     |                                      ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_size_class`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:127:17
[INFO] [stdout]     |
[INFO] [stdout] 123 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 127 |                 unsafe { A::context_switch(prev_context, next_context); }
[INFO] [stdout]     |                 ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:145:9
[INFO] [stdout]     |
[INFO] [stdout] 145 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:237:21
[INFO] [stdout]     |
[INFO] [stdout] 235 |                 unsafe {
[INFO] [stdout]     |                 ------ because it's nested under this `unsafe` block
[INFO] [stdout] 236 |                     let prefetch_addr = stack_ptr.offset(i * 64); // 64-byte cache lines
[INFO] [stdout] 237 |                     unsafe { core::arch::asm!(
[INFO] [stdout]     |                     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_depth`
[INFO] [stdout]    --> src/observability/profiler.rs:165:20
[INFO] [stdout]     |
[INFO] [stdout] 165 |     pub fn capture(max_depth: usize) -> Self {
[INFO] [stdout]     |                    ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_depth`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `preemption::Preemption::enable::signal` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/preemption.rs:53:22
[INFO] [stdout]    |
[INFO] [stdout] 53 |         let result = signal(SIGALRM, timer_handler);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/preemption.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub unsafe fn enable(&mut self, interval_us: u64) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout]  2 | #![deny(unsafe_op_in_unsafe_fn)]
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `preemption::Preemption::enable::setitimer` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/preemption.rs:69:22
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let result = setitimer(ITIMER_REAL, &timer, core::ptr::null_mut());
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[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 `preemption::Preemption::disable::setitimer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/preemption.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         setitimer(ITIMER_REAL, &timer, core::ptr::null_mut());
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/preemption.rs:78:5
[INFO] [stdout]     |
[INFO] [stdout]  78 |     pub unsafe fn disable(&mut self) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]    --> src/sched/rr.rs:209:37
[INFO] [stdout]     |
[INFO] [stdout] 209 |                         if let Some(next) = queue.low_priority.peek()
[INFO] [stdout]     |                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]    --> src/sched/rr.rs:217:37
[INFO] [stdout]     |
[INFO] [stdout] 217 |                         if let Some(next) = queue.normal_priority.peek()
[INFO] [stdout]     |                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_canary`
[INFO] [stdout]    --> src/security/stack_protection.rs:189:21
[INFO] [stdout]     |
[INFO] [stdout] 189 |         if let Some(expected_canary) = &self.canary_bottom {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_canary`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_canary`
[INFO] [stdout]    --> src/security/stack_protection.rs:199:21
[INFO] [stdout]     |
[INFO] [stdout] 199 |         if let Some(expected_canary) = &self.canary_top {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_canary`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/security/stack_protection.rs:262:30
[INFO] [stdout]     |
[INFO] [stdout] 262 | pub fn init_stack_protection(config: SecurityConfig) -> Result<(), ThreadError> {
[INFO] [stdout]     |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current`
[INFO] [stdout]    --> src/perf/cache_aware.rs:187:48
[INFO] [stdout]     |
[INFO] [stdout] 187 |     pub fn schedule_next(&self, cpu_id: CpuId, current: Option<Arc<Thread>>) -> Option<Arc<Thread>> {
[INFO] [stdout]     |                                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_data`
[INFO] [stdout]    --> src/perf/cache_aware.rs:223:37
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn pick_from_local_queue(&self, cpu_data: &CacheOptimizedCpuData) -> Option<Arc<Thread>> {
[INFO] [stdout]     |                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_cpu_data`
[INFO] [stdout]    --> src/perf/cache_aware.rs:257:30
[INFO] [stdout]     |
[INFO] [stdout] 257 |     fn steal_from_cpu(&self, target_cpu_data: &CacheOptimizedCpuData) -> Option<Arc<Thread>> {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_cpu_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_id`
[INFO] [stdout]    --> src/perf/cache_aware.rs:264:38
[INFO] [stdout]     |
[INFO] [stdout] 264 |     fn pick_from_global_queue(&self, cpu_id: CpuId) -> Option<Arc<Thread>> {
[INFO] [stdout]     |                                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `message`
[INFO] [stdout]    --> src/security/isolation.rs:433:27
[INFO] [stdout]     |
[INFO] [stdout] 433 |     pub fn send<T>(&self, message: T) -> Result<(), ThreadError> {
[INFO] [stdout]     |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/security/crypto_rng.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut entropy_count = 0;
[INFO] [stdout]    |             ----^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_gap`
[INFO] [stdout]   --> src/security/aslr.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let max_gap = min_gap * 16; // Up to 16 pages
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_gap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `topology`
[INFO] [stdout]    --> src/perf/numa.rs:441:9
[INFO] [stdout]     |
[INFO] [stdout] 441 |     let topology = if config.numa_nodes > 1 {
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_topology`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stats`
[INFO] [stdout]    --> src/security/aslr.rs:405:9
[INFO] [stdout]     |
[INFO] [stdout] 405 |     let stats = get_aslr_stats();
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_stats`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `features`
[INFO] [stdout]    --> src/perf/cpu_dispatch.rs:232:33
[INFO] [stdout]     |
[INFO] [stdout] 232 | unsafe fn init_string_functions(features: &CpuFeatures) {
[INFO] [stdout]     |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_features`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `features`
[INFO] [stdout]    --> src/perf/cpu_dispatch.rs:240:38
[INFO] [stdout]     |
[INFO] [stdout] 240 | unsafe fn init_compression_functions(features: &CpuFeatures) {
[INFO] [stdout]     |                                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_features`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size_class`
[INFO] [stdout]    --> src/perf/memory_pools.rs:281:38
[INFO] [stdout]     |
[INFO] [stdout] 281 |     fn allocate_from_fallback(&self, size_class: StackSizeClass) -> Option<Stack> {
[INFO] [stdout]     |                                      ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_size_class`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/security/audit.rs:587:27
[INFO] [stdout]     |
[INFO] [stdout] 587 | pub fn init_audit_logging(config: SecurityConfig) -> Result<(), ThreadError> {
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:127:17
[INFO] [stdout]     |
[INFO] [stdout] 123 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 127 |                 unsafe { A::context_switch(prev_context, next_context); }
[INFO] [stdout]     |                 ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:145:9
[INFO] [stdout]     |
[INFO] [stdout] 145 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:237:21
[INFO] [stdout]     |
[INFO] [stdout] 235 |                 unsafe {
[INFO] [stdout]     |                 ------ because it's nested under this `unsafe` block
[INFO] [stdout] 236 |                     let prefetch_addr = stack_ptr.offset(i * 64); // 64-byte cache lines
[INFO] [stdout] 237 |                     unsafe { core::arch::asm!(
[INFO] [stdout]     |                     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `preemption::Preemption::enable::signal` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/preemption.rs:53:22
[INFO] [stdout]    |
[INFO] [stdout] 53 |         let result = signal(SIGALRM, timer_handler);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/preemption.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub unsafe fn enable(&mut self, interval_us: u64) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout]  2 | #![deny(unsafe_op_in_unsafe_fn)]
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `preemption::Preemption::enable::setitimer` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/preemption.rs:69:22
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let result = setitimer(ITIMER_REAL, &timer, core::ptr::null_mut());
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[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 `preemption::Preemption::disable::setitimer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/preemption.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         setitimer(ITIMER_REAL, &timer, core::ptr::null_mut());
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/preemption.rs:78:5
[INFO] [stdout]     |
[INFO] [stdout]  78 |     pub unsafe fn disable(&mut self) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]    --> src/sched/rr.rs:209:37
[INFO] [stdout]     |
[INFO] [stdout] 209 |                         if let Some(next) = queue.low_priority.peek()
[INFO] [stdout]     |                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]    --> src/sched/rr.rs:217:37
[INFO] [stdout]     |
[INFO] [stdout] 217 |                         if let Some(next) = queue.normal_priority.peek()
[INFO] [stdout]     |                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_canary`
[INFO] [stdout]    --> src/security/stack_protection.rs:189:21
[INFO] [stdout]     |
[INFO] [stdout] 189 |         if let Some(expected_canary) = &self.canary_bottom {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_canary`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_canary`
[INFO] [stdout]    --> src/security/stack_protection.rs:199:21
[INFO] [stdout]     |
[INFO] [stdout] 199 |         if let Some(expected_canary) = &self.canary_top {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_canary`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/security/stack_protection.rs:262:30
[INFO] [stdout]     |
[INFO] [stdout] 262 | pub fn init_stack_protection(config: SecurityConfig) -> Result<(), ThreadError> {
[INFO] [stdout]     |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_arm64_cache_line_size` is never used
[INFO] [stdout]    --> src/arch/detection.rs:270:4
[INFO] [stdout]     |
[INFO] [stdout] 270 | fn detect_arm64_cache_line_size() -> u32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_riscv_cache_line_size` is never used
[INFO] [stdout]    --> src/arch/detection.rs:301:4
[INFO] [stdout]     |
[INFO] [stdout] 301 | fn detect_riscv_cache_line_size() -> u32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_riscv_f_extension` is never used
[INFO] [stdout]    --> src/arch/detection.rs:313:4
[INFO] [stdout]     |
[INFO] [stdout] 313 | fn detect_riscv_f_extension() -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `total_size` is never read
[INFO] [stdout]   --> src/mem/stack_pool.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct Stack {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 77 |     total_size: usize,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Stack` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/perf/cache_aware.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub struct CacheAwareScheduler {
[INFO] [stdout]     |            ------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 153 |     config: PerfConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/perf/numa.rs:209:5
[INFO] [stdout]     |
[INFO] [stdout] 194 | pub struct NumaAwareScheduler {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 209 |     config: PerfConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_physical` is never used
[INFO] [stdout]    --> src/perf/numa.rs:454:8
[INFO] [stdout]     |
[INFO] [stdout] 454 |     fn get_physical() -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `CrcFn` is never used
[INFO] [stdout]   --> src/perf/cpu_dispatch.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | type CrcFn = fn(&[u8]) -> u32;
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `HashFn` is never used
[INFO] [stdout]   --> src/perf/cpu_dispatch.rs:12:6
[INFO] [stdout]    |
[INFO] [stdout] 12 | type HashFn = fn(&[u8]) -> u64;
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `CompressFn` is never used
[INFO] [stdout]   --> src/perf/cpu_dispatch.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | type CompressFn = fn(&[u8], &mut [u8]) -> usize;
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_optimizations` is never used
[INFO] [stdout]    --> src/perf/cpu_dispatch.rs:126:4
[INFO] [stdout]     |
[INFO] [stdout] 126 | fn count_optimizations(features: &CpuFeatures) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `weak_count` and `data_ptr` are never read
[INFO] [stdout]   --> src/perf/fast_paths.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct OptimizedArcCounter {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 84 |     strong_count: AtomicUsize,
[INFO] [stdout] 85 |     weak_count: AtomicUsize,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 86 |     data_ptr: AtomicPtr<u8>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `total_allocated` is never read
[INFO] [stdout]   --> src/perf/memory_pools.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub struct LockFreePool<T> {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 71 |     total_allocated: AtomicUsize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `generation` is never read
[INFO] [stdout]   --> src/perf/memory_pools.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | struct PoolNode<T> {
[INFO] [stdout]    |        -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 84 |     generation: AtomicU64, // ABA prevention
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/perf/memory_pools.rs:400:5
[INFO] [stdout]     |
[INFO] [stdout] 392 | pub struct MemoryPoolManager {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 400 |     config: PerfConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `arch_optimizations` is never read
[INFO] [stdout]   --> src/perf/context_switch_opt.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct ContextSwitchOptimizer<A: Arch> {
[INFO] [stdout]    |            ---------------------- field in this struct
[INFO] [stdout] 10 |     /// Architecture-specific optimizations
[INFO] [stdout] 11 |     arch_optimizations: A,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `current_pos` is never read
[INFO] [stdout]   --> src/sched/rr.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct CpuRunQueue {
[INFO] [stdout]    |        ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 37 |     current_pos: AtomicUsize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_enabled_features` is never used
[INFO] [stdout]    --> src/security/mod.rs:273:4
[INFO] [stdout]     |
[INFO] [stdout] 273 | fn count_enabled_features(config: &SecurityConfig) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `allocate_guard_pages` is never used
[INFO] [stdout]    --> src/security/stack_protection.rs:344:19
[INFO] [stdout]     |
[INFO] [stdout] 344 |     pub(super) fn allocate_guard_pages(size: usize) -> Result<*mut u8, ThreadError> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deallocate_guard_pages` is never used
[INFO] [stdout]    --> src/security/stack_protection.rs:356:19
[INFO] [stdout]     |
[INFO] [stdout] 356 |     pub(super) fn deallocate_guard_pages(ptr: *mut u8, size: usize) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_x86_64_call_target` is never used
[INFO] [stdout]    --> src/security/cfi.rs:360:19
[INFO] [stdout]     |
[INFO] [stdout] 360 |     pub(super) fn verify_x86_64_call_target(_target: *const ()) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_arm64_call_target` is never used
[INFO] [stdout]    --> src/security/cfi.rs:364:19
[INFO] [stdout]     |
[INFO] [stdout] 364 |     pub(super) fn verify_arm64_call_target(_target: *const ()) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sender_domain` and `receiver_domain` are never read
[INFO] [stdout]    --> src/security/isolation.rs:411:5
[INFO] [stdout]     |
[INFO] [stdout] 410 | pub struct CrossDomainChannel {
[INFO] [stdout]     |            ------------------ fields in this struct
[INFO] [stdout] 411 |     sender_domain: ThreadId,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 412 |     receiver_domain: ThreadId,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pool_position` is never read
[INFO] [stdout]   --> src/security/crypto_rng.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct SecureRng {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pool_position: AtomicUsize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quarter_round` is never used
[INFO] [stdout]    --> src/security/crypto_rng.rs:314:4
[INFO] [stdout]     |
[INFO] [stdout] 314 | fn quarter_round(a: &mut u32, b: &mut u32, c: &mut u32, d: &mut u32) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `MemoryError` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:453:12
[INFO] [stdout]     |
[INFO] [stdout] 453 |     pub fn MemoryError() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^ help: convert the identifier to snake case: `memory_error`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ResourceExhaustion` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:458:12
[INFO] [stdout]     |
[INFO] [stdout] 458 |     pub fn ResourceExhaustion() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `resource_exhaustion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `InvalidState` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:463:12
[INFO] [stdout]     |
[INFO] [stdout] 463 |     pub fn InvalidState() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to snake case: `invalid_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `PermissionDenied` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:468:12
[INFO] [stdout]     |
[INFO] [stdout] 468 |     pub fn PermissionDenied() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `permission_denied`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `UnsupportedOperation` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:473:12
[INFO] [stdout]     |
[INFO] [stdout] 473 |     pub fn UnsupportedOperation(msg: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `unsupported_operation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `Other` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:478:12
[INFO] [stdout]     |
[INFO] [stdout] 478 |     pub fn Other(msg: String) -> Self {
[INFO] [stdout]     |            ^^^^^ help: convert the identifier to snake case (notice the capitalization): `other`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `message`
[INFO] [stdout]    --> src/security/isolation.rs:433:27
[INFO] [stdout]     |
[INFO] [stdout] 433 |     pub fn send<T>(&self, message: T) -> Result<(), ThreadError> {
[INFO] [stdout]     |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:429:34
[INFO] [stdout]     |
[INFO] [stdout] 429 |         if let Some(optimizer) = &mut CONTEXT_SWITCH_OPTIMIZER {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 429 |         if let Some(optimizer) = &raw mut CONTEXT_SWITCH_OPTIMIZER {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:441:9
[INFO] [stdout]     |
[INFO] [stdout] 441 |         CONTEXT_SWITCH_OPTIMIZER.as_ref().map(|opt| opt.get_switch_stats())
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/security/crypto_rng.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut entropy_count = 0;
[INFO] [stdout]    |             ----^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/safe_api.rs:195:17
[INFO] [stdout]     |
[INFO] [stdout] 195 |     pub fn lock(&self) -> MutexGuard<T> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 195 |     pub fn lock(&self) -> MutexGuard<'_, T> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/safe_api.rs:214:21
[INFO] [stdout]     |
[INFO] [stdout] 214 |     pub fn try_lock(&self) -> Option<MutexGuard<T>> {
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 214 |     pub fn try_lock(&self) -> Option<MutexGuard<'_, T>> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:462:34
[INFO] [stdout]     |
[INFO] [stdout] 462 |         if let Some(isolation) = &mut THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 462 |         if let Some(isolation) = &raw mut THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:477:34
[INFO] [stdout]     |
[INFO] [stdout] 477 |         if let Some(isolation) = &THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 477 |         if let Some(isolation) = &raw const THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:493:34
[INFO] [stdout]     |
[INFO] [stdout] 493 |         if let Some(isolation) = &THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 493 |         if let Some(isolation) = &raw const THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:508:34
[INFO] [stdout]     |
[INFO] [stdout] 508 |         if let Some(isolation) = &mut THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 508 |         if let Some(isolation) = &raw mut THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:526:34
[INFO] [stdout]     |
[INFO] [stdout] 526 |         if let Some(isolation) = &THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 526 |         if let Some(isolation) = &raw const THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:518:9
[INFO] [stdout]     |
[INFO] [stdout] 518 |         SECURE_RNG.init()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:528:9
[INFO] [stdout]     |
[INFO] [stdout] 528 |         SECURE_RNG.fill_bytes(dest)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:535:9
[INFO] [stdout]     |
[INFO] [stdout] 535 |         SECURE_RNG.next_u64()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:542:9
[INFO] [stdout]     |
[INFO] [stdout] 542 |         SECURE_RNG.next_u32()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:549:9
[INFO] [stdout]     |
[INFO] [stdout] 549 |         SECURE_RNG.gen_range(max)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:557:30
[INFO] [stdout]     |
[INFO] [stdout] 557 |             bytes_generated: SECURE_RNG.bytes_generated.load(Ordering::Relaxed),
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:558:32
[INFO] [stdout]     |
[INFO] [stdout] 558 |             entropy_collected: SECURE_RNG.entropy_collected.load(Ordering::Relaxed),
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/aslr.rs:414:15
[INFO] [stdout]     |
[INFO] [stdout] 414 |         match &ASLR_MANAGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 414 |         match &raw const ASLR_MANAGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/aslr.rs:424:15
[INFO] [stdout]     |
[INFO] [stdout] 424 |         match &ASLR_MANAGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 424 |         match &raw const ASLR_MANAGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/aslr.rs:434:15
[INFO] [stdout]     |
[INFO] [stdout] 434 |         match &ASLR_MANAGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 434 |         match &raw const ASLR_MANAGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:615:31
[INFO] [stdout]     |
[INFO] [stdout] 615 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 615 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:624:31
[INFO] [stdout]     |
[INFO] [stdout] 624 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 624 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:635:31
[INFO] [stdout]     |
[INFO] [stdout] 635 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 635 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:644:31
[INFO] [stdout]     |
[INFO] [stdout] 644 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 644 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:653:31
[INFO] [stdout]     |
[INFO] [stdout] 653 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 653 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:662:31
[INFO] [stdout]     |
[INFO] [stdout] 662 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 662 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:671:15
[INFO] [stdout]     |
[INFO] [stdout] 671 |         match &AUDIT_LOGGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 671 |         match &raw const AUDIT_LOGGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:681:15
[INFO] [stdout]     |
[INFO] [stdout] 681 |         match &AUDIT_LOGGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 681 |         match &raw const AUDIT_LOGGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:691:15
[INFO] [stdout]     |
[INFO] [stdout] 691 |         match &AUDIT_LOGGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 691 |         match &raw const AUDIT_LOGGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:701:15
[INFO] [stdout]     |
[INFO] [stdout] 701 |         match &AUDIT_LOGGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 701 |         match &raw const AUDIT_LOGGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_gap`
[INFO] [stdout]   --> src/security/aslr.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let max_gap = min_gap * 16; // Up to 16 pages
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_gap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stats`
[INFO] [stdout]    --> src/security/aslr.rs:405:9
[INFO] [stdout]     |
[INFO] [stdout] 405 |     let stats = get_aslr_stats();
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_stats`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/security/audit.rs:587:27
[INFO] [stdout]     |
[INFO] [stdout] 587 | pub fn init_audit_logging(config: SecurityConfig) -> Result<(), ThreadError> {
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_arm64_cache_line_size` is never used
[INFO] [stdout]    --> src/arch/detection.rs:270:4
[INFO] [stdout]     |
[INFO] [stdout] 270 | fn detect_arm64_cache_line_size() -> u32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_riscv_cache_line_size` is never used
[INFO] [stdout]    --> src/arch/detection.rs:301:4
[INFO] [stdout]     |
[INFO] [stdout] 301 | fn detect_riscv_cache_line_size() -> u32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_riscv_f_extension` is never used
[INFO] [stdout]    --> src/arch/detection.rs:313:4
[INFO] [stdout]     |
[INFO] [stdout] 313 | fn detect_riscv_f_extension() -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `total_size` is never read
[INFO] [stdout]   --> src/mem/stack_pool.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct Stack {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 77 |     total_size: usize,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Stack` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/perf/cache_aware.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub struct CacheAwareScheduler {
[INFO] [stdout]     |            ------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 153 |     config: PerfConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/perf/numa.rs:209:5
[INFO] [stdout]     |
[INFO] [stdout] 194 | pub struct NumaAwareScheduler {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 209 |     config: PerfConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_physical` is never used
[INFO] [stdout]    --> src/perf/numa.rs:454:8
[INFO] [stdout]     |
[INFO] [stdout] 454 |     fn get_physical() -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `CrcFn` is never used
[INFO] [stdout]   --> src/perf/cpu_dispatch.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | type CrcFn = fn(&[u8]) -> u32;
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `HashFn` is never used
[INFO] [stdout]   --> src/perf/cpu_dispatch.rs:12:6
[INFO] [stdout]    |
[INFO] [stdout] 12 | type HashFn = fn(&[u8]) -> u64;
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `CompressFn` is never used
[INFO] [stdout]   --> src/perf/cpu_dispatch.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | type CompressFn = fn(&[u8], &mut [u8]) -> usize;
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_optimizations` is never used
[INFO] [stdout]    --> src/perf/cpu_dispatch.rs:126:4
[INFO] [stdout]     |
[INFO] [stdout] 126 | fn count_optimizations(features: &CpuFeatures) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `weak_count` and `data_ptr` are never read
[INFO] [stdout]   --> src/perf/fast_paths.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct OptimizedArcCounter {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 84 |     strong_count: AtomicUsize,
[INFO] [stdout] 85 |     weak_count: AtomicUsize,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 86 |     data_ptr: AtomicPtr<u8>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `total_allocated` is never read
[INFO] [stdout]   --> src/perf/memory_pools.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub struct LockFreePool<T> {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 71 |     total_allocated: AtomicUsize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `generation` is never read
[INFO] [stdout]   --> src/perf/memory_pools.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | struct PoolNode<T> {
[INFO] [stdout]    |        -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 84 |     generation: AtomicU64, // ABA prevention
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> src/perf/memory_pools.rs:400:5
[INFO] [stdout]     |
[INFO] [stdout] 392 | pub struct MemoryPoolManager {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 400 |     config: PerfConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `arch_optimizations` is never read
[INFO] [stdout]   --> src/perf/context_switch_opt.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct ContextSwitchOptimizer<A: Arch> {
[INFO] [stdout]    |            ---------------------- field in this struct
[INFO] [stdout] 10 |     /// Architecture-specific optimizations
[INFO] [stdout] 11 |     arch_optimizations: A,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `current_pos` is never read
[INFO] [stdout]   --> src/sched/rr.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct CpuRunQueue {
[INFO] [stdout]    |        ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 37 |     current_pos: AtomicUsize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_enabled_features` is never used
[INFO] [stdout]    --> src/security/mod.rs:273:4
[INFO] [stdout]     |
[INFO] [stdout] 273 | fn count_enabled_features(config: &SecurityConfig) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `allocate_guard_pages` is never used
[INFO] [stdout]    --> src/security/stack_protection.rs:344:19
[INFO] [stdout]     |
[INFO] [stdout] 344 |     pub(super) fn allocate_guard_pages(size: usize) -> Result<*mut u8, ThreadError> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deallocate_guard_pages` is never used
[INFO] [stdout]    --> src/security/stack_protection.rs:356:19
[INFO] [stdout]     |
[INFO] [stdout] 356 |     pub(super) fn deallocate_guard_pages(ptr: *mut u8, size: usize) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_x86_64_call_target` is never used
[INFO] [stdout]    --> src/security/cfi.rs:360:19
[INFO] [stdout]     |
[INFO] [stdout] 360 |     pub(super) fn verify_x86_64_call_target(_target: *const ()) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_arm64_call_target` is never used
[INFO] [stdout]    --> src/security/cfi.rs:364:19
[INFO] [stdout]     |
[INFO] [stdout] 364 |     pub(super) fn verify_arm64_call_target(_target: *const ()) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sender_domain` and `receiver_domain` are never read
[INFO] [stdout]    --> src/security/isolation.rs:411:5
[INFO] [stdout]     |
[INFO] [stdout] 410 | pub struct CrossDomainChannel {
[INFO] [stdout]     |            ------------------ fields in this struct
[INFO] [stdout] 411 |     sender_domain: ThreadId,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 412 |     receiver_domain: ThreadId,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pool_position` is never read
[INFO] [stdout]   --> src/security/crypto_rng.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct SecureRng {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pool_position: AtomicUsize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quarter_round` is never used
[INFO] [stdout]    --> src/security/crypto_rng.rs:314:4
[INFO] [stdout]     |
[INFO] [stdout] 314 | fn quarter_round(a: &mut u32, b: &mut u32, c: &mut u32, d: &mut u32) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `MemoryError` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:453:12
[INFO] [stdout]     |
[INFO] [stdout] 453 |     pub fn MemoryError() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^ help: convert the identifier to snake case: `memory_error`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ResourceExhaustion` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:458:12
[INFO] [stdout]     |
[INFO] [stdout] 458 |     pub fn ResourceExhaustion() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `resource_exhaustion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `InvalidState` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:463:12
[INFO] [stdout]     |
[INFO] [stdout] 463 |     pub fn InvalidState() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^ help: convert the identifier to snake case: `invalid_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `PermissionDenied` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:468:12
[INFO] [stdout]     |
[INFO] [stdout] 468 |     pub fn PermissionDenied() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `permission_denied`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `UnsupportedOperation` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:473:12
[INFO] [stdout]     |
[INFO] [stdout] 473 |     pub fn UnsupportedOperation(msg: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `unsupported_operation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `Other` should have a snake case name
[INFO] [stdout]    --> src/errors.rs:478:12
[INFO] [stdout]     |
[INFO] [stdout] 478 |     pub fn Other(msg: String) -> Self {
[INFO] [stdout]     |            ^^^^^ help: convert the identifier to snake case (notice the capitalization): `other`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:429:34
[INFO] [stdout]     |
[INFO] [stdout] 429 |         if let Some(optimizer) = &mut CONTEXT_SWITCH_OPTIMIZER {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 429 |         if let Some(optimizer) = &raw mut CONTEXT_SWITCH_OPTIMIZER {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/perf/context_switch_opt.rs:441:9
[INFO] [stdout]     |
[INFO] [stdout] 441 |         CONTEXT_SWITCH_OPTIMIZER.as_ref().map(|opt| opt.get_switch_stats())
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/safe_api.rs:195:17
[INFO] [stdout]     |
[INFO] [stdout] 195 |     pub fn lock(&self) -> MutexGuard<T> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 195 |     pub fn lock(&self) -> MutexGuard<'_, T> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/safe_api.rs:214:21
[INFO] [stdout]     |
[INFO] [stdout] 214 |     pub fn try_lock(&self) -> Option<MutexGuard<T>> {
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 214 |     pub fn try_lock(&self) -> Option<MutexGuard<'_, T>> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:462:34
[INFO] [stdout]     |
[INFO] [stdout] 462 |         if let Some(isolation) = &mut THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 462 |         if let Some(isolation) = &raw mut THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:477:34
[INFO] [stdout]     |
[INFO] [stdout] 477 |         if let Some(isolation) = &THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 477 |         if let Some(isolation) = &raw const THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:493:34
[INFO] [stdout]     |
[INFO] [stdout] 493 |         if let Some(isolation) = &THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 493 |         if let Some(isolation) = &raw const THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:508:34
[INFO] [stdout]     |
[INFO] [stdout] 508 |         if let Some(isolation) = &mut THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 508 |         if let Some(isolation) = &raw mut THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/isolation.rs:526:34
[INFO] [stdout]     |
[INFO] [stdout] 526 |         if let Some(isolation) = &THREAD_ISOLATION {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 526 |         if let Some(isolation) = &raw const THREAD_ISOLATION {
[INFO] [stdout]     |                                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:518:9
[INFO] [stdout]     |
[INFO] [stdout] 518 |         SECURE_RNG.init()?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:528:9
[INFO] [stdout]     |
[INFO] [stdout] 528 |         SECURE_RNG.fill_bytes(dest)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:535:9
[INFO] [stdout]     |
[INFO] [stdout] 535 |         SECURE_RNG.next_u64()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:542:9
[INFO] [stdout]     |
[INFO] [stdout] 542 |         SECURE_RNG.next_u32()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:549:9
[INFO] [stdout]     |
[INFO] [stdout] 549 |         SECURE_RNG.gen_range(max)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:557:30
[INFO] [stdout]     |
[INFO] [stdout] 557 |             bytes_generated: SECURE_RNG.bytes_generated.load(Ordering::Relaxed),
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/crypto_rng.rs:558:32
[INFO] [stdout]     |
[INFO] [stdout] 558 |             entropy_collected: SECURE_RNG.entropy_collected.load(Ordering::Relaxed),
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/aslr.rs:414:15
[INFO] [stdout]     |
[INFO] [stdout] 414 |         match &ASLR_MANAGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 414 |         match &raw const ASLR_MANAGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/aslr.rs:424:15
[INFO] [stdout]     |
[INFO] [stdout] 424 |         match &ASLR_MANAGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 424 |         match &raw const ASLR_MANAGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/aslr.rs:434:15
[INFO] [stdout]     |
[INFO] [stdout] 434 |         match &ASLR_MANAGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 434 |         match &raw const ASLR_MANAGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:615:31
[INFO] [stdout]     |
[INFO] [stdout] 615 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 615 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:624:31
[INFO] [stdout]     |
[INFO] [stdout] 624 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 624 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:635:31
[INFO] [stdout]     |
[INFO] [stdout] 635 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 635 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:644:31
[INFO] [stdout]     |
[INFO] [stdout] 644 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 644 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:653:31
[INFO] [stdout]     |
[INFO] [stdout] 653 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 653 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:662:31
[INFO] [stdout]     |
[INFO] [stdout] 662 |         if let Some(logger) = &mut AUDIT_LOGGER {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 662 |         if let Some(logger) = &raw mut AUDIT_LOGGER {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:671:15
[INFO] [stdout]     |
[INFO] [stdout] 671 |         match &AUDIT_LOGGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 671 |         match &raw const AUDIT_LOGGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:681:15
[INFO] [stdout]     |
[INFO] [stdout] 681 |         match &AUDIT_LOGGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 681 |         match &raw const AUDIT_LOGGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:691:15
[INFO] [stdout]     |
[INFO] [stdout] 691 |         match &AUDIT_LOGGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 691 |         match &raw const AUDIT_LOGGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/security/audit.rs:701:15
[INFO] [stdout]     |
[INFO] [stdout] 701 |         match &AUDIT_LOGGER {
[INFO] [stdout]     |               ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 701 |         match &raw const AUDIT_LOGGER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `preemptive_mlthreading_rust`
[INFO] [stdout]  --> examples/scheduler_config.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use preemptive_mlthreading_rust::{
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]   |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]   |
[INFO] [stdout] 8 - use preemptive_mlthreading_rust::{
[INFO] [stdout] 8 + use preemptive_threads::{
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/scheduler_config.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     println!("RT Task {} started", task_id);
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/scheduler_config.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     println!("RT Task {} completed", task_id);
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/scheduler_config.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     println!("Background Task {} started", task_id);
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/scheduler_config.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     println!("Background Task {} completed with result: {}", task_id, result);
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/scheduler_config.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     println!("Interactive Task {} started", task_id);
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/scheduler_config.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     println!("Interactive Task {} processed {} responses", task_id, responses);
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/scheduler_config.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 88 |     println!("\n=== Round Robin Scheduler Demo ===");
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]   --> examples/scheduler_config.rs:99:20
[INFO] [stdout]    |
[INFO] [stdout] 99 |             .name(&format!("rr_task_{}", i))
[INFO] [stdout]    |                    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]    |
[INFO] [stdout]  6 + use alloc::format;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     println!("Round-robin scheduling completed");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     println!("\n=== Priority Scheduling Demo ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:186:20
[INFO] [stdout]     |
[INFO] [stdout] 186 |             .name(&format!("rt_task_{}", i))
[INFO] [stdout]     |                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::format;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:197:20
[INFO] [stdout]     |
[INFO] [stdout] 197 |             .name(&format!("ui_task_{}", i))
[INFO] [stdout]     |                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::format;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:208:20
[INFO] [stdout]     |
[INFO] [stdout] 208 |             .name(&format!("bg_task_{}", i))
[INFO] [stdout]     |                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::format;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:221:5
[INFO] [stdout]     |
[INFO] [stdout] 221 |     println!("Priority scheduling completed");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:226:5
[INFO] [stdout]     |
[INFO] [stdout] 226 |     println!("\n=== CPU Affinity Demo ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:235:20
[INFO] [stdout]     |
[INFO] [stdout] 235 |             .name(&format!("cpu_{}_task", cpu_id))
[INFO] [stdout]     |                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::format;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:239:17
[INFO] [stdout]     |
[INFO] [stdout] 239 |                 println!("Task running on CPU {} (mask: 0x{:x})", cpu_id, affinity_mask);
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:250:17
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 println!("CPU {} task completed with result: {}", cpu_id, result);
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:263:5
[INFO] [stdout]     |
[INFO] [stdout] 263 |     println!("CPU affinity demonstration completed");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:268:5
[INFO] [stdout]     |
[INFO] [stdout] 268 |     println!("\n=== Performance Monitoring Demo ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:280:20
[INFO] [stdout]     |
[INFO] [stdout] 280 |             .name(&format!("monitored_task_{}", i))
[INFO] [stdout]     |                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::format;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:310:13
[INFO] [stdout]     |
[INFO] [stdout] 310 |             println!("Thread {} metrics:", thread_id);
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:311:13
[INFO] [stdout]     |
[INFO] [stdout] 311 |             println!("  CPU time: {}ms", metrics.cpu_time_ms);
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:312:13
[INFO] [stdout]     |
[INFO] [stdout] 312 |             println!("  Context switches: {}", metrics.context_switches);
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:313:13
[INFO] [stdout]     |
[INFO] [stdout] 313 |             println!("  Preemptions: {}", metrics.preemptions);
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:314:13
[INFO] [stdout]     |
[INFO] [stdout] 314 |             println!("  Average latency: {}μs", metrics.avg_latency_us);
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:320:5
[INFO] [stdout]     |
[INFO] [stdout] 320 |     println!("\nSystem Metrics:");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:321:5
[INFO] [stdout]     |
[INFO] [stdout] 321 |     println!("  Total threads: {}", system_metrics.active_threads);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:322:5
[INFO] [stdout]     |
[INFO] [stdout] 322 |     println!("  Total context switches: {}", system_metrics.total_context_switches);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:323:5
[INFO] [stdout]     |
[INFO] [stdout] 323 |     println!("  CPU utilization: {:.1}%", system_metrics.cpu_utilization * 100.0);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:324:5
[INFO] [stdout]     |
[INFO] [stdout] 324 |     println!("  Memory usage: {}KB", system_metrics.memory_usage_kb);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:326:5
[INFO] [stdout]     |
[INFO] [stdout] 326 |     println!("Performance monitoring completed");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:331:5
[INFO] [stdout]     |
[INFO] [stdout] 331 |     println!("=== Advanced Scheduler Configuration Example ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:343:5
[INFO] [stdout]     |
[INFO] [stdout] 343 |     println!("\n=== All Scheduler Demonstrations Completed Successfully ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]  --> examples/performance_test.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use preemptive_mlthreading_rust::{
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]   |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]   |
[INFO] [stdout] 8 - use preemptive_mlthreading_rust::{
[INFO] [stdout] 8 + use preemptive_threads::{
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `preemptive_mlthreading_rust`
[INFO] [stdout]  --> examples/performance_test.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use preemptive_mlthreading_rust::{
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]   |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]   |
[INFO] [stdout] 8 - use preemptive_mlthreading_rust::{
[INFO] [stdout] 8 + use preemptive_threads::{
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/performance_test.rs:283:9
[INFO] [stdout]     |
[INFO] [stdout] 283 |     use preemptive_mlthreading_rust::Mutex;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 283 -     use preemptive_mlthreading_rust::Mutex;
[INFO] [stdout] 283 +     use preemptive_threads::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Box`
[INFO] [stdout]    --> examples/scheduler_config.rs:101:24
[INFO] [stdout]     |
[INFO] [stdout] 101 |             .scheduler(Box::new(scheduler.clone()))
[INFO] [stdout]     |                        ^^^ use of undeclared type `Box`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::boxed::Box;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Box` in this scope
[INFO] [stdout]    --> examples/scheduler_config.rs:330:25
[INFO] [stdout]     |
[INFO] [stdout] 330 | fn main() -> Result<(), Box<dyn core::error::Error>> {
[INFO] [stdout]     |                         ^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::boxed::Box;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: no global memory allocator found but one is required; link to std or add `#[global_allocator]` to a static item that implements the GlobalAlloc trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vec::Vec`
[INFO] [stdout]  --> examples/scheduler_config.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | use alloc::{vec, vec::Vec};
[INFO] [stdout]   |                  ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> examples/scheduler_config.rs:244:50
[INFO] [stdout]     |
[INFO] [stdout] 244 |                     result = result.wrapping_add((cpu_id as u64 * i as u64));
[INFO] [stdout]     |                                                  ^                        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 244 -                     result = result.wrapping_add((cpu_id as u64 * i as u64));
[INFO] [stdout] 244 +                     result = result.wrapping_add(cpu_id as u64 * i as u64);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `#[panic_handler]` function required, but not found
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unwinding panics are not supported without std
[INFO] [stdout]   |
[INFO] [stdout]   = help: using nightly cargo, use -Zbuild-std with panic="abort" to avoid unwinding
[INFO] [stdout]   = note: since the core library is usually precompiled with panic="unwind", rebuilding your crate with panic="abort" may not be enough to fix the problem
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `preemptive-threads` (example "safe_threading") due to 1 previous error; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `preemptive-threads` (example "platform_timer_demo") due to 2 previous errors; 1 warning emitted
[INFO] [stdout] warning: unused imports: `protected_stack` and `yield_now`
[INFO] [stdout]  --> examples/safe_threading.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     protected_stack, yield_now, Mutex, StackStatus, ThreadBuilder, ATOMIC_SCHEDULER,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0152]: duplicate lang item in crate `preemptive_threads` (which `safe_threading` depends on): `panic_impl`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the lang item is first defined in crate `std` (which `safe_threading` depends on)
[INFO] [stdout]   = note: first definition in `std` loaded from /opt/rustwide/rustup-home/toolchains/beta-2025-10-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-d959d58f670e0224.so, /opt/rustwide/rustup-home/toolchains/beta-2025-10-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-d959d58f670e0224.rlib
[INFO] [stdout]   = note: second definition in `preemptive_threads` loaded from /opt/rustwide/target/debug/deps/libpreemptive_threads-fdcb4069fc698581.rlib
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `preemptive_threads::get_preemption_count`
[INFO] [stdout]  --> examples/platform_timer_demo.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     get_preemption_count, ThreadBuilder, ATOMIC_SCHEDULER,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     no `get_preemption_count` in the root
[INFO] [stdout]   |     help: a similar name exists in the module: `preemption_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0152`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ThreadBuilder`
[INFO] [stdout]  --> examples/platform_timer_demo.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 |     get_preemption_count, ThreadBuilder, ATOMIC_SCHEDULER,
[INFO] [stdout]   |                           ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0152]: duplicate lang item in crate `preemptive_threads` (which `platform_timer_demo` depends on): `panic_impl`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the lang item is first defined in crate `std` (which `platform_timer_demo` depends on)
[INFO] [stdout]   = note: first definition in `std` loaded from /opt/rustwide/rustup-home/toolchains/beta-2025-10-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-d959d58f670e0224.so, /opt/rustwide/rustup-home/toolchains/beta-2025-10-28-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-d959d58f670e0224.rlib
[INFO] [stdout]   = note: second definition in `preemptive_threads` loaded from /opt/rustwide/target/debug/deps/libpreemptive_threads-fdcb4069fc698581.rlib
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/scheduler_config.rs:110:23
[INFO] [stdout]     |
[INFO] [stdout] 110 |         let _result = handle.join()?;
[INFO] [stdout]     |                       ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0152, E0432.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0152`.
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/performance_test.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     println!("CPU benchmark {} completed: {}ms for {} iterations", 
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/performance_test.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     println!("Memory benchmark {} completed: {}ms for {}MB", 
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:110:5
[INFO] [stdout]     |
[INFO] [stdout] 110 |     println!("Lock contention task {} completed: {}ms, {} acquisitions", 
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     println!("Context switch benchmark {} completed: {}ms, {} switches", 
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 167 |     println!("Fast path benchmark {} completed: {}ms, {} operations", 
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:197:5
[INFO] [stdout]     |
[INFO] [stdout] 197 |     println!("\n=== CPU Benchmarks ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:215:17
[INFO] [stdout]     |
[INFO] [stdout] 215 |                 println!("Starting {} CPU benchmark with {} iterations", label, iterations);
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:233:5
[INFO] [stdout]     |
[INFO] [stdout] 233 |     println!("CPU Benchmark Results:");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 |         println!("  Test {}: {}ms (result: 0x{:x})", i, time, result);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:237:5
[INFO] [stdout]     |
[INFO] [stdout] 237 |     println!("  Average time: {}ms", avg_time);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:243:5
[INFO] [stdout]     |
[INFO] [stdout] 243 |     println!("\n=== Memory Benchmarks ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:256:17
[INFO] [stdout]     |
[INFO] [stdout] 256 |                 println!("Starting memory benchmark with {}MB", size_mb);
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/scheduler_config.rs:218:23
[INFO] [stdout]     |
[INFO] [stdout] 218 |         let _result = handle.join()?;
[INFO] [stdout]     |                       ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:270:5
[INFO] [stdout]     |
[INFO] [stdout] 270 |     println!("Memory Benchmark Results:");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:273:9
[INFO] [stdout]     |
[INFO] [stdout] 273 |         println!("  {}MB: {}ms ({} MB/s, checksum: 0x{:x})", 
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/scheduler_config.rs:260:23
[INFO] [stdout]     |
[INFO] [stdout] 260 |         let _result = handle.join()?;
[INFO] [stdout]     |                       ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:281:5
[INFO] [stdout]     |
[INFO] [stdout] 281 |     println!("\n=== Lock Contention Benchmark ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/scheduler_config.rs:305:25
[INFO] [stdout]     |
[INFO] [stdout] 305 |         let thread_id = handle.thread().id();
[INFO] [stdout]     |                         ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:311:5
[INFO] [stdout]     |
[INFO] [stdout] 311 |     println!("Lock Contention Results:");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     println!("  Final counter value: {}", final_counter);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:314:9
[INFO] [stdout]     |
[INFO] [stdout] 314 |         println!("  Thread {}: {} acquisitions", i, acquisitions);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:321:5
[INFO] [stdout]     |
[INFO] [stdout] 321 |     println!("\n=== Context Switch Benchmark ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:344:5
[INFO] [stdout]     |
[INFO] [stdout] 344 |     println!("Context Switch Results:");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:345:5
[INFO] [stdout]     |
[INFO] [stdout] 345 |     println!("  Total context switches: {}", total_switches);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:346:5
[INFO] [stdout]     |
[INFO] [stdout] 346 |     println!("  Average per thread: {}", total_switches / results.len() as u32);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:350:9
[INFO] [stdout]     |
[INFO] [stdout] 350 |         println!("  Optimization stats:");
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]   --> examples/scheduler_config.rs:87:54
[INFO] [stdout]    |
[INFO] [stdout] 87 | fn demonstrate_round_robin_scheduler() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 87 - fn demonstrate_round_robin_scheduler() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout] 87 + fn demonstrate_round_robin_scheduler() -> Result<(), preemptive_threads::ThreadError> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/scheduler_config.rs:178:52
[INFO] [stdout]     |
[INFO] [stdout] 178 | fn demonstrate_priority_scheduling() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 178 - fn demonstrate_priority_scheduling() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout] 178 + fn demonstrate_priority_scheduling() -> Result<(), preemptive_threads::ThreadError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/scheduler_config.rs:225:45
[INFO] [stdout]     |
[INFO] [stdout] 225 | fn demonstrate_cpu_affinity() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 225 - fn demonstrate_cpu_affinity() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout] 225 + fn demonstrate_cpu_affinity() -> Result<(), preemptive_threads::ThreadError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:351:9
[INFO] [stdout]     |
[INFO] [stdout] 351 |         println!("    Average switch time: {}ns", stats.average_switch_time_ns);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:352:9
[INFO] [stdout]     |
[INFO] [stdout] 352 |         println!("    Fastest switch: {}ns", stats.fastest_switch_ns);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/scheduler_config.rs:267:55
[INFO] [stdout]     |
[INFO] [stdout] 267 | fn demonstrate_performance_monitoring() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 267 - fn demonstrate_performance_monitoring() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout] 267 + fn demonstrate_performance_monitoring() -> Result<(), preemptive_threads::ThreadError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0412, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `preemptive_mlthreading_rust`
[INFO] [stdout]  --> examples/basic_threading.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use preemptive_mlthreading_rust::{
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]   |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]   |
[INFO] [stdout] 8 - use preemptive_mlthreading_rust::{
[INFO] [stdout] 8 + use preemptive_threads::{
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/basic_threading.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     println!("Worker {} completed {} iterations, final counter: {}", 
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/basic_threading.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     println!("Compute worker {} finished with result: {}", thread_id, result);
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/basic_threading.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     println!("=== Basic Threading Example ===");
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/basic_threading.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     println!("Security initialized");
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]   --> examples/basic_threading.rs:83:20
[INFO] [stdout]    |
[INFO] [stdout] 83 |             .name(&format!("worker_{}", i))
[INFO] [stdout]    |                    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]    |
[INFO] [stdout]  6 + use alloc::format;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]   --> examples/basic_threading.rs:98:20
[INFO] [stdout]    |
[INFO] [stdout] 98 |             .name(&format!("compute_{}", i))
[INFO] [stdout]    |                    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]    |
[INFO] [stdout]  6 + use alloc::format;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/basic_threading.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     println!("Spawned {} worker threads and {} compute threads", 
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/basic_threading.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     println!("\n=== Results ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/basic_threading.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     println!("Worker thread results: {:?}", worker_results);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/basic_threading.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     println!("Compute thread results: {:?}", compute_results);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/basic_threading.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 133 |         println!("Final shared counter value: {}", *final_counter);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/basic_threading.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 138 |     println!("\n=== Security Stats ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/basic_threading.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 139 |     println!("Total violations: {}", stats.total_violations);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/basic_threading.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 140 |     println!("Stack violations: {}", stats.stack_violations);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/basic_threading.rs:141:5
[INFO] [stdout]     |
[INFO] [stdout] 141 |     println!("Features enabled: {:?}", stats.features_enabled);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/basic_threading.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     println!("\n=== Threading Example Completed Successfully ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: no global memory allocator found but one is required; link to std or add `#[global_allocator]` to a static item that implements the GlobalAlloc trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `#[panic_handler]` function required, but not found
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:353:9
[INFO] [stdout]     |
[INFO] [stdout] 353 |         println!("    Slowest switch: {}ns", stats.slowest_switch_ns);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unwinding panics are not supported without std
[INFO] [stdout]   |
[INFO] [stdout]   = help: using nightly cargo, use -Zbuild-std with panic="abort" to avoid unwinding
[INFO] [stdout]   = note: since the core library is usually precompiled with panic="unwind", rebuilding your crate with panic="abort" may not be enough to fix the problem
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0580]: `main` function has wrong type
[INFO] [stdout]   --> examples/basic_threading.rs:59:14
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn main() -> Result<(), Box<dyn core::error::Error>> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `()`, found `Result<(), Box<dyn Error>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected signature `fn() -> ()`
[INFO] [stdout]               found signature `fn() -> Result<(), Box<(dyn core::error::Error + 'static)>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/basic_threading.rs:114:22
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let result = handle.join()?;
[INFO] [stdout]     |                      ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/basic_threading.rs:121:22
[INFO] [stdout]     |
[INFO] [stdout] 121 |         let result = handle.join()?;
[INFO] [stdout]     |                      ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0432, E0580.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:354:9
[INFO] [stdout]     |
[INFO] [stdout] 354 |         println!("    Meets target: {}", stats.meets_target);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:361:5
[INFO] [stdout]     |
[INFO] [stdout] 361 |     println!("\n=== Fast Path Operations Benchmark ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:386:5
[INFO] [stdout]     |
[INFO] [stdout] 386 |     println!("Fast Path Results:");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:387:5
[INFO] [stdout]     |
[INFO] [stdout] 387 |     println!("  Total operations: {}", total_ops);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:388:5
[INFO] [stdout]     |
[INFO] [stdout] 388 |     println!("  Fast path hits: {}", metrics.fast_path_hits);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:389:5
[INFO] [stdout]     |
[INFO] [stdout] 389 |     println!("  Slow path hits: {}", metrics.slow_path_hits);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:390:5
[INFO] [stdout]     |
[INFO] [stdout] 390 |     println!("  Lock-free operations: {}", metrics.lockfree_operations);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:391:5
[INFO] [stdout]     |
[INFO] [stdout] 391 |     println!("  Effectiveness ratio: {:.2}%", metrics.effectiveness_ratio() * 100.0);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:392:5
[INFO] [stdout]     |
[INFO] [stdout] 392 |     println!("  Lock-free ratio: {:.2}%", metrics.lockfree_ratio() * 100.0);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:398:5
[INFO] [stdout]     |
[INFO] [stdout] 398 |     println!("\n=== Performance Optimizations Status ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:402:9
[INFO] [stdout]     |
[INFO] [stdout] 402 |         println!("Context Switch Optimization:");
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:403:9
[INFO] [stdout]     |
[INFO] [stdout] 403 |         println!("  Enabled: {}", stats.optimization_enabled);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 404 |         println!("  Average time: {}ns", stats.average_switch_time_ns);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:405:9
[INFO] [stdout]     |
[INFO] [stdout] 405 |         println!("  Target met: {}", stats.meets_target);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:410:9
[INFO] [stdout]     |
[INFO] [stdout] 410 |         println!("Cache Optimization:");
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:411:9
[INFO] [stdout]     |
[INFO] [stdout] 411 |         println!("  L1 hit rate: {:.2}%", stats.l1_hit_rate * 100.0);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:412:9
[INFO] [stdout]     |
[INFO] [stdout] 412 |         println!("  L2 hit rate: {:.2}%", stats.l2_hit_rate * 100.0);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:413:9
[INFO] [stdout]     |
[INFO] [stdout] 413 |         println!("  Cache-friendly operations: {}", stats.cache_friendly_ops);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:418:9
[INFO] [stdout]     |
[INFO] [stdout] 418 |         println!("NUMA Optimization:");
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:419:9
[INFO] [stdout]     |
[INFO] [stdout] 419 |         println!("  Local allocations: {}", stats.local_allocations);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:420:9
[INFO] [stdout]     |
[INFO] [stdout] 420 |         println!("  Remote allocations: {}", stats.remote_allocations);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:421:9
[INFO] [stdout]     |
[INFO] [stdout] 421 |         println!("  Locality ratio: {:.2}%", 
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:428:5
[INFO] [stdout]     |
[INFO] [stdout] 428 |     println!("CPU Features:");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:429:5
[INFO] [stdout]     |
[INFO] [stdout] 429 |     println!("  SIMD support: {}", cpu_features.simd_support);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:430:5
[INFO] [stdout]     |
[INFO] [stdout] 430 |     println!("  Hardware entropy: {}", cpu_features.hardware_rng);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:431:5
[INFO] [stdout]     |
[INFO] [stdout] 431 |     println!("  Architecture optimizations: {}", cpu_features.arch_optimizations);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:435:9
[INFO] [stdout]     |
[INFO] [stdout] 435 |         println!("Memory Pool Optimization:");
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:436:9
[INFO] [stdout]     |
[INFO] [stdout] 436 |         println!("  Pool allocations: {}", stats.pool_allocations);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `preemptive-threads` (example "scheduler_config") due to 48 previous errors; 2 warnings emitted
[INFO] [stderr] error: could not compile `preemptive-threads` (example "basic_threading") due to 23 previous errors
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:437:9
[INFO] [stdout]     |
[INFO] [stdout] 437 |         println!("  Fallback allocations: {}", stats.fallback_allocations);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:438:9
[INFO] [stdout]     |
[INFO] [stdout] 438 |         println!("  Pool efficiency: {:.2}%", 
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:445:5
[INFO] [stdout]     |
[INFO] [stdout] 445 |     println!("=== Performance Testing and Benchmarking ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:454:5
[INFO] [stdout]     |
[INFO] [stdout] 454 |     println!("Performance optimizations initialized\n");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:467:5
[INFO] [stdout]     |
[INFO] [stdout] 467 |     println!("\n=== System Performance Metrics ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:469:5
[INFO] [stdout]     |
[INFO] [stdout] 469 |     println!("Active threads: {}", system_metrics.active_threads);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:470:5
[INFO] [stdout]     |
[INFO] [stdout] 470 |     println!("Total context switches: {}", system_metrics.total_context_switches);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:471:5
[INFO] [stdout]     |
[INFO] [stdout] 471 |     println!("CPU utilization: {:.1}%", system_metrics.cpu_utilization * 100.0);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:472:5
[INFO] [stdout]     |
[INFO] [stdout] 472 |     println!("Memory usage: {}KB", system_metrics.memory_usage_kb);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:473:5
[INFO] [stdout]     |
[INFO] [stdout] 473 |     println!("Scheduler efficiency: {:.2}%", system_metrics.scheduler_efficiency * 100.0);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:477:5
[INFO] [stdout]     |
[INFO] [stdout] 477 |     println!("\nSystem Health:");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:478:5
[INFO] [stdout]     |
[INFO] [stdout] 478 |     println!("  Overall status: {:?}", health.status);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:479:5
[INFO] [stdout]     |
[INFO] [stdout] 479 |     println!("  Thread health: {}/{} healthy", 
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:481:5
[INFO] [stdout]     |
[INFO] [stdout] 481 |     println!("  Resource usage: {:.1}%", health.resource_usage * 100.0);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:486:5
[INFO] [stdout]     |
[INFO] [stdout] 486 |     println!("\n=== Performance Testing Completed Successfully ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]   --> examples/performance_test.rs:24:22
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 24 -     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 24 +     let start_time = preemptive_threads::time::get_monotonic_time();
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout]  6 + use preemptive_threads::time;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `time`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 24 -     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 24 +     let start_time = time::get_monotonic_time();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]   --> examples/performance_test.rs:41:20
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 41 -     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 41 +     let end_time = preemptive_threads::time::get_monotonic_time();
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout]  6 + use preemptive_threads::time;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `time`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 41 -     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 41 +     let end_time = time::get_monotonic_time();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]   --> examples/performance_test.rs:52:22
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 52 -     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 52 +     let start_time = preemptive_threads::time::get_monotonic_time();
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout]  6 + use preemptive_threads::time;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `time`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 52 -     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 52 +     let start_time = time::get_monotonic_time();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]   --> examples/performance_test.rs:73:20
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 73 -     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 73 +     let end_time = preemptive_threads::time::get_monotonic_time();
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout]  6 + use preemptive_threads::time;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `time`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 73 -     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 73 +     let end_time = time::get_monotonic_time();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]   --> examples/performance_test.rs:84:22
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 84 -     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 84 +     let start_time = preemptive_threads::time::get_monotonic_time();
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout]  6 + use preemptive_threads::time;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `time`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 84 -     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 84 +     let start_time = time::get_monotonic_time();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/performance_test.rs:107:20
[INFO] [stdout]     |
[INFO] [stdout] 107 |     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 107 -     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 107 +     let end_time = preemptive_threads::time::get_monotonic_time();
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout]   6 + use preemptive_threads::time;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `time`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 107 -     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 107 +     let end_time = time::get_monotonic_time();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/performance_test.rs:118:22
[INFO] [stdout]     |
[INFO] [stdout] 118 |     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 118 -     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 118 +     let start_time = preemptive_threads::time::get_monotonic_time();
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout]   6 + use preemptive_threads::time;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `time`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 118 -     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 118 +     let start_time = time::get_monotonic_time();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/performance_test.rs:134:20
[INFO] [stdout]     |
[INFO] [stdout] 134 |     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 134 -     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 134 +     let end_time = preemptive_threads::time::get_monotonic_time();
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout]   6 + use preemptive_threads::time;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `time`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 134 -     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 134 +     let end_time = time::get_monotonic_time();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/performance_test.rs:145:22
[INFO] [stdout]     |
[INFO] [stdout] 145 |     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 145 -     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 145 +     let start_time = preemptive_threads::time::get_monotonic_time();
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout]   6 + use preemptive_threads::time;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `time`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 145 -     let start_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 145 +     let start_time = time::get_monotonic_time();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/performance_test.rs:155:23
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let counter = preemptive_mlthreading_rust::portable_atomic::AtomicU64::new(i as u64);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 155 -         let counter = preemptive_mlthreading_rust::portable_atomic::AtomicU64::new(i as u64);
[INFO] [stdout] 155 +         let counter = preemptive_threads::portable_atomic::AtomicU64::new(i as u64);
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   6 + use core::sync::atomic::AtomicU64;
[INFO] [stdout]     |
[INFO] [stdout]   6 + use portable_atomic::AtomicU64;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `AtomicU64`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 155 -         let counter = preemptive_mlthreading_rust::portable_atomic::AtomicU64::new(i as u64);
[INFO] [stdout] 155 +         let counter = AtomicU64::new(i as u64);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/performance_test.rs:164:20
[INFO] [stdout]     |
[INFO] [stdout] 164 |     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 164 -     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 164 +     let end_time = preemptive_threads::time::get_monotonic_time();
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout]   6 + use preemptive_threads::time;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `time`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 164 -     let end_time = preemptive_mlthreading_rust::time::get_monotonic_time();
[INFO] [stdout] 164 +     let end_time = time::get_monotonic_time();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Box` in this scope
[INFO] [stdout]    --> examples/performance_test.rs:444:25
[INFO] [stdout]     |
[INFO] [stdout] 444 | fn main() -> Result<(), Box<dyn core::error::Error>> {
[INFO] [stdout]     |                         ^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::boxed::Box;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: no global memory allocator found but one is required; link to std or add `#[global_allocator]` to a static item that implements the GlobalAlloc trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `#[panic_handler]` function required, but not found
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unwinding panics are not supported without std
[INFO] [stdout]   |
[INFO] [stdout]   = help: using nightly cargo, use -Zbuild-std with panic="abort" to avoid unwinding
[INFO] [stdout]   = note: since the core library is usually precompiled with panic="unwind", rebuilding your crate with panic="abort" may not be enough to fix the problem
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]  --> examples/security_hardened.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use preemptive_mlthreading_rust::{
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]   |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]   |
[INFO] [stdout] 8 - use preemptive_mlthreading_rust::{
[INFO] [stdout] 8 + use preemptive_threads::{
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `preemptive_mlthreading_rust`
[INFO] [stdout]  --> examples/security_hardened.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use preemptive_mlthreading_rust::{
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]   |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]   |
[INFO] [stdout] 8 - use preemptive_mlthreading_rust::{
[INFO] [stdout] 8 + use preemptive_threads::{
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/performance_test.rs:225:22
[INFO] [stdout]     |
[INFO] [stdout] 225 |         let result = handle.join()?;
[INFO] [stdout]     |                      ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/performance_test.rs:266:22
[INFO] [stdout]     |
[INFO] [stdout] 266 |         let result = handle.join()?;
[INFO] [stdout]     |                      ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/performance_test.rs:272:53
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let mb_per_sec = (memory_sizes[i] * 1000) / time.max(1);
[INFO] [stdout]     |                                                     ^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/performance_test.rs:302:28
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let acquisitions = handle.join()?;
[INFO] [stdout]     |                            ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/security_hardened.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     println!("Isolated worker {} processing untrusted data", worker_id);
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/performance_test.rs:338:24
[INFO] [stdout]     |
[INFO] [stdout] 338 |         let switches = handle.join()?;
[INFO] [stdout]     |                        ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/security_hardened.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |         println!("Worker {} got secure random data", worker_id);
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/performance_test.rs:377:26
[INFO] [stdout]     |
[INFO] [stdout] 377 |         let operations = handle.join()?;
[INFO] [stdout]     |                          ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/security_hardened.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     println!("Isolated worker {} completed with result: {}", worker_id, result);
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/security_hardened.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     println!("Trusted system worker {} started", worker_id);
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/security_hardened.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     println!("Trusted worker {} completed with result: {}", worker_id, result);
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/security_hardened.rs:68:5
[INFO] [stdout]    |
[INFO] [stdout] 68 |     println!("Stack-protected worker {} started", worker_id);
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/security_hardened.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 |     println!("Stack-protected worker {} completed with checksum: {}", worker_id, checksum);
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]   --> examples/security_hardened.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 91 |     println!("CFI-protected worker {} started", worker_id);
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 112 |     println!("CFI-protected worker {} completed with result: {}", worker_id, result);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]   --> examples/performance_test.rs:83:46
[INFO] [stdout]    |
[INFO] [stdout] 83 | fn lock_contention_task(task_id: u32, lock: &preemptive_mlthreading_rust::Mutex<u64>) -> u32 {
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 83 - fn lock_contention_task(task_id: u32, lock: &preemptive_mlthreading_rust::Mutex<u64>) -> u32 {
[INFO] [stdout] 83 + fn lock_contention_task(task_id: u32, lock: &preemptive_threads::Mutex<u64>) -> u32 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/performance_test.rs:196:52
[INFO] [stdout]     |
[INFO] [stdout] 196 | fn run_cpu_benchmarks() -> Result<Vec<(u32, u64)>, preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 196 - fn run_cpu_benchmarks() -> Result<Vec<(u32, u64)>, preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout] 196 + fn run_cpu_benchmarks() -> Result<Vec<(u32, u64)>, preemptive_threads::ThreadError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/performance_test.rs:242:55
[INFO] [stdout]     |
[INFO] [stdout] 242 | fn run_memory_benchmarks() -> Result<Vec<(u32, u64)>, preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 242 - fn run_memory_benchmarks() -> Result<Vec<(u32, u64)>, preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout] 242 + fn run_memory_benchmarks() -> Result<Vec<(u32, u64)>, preemptive_threads::ThreadError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/performance_test.rs:280:56
[INFO] [stdout]     |
[INFO] [stdout] 280 | fn run_lock_contention_benchmark() -> Result<Vec<u32>, preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 280 - fn run_lock_contention_benchmark() -> Result<Vec<u32>, preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout] 280 + fn run_lock_contention_benchmark() -> Result<Vec<u32>, preemptive_threads::ThreadError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/performance_test.rs:320:55
[INFO] [stdout]     |
[INFO] [stdout] 320 | fn run_context_switch_benchmark() -> Result<Vec<u32>, preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 320 - fn run_context_switch_benchmark() -> Result<Vec<u32>, preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout] 320 + fn run_context_switch_benchmark() -> Result<Vec<u32>, preemptive_threads::ThreadError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/performance_test.rs:360:50
[INFO] [stdout]     |
[INFO] [stdout] 360 | fn run_fast_path_benchmark() -> Result<Vec<u32>, preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 360 - fn run_fast_path_benchmark() -> Result<Vec<u32>, preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout] 360 + fn run_fast_path_benchmark() -> Result<Vec<u32>, preemptive_threads::ThreadError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0412, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:117:5
[INFO] [stdout]     |
[INFO] [stdout] 117 |     println!("\n=== Thread Isolation Demo ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:131:20
[INFO] [stdout]     |
[INFO] [stdout] 131 |             .name(&format!("isolated_worker_{}", i))
[INFO] [stdout]     |                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::format;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:138:21
[INFO] [stdout]     |
[INFO] [stdout] 138 |                     println!("Warning: Could not create isolation domain");
[INFO] [stdout]     |                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:151:20
[INFO] [stdout]     |
[INFO] [stdout] 151 |             .name(&format!("trusted_worker_{}", i))
[INFO] [stdout]     |                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::format;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     println!("Thread isolation demo completed");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:169:5
[INFO] [stdout]     |
[INFO] [stdout] 169 |     println!("\n=== Stack Protection Demo ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:176:20
[INFO] [stdout]     |
[INFO] [stdout] 176 |             .name(&format!("stack_protected_{}", i))
[INFO] [stdout]     |                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::format;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:192:5
[INFO] [stdout]     |
[INFO] [stdout] 192 |     println!("Stack protection demo completed");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:197:5
[INFO] [stdout]     |
[INFO] [stdout] 197 |     println!("\n=== CFI Protection Demo ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:204:20
[INFO] [stdout]     |
[INFO] [stdout] 204 |             .name(&format!("cfi_protected_{}", i))
[INFO] [stdout]     |                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::format;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:218:5
[INFO] [stdout]     |
[INFO] [stdout] 218 |     println!("CFI protection demo completed");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `preemptive-threads` (example "performance_test") due to 99 previous errors
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:223:5
[INFO] [stdout]     |
[INFO] [stdout] 223 |     println!("\n=== ASLR Demo ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:230:13
[INFO] [stdout]     |
[INFO] [stdout] 230 |             println!("Layout {}: stack=0x{:x}, heap=0x{:x}, entropy={}",
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:238:5
[INFO] [stdout]     |
[INFO] [stdout] 238 |     println!("ASLR Stats:");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:239:5
[INFO] [stdout]     |
[INFO] [stdout] 239 |     println!("  Randomizations applied: {}", aslr_stats.randomizations_applied);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:240:5
[INFO] [stdout]     |
[INFO] [stdout] 240 |     println!("  Entropy consumed: {} bytes", aslr_stats.entropy_consumed);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:241:5
[INFO] [stdout]     |
[INFO] [stdout] 241 |     println!("  Available entropy bits: {}", aslr_stats.entropy_bits_available);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:248:20
[INFO] [stdout]     |
[INFO] [stdout] 248 |             .name(&format!("aslr_worker_{}", i))
[INFO] [stdout]     |                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::format;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:252:17
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 println!("ASLR worker {} running with randomized layout", i);
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:275:5
[INFO] [stdout]     |
[INFO] [stdout] 275 |     println!("ASLR demo completed");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:280:5
[INFO] [stdout]     |
[INFO] [stdout] 280 |     println!("\n=== Audit Logging Demo ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:294:20
[INFO] [stdout]     |
[INFO] [stdout] 294 |             .name(&format!("audited_worker_{}", i))
[INFO] [stdout]     |                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::format;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:302:22
[INFO] [stdout]     |
[INFO] [stdout] 302 |                     &format!("Audited worker {} started", i)
[INFO] [stdout]     |                      ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::format;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `format` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:328:22
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     &format!("Audited worker {} completed", i)
[INFO] [stdout]     |                      ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::format;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:345:5
[INFO] [stdout]     |
[INFO] [stdout] 345 |     println!("Recent audit events ({} total):", recent_events.len());
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:347:9
[INFO] [stdout]     |
[INFO] [stdout] 347 |         println!("  {}", event);
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:352:9
[INFO] [stdout]     |
[INFO] [stdout] 352 |         println!("JSON audit log length: {} bytes", log_json.len());
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:355:5
[INFO] [stdout]     |
[INFO] [stdout] 355 |     println!("Audit logging demo completed");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:360:5
[INFO] [stdout]     |
[INFO] [stdout] 360 |     println!("=== Security Hardening Features Demo ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:375:5
[INFO] [stdout]     |
[INFO] [stdout] 375 |     println!("Comprehensive security initialized\n");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:393:5
[INFO] [stdout]     |
[INFO] [stdout] 393 |     println!("\n=== Final Security Statistics ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:394:5
[INFO] [stdout]     |
[INFO] [stdout] 394 |     println!("Total violations detected: {}", stats.total_violations);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:395:5
[INFO] [stdout]     |
[INFO] [stdout] 395 |     println!("Stack violations: {}", stats.stack_violations);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:396:5
[INFO] [stdout]     |
[INFO] [stdout] 396 |     println!("CFI violations: {}", stats.cfi_violations);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:397:5
[INFO] [stdout]     |
[INFO] [stdout] 397 |     println!("Isolation violations: {}", stats.isolation_violations);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:398:5
[INFO] [stdout]     |
[INFO] [stdout] 398 |     println!("Memory violations: {}", stats.memory_violations);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:399:5
[INFO] [stdout]     |
[INFO] [stdout] 399 |     println!("Crypto violations: {}", stats.crypto_violations);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:401:5
[INFO] [stdout]     |
[INFO] [stdout] 401 |     println!("Security features enabled:");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:402:5
[INFO] [stdout]     |
[INFO] [stdout] 402 |     println!("  Stack canaries: {}", stats.features_enabled.canaries);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:403:5
[INFO] [stdout]     |
[INFO] [stdout] 403 |     println!("  Guard pages: {}", stats.features_enabled.guard_pages);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:404:5
[INFO] [stdout]     |
[INFO] [stdout] 404 |     println!("  CFI: {}", stats.features_enabled.cfi);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:405:5
[INFO] [stdout]     |
[INFO] [stdout] 405 |     println!("  Isolation: {}", stats.features_enabled.isolation);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:406:5
[INFO] [stdout]     |
[INFO] [stdout] 406 |     println!("  ASLR: {}", stats.features_enabled.aslr);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:407:5
[INFO] [stdout]     |
[INFO] [stdout] 407 |     println!("  Audit: {}", stats.features_enabled.audit);
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `println` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:409:5
[INFO] [stdout]     |
[INFO] [stdout] 409 |     println!("\n=== Security Hardening Demo Completed Successfully ===");
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/security_hardened.rs:136:33
[INFO] [stdout]     |
[INFO] [stdout] 136 |                 let thread_id = preemptive_mlthreading_rust::thread_new::current_thread_id();
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 136 -                 let thread_id = preemptive_mlthreading_rust::thread_new::current_thread_id();
[INFO] [stdout] 136 +                 let thread_id = preemptive_threads::thread_new::current_thread_id();
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout]   6 + use preemptive_threads::thread_new;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `thread_new`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 136 -                 let thread_id = preemptive_mlthreading_rust::thread_new::current_thread_id();
[INFO] [stdout] 136 +                 let thread_id = thread_new::current_thread_id();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/security_hardened.rs:284:9
[INFO] [stdout]     |
[INFO] [stdout] 284 |         preemptive_mlthreading_rust::thread_new::current_thread_id(),
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 284 -         preemptive_mlthreading_rust::thread_new::current_thread_id(),
[INFO] [stdout] 284 +         preemptive_threads::thread_new::current_thread_id(),
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout]   6 + use preemptive_threads::thread_new;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `thread_new`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 284 -         preemptive_mlthreading_rust::thread_new::current_thread_id(),
[INFO] [stdout] 284 +         thread_new::current_thread_id(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/security_hardened.rs:300:21
[INFO] [stdout]     |
[INFO] [stdout] 300 |                     preemptive_mlthreading_rust::thread_new::current_thread_id(),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 300 -                     preemptive_mlthreading_rust::thread_new::current_thread_id(),
[INFO] [stdout] 300 +                     preemptive_threads::thread_new::current_thread_id(),
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout]   6 + use preemptive_threads::thread_new;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `thread_new`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 300 -                     preemptive_mlthreading_rust::thread_new::current_thread_id(),
[INFO] [stdout] 300 +                     thread_new::current_thread_id(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/security_hardened.rs:313:29
[INFO] [stdout]     |
[INFO] [stdout] 313 | ...                   preemptive_mlthreading_rust::thread_new::current_thread_id(),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 313 -                             preemptive_mlthreading_rust::thread_new::current_thread_id(),
[INFO] [stdout] 313 +                             preemptive_threads::thread_new::current_thread_id(),
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout]   6 + use preemptive_threads::thread_new;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `thread_new`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 313 -                             preemptive_mlthreading_rust::thread_new::current_thread_id(),
[INFO] [stdout] 313 +                             thread_new::current_thread_id(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/security_hardened.rs:326:21
[INFO] [stdout]     |
[INFO] [stdout] 326 |                     preemptive_mlthreading_rust::thread_new::current_thread_id(),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 326 -                     preemptive_mlthreading_rust::thread_new::current_thread_id(),
[INFO] [stdout] 326 +                     preemptive_threads::thread_new::current_thread_id(),
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout]   6 + use preemptive_threads::thread_new;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `thread_new`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 326 -                     preemptive_mlthreading_rust::thread_new::current_thread_id(),
[INFO] [stdout] 326 +                     thread_new::current_thread_id(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Box` in this scope
[INFO] [stdout]    --> examples/security_hardened.rs:359:25
[INFO] [stdout]     |
[INFO] [stdout] 359 | fn main() -> Result<(), Box<dyn core::error::Error>> {
[INFO] [stdout]     |                         ^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]     |
[INFO] [stdout]   6 + use alloc::boxed::Box;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: no global memory allocator found but one is required; link to std or add `#[global_allocator]` to a static item that implements the GlobalAlloc trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `string::ToString` and `vec::Vec`
[INFO] [stdout]  --> examples/security_hardened.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | use alloc::{vec, vec::Vec, string::ToString};
[INFO] [stdout]   |                  ^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `#[panic_handler]` function required, but not found
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unwinding panics are not supported without std
[INFO] [stdout]   |
[INFO] [stdout]   = help: using nightly cargo, use -Zbuild-std with panic="abort" to avoid unwinding
[INFO] [stdout]   = note: since the core library is usually precompiled with panic="unwind", rebuilding your crate with panic="abort" may not be enough to fix the problem
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> examples/security_hardened.rs:78:42
[INFO] [stdout]    |
[INFO] [stdout] 78 |         checksum = checksum.wrapping_add(i);
[INFO] [stdout]    |                             ------------ ^ expected `u32`, found `usize`
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             arguments to this method are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: method defined here
[INFO] [stdout]   --> /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/num/mod.rs:1134:5
[INFO] [stdout]    = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: you can convert a `usize` to a `u32` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 78 |         checksum = checksum.wrapping_add(i.try_into().unwrap());
[INFO] [stdout]    |                                           ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/security_hardened.rs:161:23
[INFO] [stdout]     |
[INFO] [stdout] 161 |         let _result = handle.join()?;
[INFO] [stdout]     |                       ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/security_hardened.rs:189:23
[INFO] [stdout]     |
[INFO] [stdout] 189 |         let _result = handle.join()?;
[INFO] [stdout]     |                       ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/security_hardened.rs:215:23
[INFO] [stdout]     |
[INFO] [stdout] 215 |         let _result = handle.join()?;
[INFO] [stdout]     |                       ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/security_hardened.rs:272:23
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let _result = handle.join()?;
[INFO] [stdout]     |                       ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> examples/security_hardened.rs:340:23
[INFO] [stdout]     |
[INFO] [stdout] 340 |         let _result = handle.join()?;
[INFO] [stdout]     |                       ^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/security_hardened.rs:116:49
[INFO] [stdout]     |
[INFO] [stdout] 116 | fn demonstrate_thread_isolation() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 116 - fn demonstrate_thread_isolation() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout] 116 + fn demonstrate_thread_isolation() -> Result<(), preemptive_threads::ThreadError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/security_hardened.rs:168:49
[INFO] [stdout]     |
[INFO] [stdout] 168 | fn demonstrate_stack_protection() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 168 - fn demonstrate_stack_protection() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout] 168 + fn demonstrate_stack_protection() -> Result<(), preemptive_threads::ThreadError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/security_hardened.rs:196:47
[INFO] [stdout]     |
[INFO] [stdout] 196 | fn demonstrate_cfi_protection() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 196 - fn demonstrate_cfi_protection() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout] 196 + fn demonstrate_cfi_protection() -> Result<(), preemptive_threads::ThreadError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/security_hardened.rs:222:37
[INFO] [stdout]     |
[INFO] [stdout] 222 | fn demonstrate_aslr() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 222 - fn demonstrate_aslr() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout] 222 + fn demonstrate_aslr() -> Result<(), preemptive_threads::ThreadError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]    --> examples/security_hardened.rs:279:46
[INFO] [stdout]     |
[INFO] [stdout] 279 | fn demonstrate_audit_logging() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `preemptive_mlthreading_rust`
[INFO] [stdout]     |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 279 - fn demonstrate_audit_logging() -> Result<(), preemptive_mlthreading_rust::ThreadError> {
[INFO] [stdout] 279 + fn demonstrate_audit_logging() -> Result<(), preemptive_threads::ThreadError> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0308, E0412, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `preemptive-threads` (example "security_hardened") due to 76 previous errors; 1 warning emitted
[INFO] running `Command { std: "docker" "inspect" "80991ca50e1430bf41b095e4de71e951d76306f61275a08657fc6cc74bfc5cfc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "80991ca50e1430bf41b095e4de71e951d76306f61275a08657fc6cc74bfc5cfc", kill_on_drop: false }`
[INFO] [stdout] 80991ca50e1430bf41b095e4de71e951d76306f61275a08657fc6cc74bfc5cfc
