[INFO] fetching crate EMCompute 6.0.0...
[INFO] testing EMCompute-6.0.0 against beta-2026-01-20 for beta-1.94-1
[INFO] extracting crate EMCompute 6.0.0 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate EMCompute 6.0.0
[INFO] finished tweaking crates.io crate EMCompute 6.0.0
[INFO] tweaked toml for crates.io crate EMCompute 6.0.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate EMCompute 6.0.0 on toolchain beta-2026-01-20
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-01-20" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-01-20" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 160 packages to latest compatible versions
[INFO] [stderr]       Adding cbindgen v0.27.0 (available: v0.29.2)
[INFO] [stderr]       Adding flume v0.11.1 (available: v0.12.0)
[INFO] [stderr]       Adding pollster v0.3.0 (available: v0.4.0)
[INFO] [stderr]       Adding wgpu v22.1.0 (available: v28.0.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-01-20" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a80efca76ce8875c0819da173013140247042750060e3a7e50d44063b584920f
[INFO] running `Command { std: "docker" "start" "-a" "a80efca76ce8875c0819da173013140247042750060e3a7e50d44063b584920f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a80efca76ce8875c0819da173013140247042750060e3a7e50d44063b584920f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a80efca76ce8875c0819da173013140247042750060e3a7e50d44063b584920f", kill_on_drop: false }`
[INFO] [stdout] a80efca76ce8875c0819da173013140247042750060e3a7e50d44063b584920f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b5db6f66dd92c8a9d35747579587fe1293f47698284b0e3bceee6cd0e0500220
[INFO] running `Command { std: "docker" "start" "-a" "b5db6f66dd92c8a9d35747579587fe1293f47698284b0e3bceee6cd0e0500220", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling naga v22.1.0
[INFO] [stderr]    Compiling ash v0.38.0+1.3.281
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling libloading v0.8.9
[INFO] [stderr]    Compiling bit-vec v0.7.0
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling spirv v0.3.0+sdk-1.3.268.0
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling gpu-alloc-types v0.3.0
[INFO] [stderr]    Compiling gpu-descriptor-types v0.2.0
[INFO] [stderr]    Compiling wgpu-hal v22.0.0
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling wgpu-types v22.0.0
[INFO] [stderr]    Compiling wgpu-core v22.1.0
[INFO] [stderr]    Compiling profiling v1.0.17
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling gpu-alloc v0.6.0
[INFO] [stderr]    Compiling wgpu v22.1.0
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling pollster v0.3.0
[INFO] [stderr]    Compiling bit-set v0.6.0
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling gpu-descriptor v0.3.2
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling khronos-egl v6.0.0
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling nanorand v0.7.0
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling EMCompute v6.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variant `all` should have an upper camel case name
[INFO] [stdout]  --> src/configuration.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     all = 0 , 
[INFO] [stdout]   |     ^^^ help: convert the identifier to upper camel case: `All`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `default_backend` should have an upper camel case name
[INFO] [stdout]  --> src/configuration.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     default_backend = 1 ,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DefaultBackend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `vulkan` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     vulkan = 2,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Vulkan`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `opengl` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     opengl = 3 ,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Opengl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `metal` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     metal = 4 ,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Metal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `direct_x12` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     direct_x12 = 5,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `DirectX12`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `webgpu` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     webgpu = 6 ,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Webgpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `highest_support` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     highest_support = 7 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `HighestSupport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `lowest_support` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     lowest_support = 8 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LowestSupport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `none` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     none = 0 ,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `None`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `prefer_performance` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     prefer_performance = 0 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PreferPerformance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `prefer_memory` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     prefer_memory = 1 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PreferMemory`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `custom_memory` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     custom_memory = 3 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomMemory`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `lowest_speed` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     lowest_speed = 0 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LowestSpeed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `low_speed` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     low_speed = 1 ,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `LowSpeed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `default_speed` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     default_speed = 2 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DefaultSpeed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `custom_speed` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:72:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     custom_speed = 3 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomSpeed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GPUComputingConfig`, `GPUMemorySettings`, `GPUPowerSettings`, and `GPUSpeedSettings`
[INFO] [stdout]  --> src/gpu_device.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     GPUPowerSettings , 
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 6 |     GPUSpeedSettings , 
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 7 |     GPUMemorySettings , 
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     GPUComputingConfig};
[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 variable: `name`
[INFO] [stdout]   --> src/gpu_device.rs:59:17
[INFO] [stdout]    |
[INFO] [stdout] 59 |             let name = std::ffi::CString::from_raw(self.name as *mut c_char);
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `driver`
[INFO] [stdout]   --> src/gpu_device.rs:60:17
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let driver = std::ffi::CString::from_raw(self.driver as *mut c_char);
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_driver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `driver_info`
[INFO] [stdout]   --> src/gpu_device.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |             let driver_info = std::ffi::CString::from_raw(self.driver_info as *mut c_char);
[INFO] [stdout]    |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_driver_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gpu_device.rs:181:13
[INFO] [stdout]     |
[INFO] [stdout] 181 |         let mut devices = &mut *devices;
[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: `tmp_vec`
[INFO] [stdout]    --> src/gpu_device.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |         let tmp_vec = Vec::from_raw_parts(devices.infos , devices.len , devices.len);
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tmp_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:164:9
[INFO] [stdout]     |
[INFO] [stdout] 164 |     let mut adapter : wgpu::Adapter;
[INFO] [stdout]     |         ----^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:759:43
[INFO] [stdout]     |
[INFO] [stdout] 757 |                     unsafe {
[INFO] [stdout]     |                     ------ because it's nested under this `unsafe` block
[INFO] [stdout] 758 |                         let mapped_data_ptr = mapped_data.as_ptr();
[INFO] [stdout] 759 |                         let data: &[u8] = unsafe { std::slice::from_raw_parts(mapped_data_ptr , binder.data_len) };
[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: `data`
[INFO] [stdout]    --> src/lib.rs:741:21
[INFO] [stdout]     |
[INFO] [stdout] 741 |                 let data : Box<[u8]> = unsafe{
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `EMCompute` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = help: convert the identifier to snake case: `emcompute`
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:236:23
[INFO] [stdout]     |
[INFO] [stdout] 236 |         if let None = &GPU_RES_KEEPER {
[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]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 236 |         if let None = &raw const GPU_RES_KEEPER {
[INFO] [stdout]     |                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:240:20
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let arci = GPU_RES_KEEPER.clone().unwrap();
[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 `GPU_Data` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:241:17
[INFO] [stdout]     |
[INFO] [stdout] 241 |         let mut GPU_Data = arci.lock().unwrap();
[INFO] [stdout]     |                 ^^^^^^^^ help: convert the identifier to snake case: `gpu_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:260:15
[INFO] [stdout]     |
[INFO] [stdout] 260 |         match &GPU_RES_KEEPER {
[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] 260 |         match &raw const GPU_RES_KEEPER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:321:15
[INFO] [stdout]     |
[INFO] [stdout] 321 |         match &GPU_RES_KEEPER {
[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] 321 |         match &raw const GPU_RES_KEEPER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:406:19
[INFO] [stdout]     |
[INFO] [stdout] 406 |             match &GPU_RES_KEEPER {
[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] 406 |             match &raw const GPU_RES_KEEPER {
[INFO] [stdout]     |                    +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 45.03s
[INFO] running `Command { std: "docker" "inspect" "b5db6f66dd92c8a9d35747579587fe1293f47698284b0e3bceee6cd0e0500220", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b5db6f66dd92c8a9d35747579587fe1293f47698284b0e3bceee6cd0e0500220", kill_on_drop: false }`
[INFO] [stdout] b5db6f66dd92c8a9d35747579587fe1293f47698284b0e3bceee6cd0e0500220
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7e4c75dc34f9bde979e40d2b761c499ff9862e8c788ad55a8b61d96cde2af392
[INFO] running `Command { std: "docker" "start" "-a" "7e4c75dc34f9bde979e40d2b761c499ff9862e8c788ad55a8b61d96cde2af392", kill_on_drop: false }`
[INFO] [stdout] warning: variant `all` should have an upper camel case name
[INFO] [stdout]  --> src/configuration.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     all = 0 , 
[INFO] [stdout]   |     ^^^ help: convert the identifier to upper camel case: `All`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `default_backend` should have an upper camel case name
[INFO] [stdout]  --> src/configuration.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     default_backend = 1 ,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DefaultBackend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `vulkan` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     vulkan = 2,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Vulkan`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `opengl` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     opengl = 3 ,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Opengl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `metal` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     metal = 4 ,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Metal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `direct_x12` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     direct_x12 = 5,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `DirectX12`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `webgpu` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     webgpu = 6 ,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Webgpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `highest_support` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     highest_support = 7 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `HighestSupport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `lowest_support` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     lowest_support = 8 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LowestSupport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `none` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     none = 0 ,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `None`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `prefer_performance` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     prefer_performance = 0 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PreferPerformance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `prefer_memory` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     prefer_memory = 1 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PreferMemory`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `custom_memory` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     custom_memory = 3 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomMemory`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `lowest_speed` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     lowest_speed = 0 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LowestSpeed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `low_speed` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     low_speed = 1 ,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `LowSpeed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `default_speed` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     default_speed = 2 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DefaultSpeed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `custom_speed` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:72:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     custom_speed = 3 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomSpeed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GPUComputingConfig`, `GPUMemorySettings`, `GPUPowerSettings`, and `GPUSpeedSettings`
[INFO] [stdout]  --> src/gpu_device.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     GPUPowerSettings , 
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 6 |     GPUSpeedSettings , 
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 7 |     GPUMemorySettings , 
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     GPUComputingConfig};
[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 variable: `name`
[INFO] [stdout]   --> src/gpu_device.rs:59:17
[INFO] [stdout]    |
[INFO] [stdout] 59 |             let name = std::ffi::CString::from_raw(self.name as *mut c_char);
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `driver`
[INFO] [stdout]   --> src/gpu_device.rs:60:17
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let driver = std::ffi::CString::from_raw(self.driver as *mut c_char);
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_driver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `driver_info`
[INFO] [stdout]   --> src/gpu_device.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |             let driver_info = std::ffi::CString::from_raw(self.driver_info as *mut c_char);
[INFO] [stdout]    |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_driver_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gpu_device.rs:181:13
[INFO] [stdout]     |
[INFO] [stdout] 181 |         let mut devices = &mut *devices;
[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: `tmp_vec`
[INFO] [stdout]    --> src/gpu_device.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |         let tmp_vec = Vec::from_raw_parts(devices.infos , devices.len , devices.len);
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tmp_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling EMCompute v6.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:164:9
[INFO] [stdout]     |
[INFO] [stdout] 164 |     let mut adapter : wgpu::Adapter;
[INFO] [stdout]     |         ----^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:759:43
[INFO] [stdout]     |
[INFO] [stdout] 757 |                     unsafe {
[INFO] [stdout]     |                     ------ because it's nested under this `unsafe` block
[INFO] [stdout] 758 |                         let mapped_data_ptr = mapped_data.as_ptr();
[INFO] [stdout] 759 |                         let data: &[u8] = unsafe { std::slice::from_raw_parts(mapped_data_ptr , binder.data_len) };
[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: `data`
[INFO] [stdout]    --> src/lib.rs:741:21
[INFO] [stdout]     |
[INFO] [stdout] 741 |                 let data : Box<[u8]> = unsafe{
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `EMCompute` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = help: convert the identifier to snake case: `emcompute`
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:236:23
[INFO] [stdout]     |
[INFO] [stdout] 236 |         if let None = &GPU_RES_KEEPER {
[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]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 236 |         if let None = &raw const GPU_RES_KEEPER {
[INFO] [stdout]     |                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:240:20
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let arci = GPU_RES_KEEPER.clone().unwrap();
[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 `GPU_Data` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:241:17
[INFO] [stdout]     |
[INFO] [stdout] 241 |         let mut GPU_Data = arci.lock().unwrap();
[INFO] [stdout]     |                 ^^^^^^^^ help: convert the identifier to snake case: `gpu_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:260:15
[INFO] [stdout]     |
[INFO] [stdout] 260 |         match &GPU_RES_KEEPER {
[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] 260 |         match &raw const GPU_RES_KEEPER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:321:15
[INFO] [stdout]     |
[INFO] [stdout] 321 |         match &GPU_RES_KEEPER {
[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] 321 |         match &raw const GPU_RES_KEEPER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:406:19
[INFO] [stdout]     |
[INFO] [stdout] 406 |             match &GPU_RES_KEEPER {
[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] 406 |             match &raw const GPU_RES_KEEPER {
[INFO] [stdout]     |                    +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `all` should have an upper camel case name
[INFO] [stdout]  --> src/configuration.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     all = 0 , 
[INFO] [stdout]   |     ^^^ help: convert the identifier to upper camel case: `All`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `default_backend` should have an upper camel case name
[INFO] [stdout]  --> src/configuration.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     default_backend = 1 ,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DefaultBackend`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `vulkan` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     vulkan = 2,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Vulkan`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `opengl` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     opengl = 3 ,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Opengl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `metal` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     metal = 4 ,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Metal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `direct_x12` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     direct_x12 = 5,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `DirectX12`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `webgpu` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     webgpu = 6 ,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Webgpu`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `highest_support` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     highest_support = 7 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `HighestSupport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `lowest_support` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     lowest_support = 8 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LowestSupport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `none` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     none = 0 ,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `None`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `prefer_performance` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     prefer_performance = 0 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PreferPerformance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `prefer_memory` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     prefer_memory = 1 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PreferMemory`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `custom_memory` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     custom_memory = 3 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomMemory`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `lowest_speed` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     lowest_speed = 0 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LowestSpeed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `low_speed` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     low_speed = 1 ,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `LowSpeed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `default_speed` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     default_speed = 2 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DefaultSpeed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `custom_speed` should have an upper camel case name
[INFO] [stdout]   --> src/configuration.rs:72:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     custom_speed = 3 ,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomSpeed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GPUComputingConfig`, `GPUMemorySettings`, `GPUPowerSettings`, and `GPUSpeedSettings`
[INFO] [stdout]  --> src/gpu_device.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     GPUPowerSettings , 
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 6 |     GPUSpeedSettings , 
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 7 |     GPUMemorySettings , 
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     GPUComputingConfig};
[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 variable: `name`
[INFO] [stdout]   --> src/gpu_device.rs:59:17
[INFO] [stdout]    |
[INFO] [stdout] 59 |             let name = std::ffi::CString::from_raw(self.name as *mut c_char);
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `driver`
[INFO] [stdout]   --> src/gpu_device.rs:60:17
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let driver = std::ffi::CString::from_raw(self.driver as *mut c_char);
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_driver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `driver_info`
[INFO] [stdout]   --> src/gpu_device.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |             let driver_info = std::ffi::CString::from_raw(self.driver_info as *mut c_char);
[INFO] [stdout]    |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_driver_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gpu_device.rs:181:13
[INFO] [stdout]     |
[INFO] [stdout] 181 |         let mut devices = &mut *devices;
[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: `tmp_vec`
[INFO] [stdout]    --> src/gpu_device.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |         let tmp_vec = Vec::from_raw_parts(devices.infos , devices.len , devices.len);
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tmp_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:164:9
[INFO] [stdout]     |
[INFO] [stdout] 164 |     let mut adapter : wgpu::Adapter;
[INFO] [stdout]     |         ----^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:759:43
[INFO] [stdout]     |
[INFO] [stdout] 757 |                     unsafe {
[INFO] [stdout]     |                     ------ because it's nested under this `unsafe` block
[INFO] [stdout] 758 |                         let mapped_data_ptr = mapped_data.as_ptr();
[INFO] [stdout] 759 |                         let data: &[u8] = unsafe { std::slice::from_raw_parts(mapped_data_ptr , binder.data_len) };
[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: `data`
[INFO] [stdout]    --> src/lib.rs:741:21
[INFO] [stdout]     |
[INFO] [stdout] 741 |                 let data : Box<[u8]> = unsafe{
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:236:23
[INFO] [stdout]     |
[INFO] [stdout] 236 |         if let None = &GPU_RES_KEEPER {
[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]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 236 |         if let None = &raw const GPU_RES_KEEPER {
[INFO] [stdout]     |                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:240:20
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let arci = GPU_RES_KEEPER.clone().unwrap();
[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 `GPU_Data` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:241:17
[INFO] [stdout]     |
[INFO] [stdout] 241 |         let mut GPU_Data = arci.lock().unwrap();
[INFO] [stdout]     |                 ^^^^^^^^ help: convert the identifier to snake case: `gpu_data`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:260:15
[INFO] [stdout]     |
[INFO] [stdout] 260 |         match &GPU_RES_KEEPER {
[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] 260 |         match &raw const GPU_RES_KEEPER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:321:15
[INFO] [stdout]     |
[INFO] [stdout] 321 |         match &GPU_RES_KEEPER {
[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] 321 |         match &raw const GPU_RES_KEEPER {
[INFO] [stdout]     |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> src/lib.rs:406:19
[INFO] [stdout]     |
[INFO] [stdout] 406 |             match &GPU_RES_KEEPER {
[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] 406 |             match &raw const GPU_RES_KEEPER {
[INFO] [stdout]     |                    +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.69s
[INFO] running `Command { std: "docker" "inspect" "7e4c75dc34f9bde979e40d2b761c499ff9862e8c788ad55a8b61d96cde2af392", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7e4c75dc34f9bde979e40d2b761c499ff9862e8c788ad55a8b61d96cde2af392", kill_on_drop: false }`
[INFO] [stdout] 7e4c75dc34f9bde979e40d2b761c499ff9862e8c788ad55a8b61d96cde2af392
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 7d3831c690c192f2f2462a373e57b61e1b88023840b1b955b346f57b284ed0a8
[INFO] running `Command { std: "docker" "start" "-a" "7d3831c690c192f2f2462a373e57b61e1b88023840b1b955b346f57b284ed0a8", kill_on_drop: false }`
[INFO] [stderr] warning: variant `all` should have an upper camel case name
[INFO] [stderr]  --> src/configuration.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 |     all = 0 , 
[INFO] [stderr]   |     ^^^ help: convert the identifier to upper camel case: `All`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `default_backend` should have an upper camel case name
[INFO] [stderr]  --> src/configuration.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     default_backend = 1 ,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DefaultBackend`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `vulkan` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 |     vulkan = 2,
[INFO] [stderr]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Vulkan`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `opengl` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 |     opengl = 3 ,
[INFO] [stderr]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Opengl`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `metal` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 |     metal = 4 ,
[INFO] [stderr]    |     ^^^^^ help: convert the identifier to upper camel case: `Metal`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `direct_x12` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 |     direct_x12 = 5,
[INFO] [stderr]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `DirectX12`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `webgpu` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 |     webgpu = 6 ,
[INFO] [stderr]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Webgpu`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `highest_support` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 |     highest_support = 7 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `HighestSupport`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `lowest_support` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 |     lowest_support = 8 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LowestSupport`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `none` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:32:5
[INFO] [stderr]    |
[INFO] [stderr] 32 |     none = 0 ,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `None`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `prefer_performance` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:46:5
[INFO] [stderr]    |
[INFO] [stderr] 46 |     prefer_performance = 0 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PreferPerformance`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `prefer_memory` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:48:5
[INFO] [stderr]    |
[INFO] [stderr] 48 |     prefer_memory = 1 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PreferMemory`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `custom_memory` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:52:5
[INFO] [stderr]    |
[INFO] [stderr] 52 |     custom_memory = 3 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomMemory`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `lowest_speed` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:64:5
[INFO] [stderr]    |
[INFO] [stderr] 64 |     lowest_speed = 0 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LowestSpeed`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `low_speed` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:67:5
[INFO] [stderr]    |
[INFO] [stderr] 67 |     low_speed = 1 ,
[INFO] [stderr]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `LowSpeed`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `default_speed` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:69:5
[INFO] [stderr]    |
[INFO] [stderr] 69 |     default_speed = 2 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DefaultSpeed`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `custom_speed` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:72:5
[INFO] [stderr]    |
[INFO] [stderr] 72 |     custom_speed = 3 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomSpeed`
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `GPUComputingConfig`, `GPUMemorySettings`, `GPUPowerSettings`, and `GPUSpeedSettings`
[INFO] [stderr]  --> src/gpu_device.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 |     GPUPowerSettings , 
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 6 |     GPUSpeedSettings , 
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 7 |     GPUMemorySettings , 
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 8 |     GPUComputingConfig};
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `name`
[INFO] [stderr]   --> src/gpu_device.rs:59:17
[INFO] [stderr]    |
[INFO] [stderr] 59 |             let name = std::ffi::CString::from_raw(self.name as *mut c_char);
[INFO] [stderr]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `driver`
[INFO] [stderr]   --> src/gpu_device.rs:60:17
[INFO] [stderr]    |
[INFO] [stderr] 60 |             let driver = std::ffi::CString::from_raw(self.driver as *mut c_char);
[INFO] [stderr]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_driver`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `driver_info`
[INFO] [stderr]   --> src/gpu_device.rs:61:17
[INFO] [stderr]    |
[INFO] [stderr] 61 |             let driver_info = std::ffi::CString::from_raw(self.driver_info as *mut c_char);
[INFO] [stderr]    |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_driver_info`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/gpu_device.rs:181:13
[INFO] [stderr]     |
[INFO] [stderr] 181 |         let mut devices = &mut *devices;
[INFO] [stderr]     |             ----^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tmp_vec`
[INFO] [stderr]    --> src/gpu_device.rs:182:13
[INFO] [stderr]     |
[INFO] [stderr] 182 |         let tmp_vec = Vec::from_raw_parts(devices.infos , devices.len , devices.len);
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tmp_vec`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/lib.rs:164:9
[INFO] [stderr]     |
[INFO] [stderr] 164 |     let mut adapter : wgpu::Adapter;
[INFO] [stderr]     |         ----^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/lib.rs:759:43
[INFO] [stderr]     |
[INFO] [stderr] 757 |                     unsafe {
[INFO] [stderr]     |                     ------ because it's nested under this `unsafe` block
[INFO] [stderr] 758 |                         let mapped_data_ptr = mapped_data.as_ptr();
[INFO] [stderr] 759 |                         let data: &[u8] = unsafe { std::slice::from_raw_parts(mapped_data_ptr , binder.data_len) };
[INFO] [stderr]     |                                           ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `data`
[INFO] [stderr]    --> src/lib.rs:741:21
[INFO] [stderr]     |
[INFO] [stderr] 741 |                 let data : Box<[u8]> = unsafe{
[INFO] [stderr]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stderr] 
[INFO] [stderr] warning: crate `EMCompute` should have a snake case name
[INFO] [stderr]   |
[INFO] [stderr]   = help: convert the identifier to snake case: `emcompute`
[INFO] [stderr]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> src/lib.rs:236:23
[INFO] [stderr]     |
[INFO] [stderr] 236 |         if let None = &GPU_RES_KEEPER {
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] help: use `&raw const` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 236 |         if let None = &raw const GPU_RES_KEEPER {
[INFO] [stderr]     |                        +++++++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> src/lib.rs:240:20
[INFO] [stderr]     |
[INFO] [stderr] 240 |         let arci = GPU_RES_KEEPER.clone().unwrap();
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: variable `GPU_Data` should have a snake case name
[INFO] [stderr]    --> src/lib.rs:241:17
[INFO] [stderr]     |
[INFO] [stderr] 241 |         let mut GPU_Data = arci.lock().unwrap();
[INFO] [stderr]     |                 ^^^^^^^^ help: convert the identifier to snake case: `gpu_data`
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> src/lib.rs:260:15
[INFO] [stderr]     |
[INFO] [stderr] 260 |         match &GPU_RES_KEEPER {
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] help: use `&raw const` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 260 |         match &raw const GPU_RES_KEEPER {
[INFO] [stderr]     |                +++++++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> src/lib.rs:321:15
[INFO] [stderr]     |
[INFO] [stderr] 321 |         match &GPU_RES_KEEPER {
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] help: use `&raw const` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 321 |         match &raw const GPU_RES_KEEPER {
[INFO] [stderr]     |                +++++++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> src/lib.rs:406:19
[INFO] [stderr]     |
[INFO] [stderr] 406 |             match &GPU_RES_KEEPER {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] help: use `&raw const` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 406 |             match &raw const GPU_RES_KEEPER {
[INFO] [stderr]     |                    +++++++++
[INFO] [stderr] 
[INFO] [stderr] warning: variable `GPU_Data` should have a snake case name
[INFO] [stderr]    --> src/lib.rs:241:17
[INFO] [stderr]     |
[INFO] [stderr] 241 |         let mut GPU_Data = arci.lock().unwrap();
[INFO] [stderr]     |                 ^^^^^^^^ help: convert the identifier to snake case: `gpu_data`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `EMCompute` (lib) generated 33 warnings (run `cargo fix --lib -p EMCompute` to apply 8 suggestions)
[INFO] [stderr] warning: `EMCompute` (lib test) generated 32 warnings (31 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.16s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/EMCompute-b408781d1623f551)
[INFO] [stdout] running 0 tests
[INFO] [stderr]    Doc-tests EMCompute
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr] warning: variant `all` should have an upper camel case name
[INFO] [stderr]  --> src/configuration.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 |     all = 0 , 
[INFO] [stderr]   |     ^^^ help: convert the identifier to upper camel case: `All`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `default_backend` should have an upper camel case name
[INFO] [stderr]  --> src/configuration.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     default_backend = 1 ,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DefaultBackend`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `vulkan` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 |     vulkan = 2,
[INFO] [stderr]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Vulkan`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `opengl` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 |     opengl = 3 ,
[INFO] [stderr]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Opengl`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `metal` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 |     metal = 4 ,
[INFO] [stderr]    |     ^^^^^ help: convert the identifier to upper camel case: `Metal`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `direct_x12` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 |     direct_x12 = 5,
[INFO] [stderr]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `DirectX12`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `webgpu` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 |     webgpu = 6 ,
[INFO] [stderr]    |     ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Webgpu`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `highest_support` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 |     highest_support = 7 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `HighestSupport`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `lowest_support` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 |     lowest_support = 8 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LowestSupport`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `none` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:32:5
[INFO] [stderr]    |
[INFO] [stderr] 32 |     none = 0 ,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `None`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `prefer_performance` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:46:5
[INFO] [stderr]    |
[INFO] [stderr] 46 |     prefer_performance = 0 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PreferPerformance`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `prefer_memory` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:48:5
[INFO] [stderr]    |
[INFO] [stderr] 48 |     prefer_memory = 1 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PreferMemory`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `custom_memory` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:52:5
[INFO] [stderr]    |
[INFO] [stderr] 52 |     custom_memory = 3 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomMemory`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `lowest_speed` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:64:5
[INFO] [stderr]    |
[INFO] [stderr] 64 |     lowest_speed = 0 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LowestSpeed`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `low_speed` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:67:5
[INFO] [stderr]    |
[INFO] [stderr] 67 |     low_speed = 1 ,
[INFO] [stderr]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `LowSpeed`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `default_speed` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:69:5
[INFO] [stderr]    |
[INFO] [stderr] 69 |     default_speed = 2 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DefaultSpeed`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `custom_speed` should have an upper camel case name
[INFO] [stderr]   --> src/configuration.rs:72:5
[INFO] [stderr]    |
[INFO] [stderr] 72 |     custom_speed = 3 ,
[INFO] [stderr]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CustomSpeed`
[INFO] [stderr] 
[INFO] [stderr] warning: 17 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "7d3831c690c192f2f2462a373e57b61e1b88023840b1b955b346f57b284ed0a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7d3831c690c192f2f2462a373e57b61e1b88023840b1b955b346f57b284ed0a8", kill_on_drop: false }`
[INFO] [stdout] 7d3831c690c192f2f2462a373e57b61e1b88023840b1b955b346f57b284ed0a8
