[INFO] fetching crate kronos-compute 0.2.3-rc3...
[INFO] testing kronos-compute-0.2.3-rc3 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate kronos-compute 0.2.3-rc3 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate kronos-compute 0.2.3-rc3
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate kronos-compute 0.2.3-rc3
[INFO] tweaked toml for crates.io crate kronos-compute 0.2.3-rc3 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate kronos-compute 0.2.3-rc3 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate kronos-compute 0.2.3-rc3 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded half v2.2.0
[INFO] [stderr]   Downloaded bitflags v2.9.3
[INFO] [stderr]   Downloaded winapi-util v0.1.10
[INFO] [stderr]   Downloaded clap v4.5.45
[INFO] [stderr]   Downloaded rayon-core v1.12.0
[INFO] [stderr]   Downloaded clap_builder v4.5.44
[INFO] [stderr]   Downloaded regex v1.11.2
[INFO] [stderr]   Downloaded rayon v1.8.0
[INFO] [stderr]   Downloaded regex-automata v0.4.10
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2f04234127a02366c3146cbe9eff95ab9300293dc02ceeafa757c606ea260041
[INFO] running `Command { std: "docker" "start" "-a" "2f04234127a02366c3146cbe9eff95ab9300293dc02ceeafa757c606ea260041", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2f04234127a02366c3146cbe9eff95ab9300293dc02ceeafa757c606ea260041", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2f04234127a02366c3146cbe9eff95ab9300293dc02ceeafa757c606ea260041", kill_on_drop: false }`
[INFO] [stdout] 2f04234127a02366c3146cbe9eff95ab9300293dc02ceeafa757c606ea260041
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2f5c4dc8b197aa68152de9bf62bcfdf28017a1453368e4c976b16199dce2f3c0
[INFO] running `Command { std: "docker" "start" "-a" "2f5c4dc8b197aa68152de9bf62bcfdf28017a1453368e4c976b16199dce2f3c0", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling libc v0.2.175
[INFO] [stderr]    Compiling serde_json v1.0.143
[INFO] [stderr]    Compiling memchr v2.7.5
[INFO] [stderr]    Compiling kronos-compute v0.2.3-rc3 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling cfg-if v1.0.3
[INFO] [stderr]    Compiling bitflags v2.9.3
[INFO] [stderr]    Compiling libloading v0.8.8
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stdout] warning: unused import: `vkDestroyDescriptorPool`
[INFO] [stdout]   --> src/api/context.rs:14:29
[INFO] [stdout]    |
[INFO] [stdout] 14 |     vkCreateDescriptorPool, vkDestroyDescriptorPool,
[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: `log::warn`
[INFO] [stdout]  --> src/implementation/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use log::warn;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/implementation/instance.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/implementation/device.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/implementation/memory.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/implementation/buffer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/implementation/pipeline.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/implementation/descriptor.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/implementation/sync.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/api/context.rs:261:17
[INFO] [stdout]     |
[INFO] [stdout] 261 |                 _ => 5,
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/api/context.rs:261:17
[INFO] [stdout]     |
[INFO] [stdout] 256 |                 VkPhysicalDeviceType::DiscreteGpu => 0,
[INFO] [stdout]     |                 --------------------------------- matches some of the same values
[INFO] [stdout] 257 |                 VkPhysicalDeviceType::IntegratedGpu => 1,
[INFO] [stdout]     |                 ----------------------------------- matches some of the same values
[INFO] [stdout] 258 |                 VkPhysicalDeviceType::VirtualGpu => 2,
[INFO] [stdout]     |                 -------------------------------- matches some of the same values
[INFO] [stdout] 259 |                 VkPhysicalDeviceType::Cpu => 3,
[INFO] [stdout]     |                 ------------------------- matches some of the same values
[INFO] [stdout] 260 |                 VkPhysicalDeviceType::Other => 4,
[INFO] [stdout] 261 |                 _ => 5,
[INFO] [stdout]     |                 ^ ...and 1 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `waitAll`
[INFO] [stdout]   --> src/implementation/sync.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 87 |     waitAll: VkBool32,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_waitAll`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `timeout`
[INFO] [stdout]   --> src/implementation/sync.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 88 |     timeout: u64,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timeout`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `physical_device` and `queue_family_index` are never read
[INFO] [stdout]   --> src/api/context.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub(super) struct ContextInner {
[INFO] [stdout]    |                   ------------ fields in this struct
[INFO] [stdout] 23 |     pub(super) instance: VkInstance,
[INFO] [stdout] 24 |     pub(super) physical_device: VkPhysicalDevice,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub(super) queue_family_index: 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: associated function `create_descriptor_pool` is never used
[INFO] [stdout]    --> src/api/context.rs:379:15
[INFO] [stdout]     |
[INFO] [stdout]  52 | impl ComputeContext {
[INFO] [stdout]     | ------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 379 |     unsafe fn create_descriptor_pool(device: VkDevice) -> Result<VkDescriptorPool> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `app_info` and `enabled_extensions` are never read
[INFO] [stdout]   --> src/implementation/instance.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct InstanceData {
[INFO] [stdout]    |        ------------ fields in this struct
[INFO] [stdout] 20 |     app_info: ApplicationInfo,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 21 |     enabled_extensions: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `app_name`, `app_version`, `engine_name`, and `engine_version` are never read
[INFO] [stdout]   --> src/implementation/instance.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | struct ApplicationInfo {
[INFO] [stdout]    |        --------------- fields in this struct
[INFO] [stdout] 25 |     app_name: String,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 26 |     app_version: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 27 |     engine_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 28 |     engine_version: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `physical_device` is never read
[INFO] [stdout]   --> src/implementation/device.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct DeviceData {
[INFO] [stdout]    |        ---------- field in this struct
[INFO] [stdout] 20 |     physical_device: VkPhysicalDevice,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device` and `memory_type_index` are never read
[INFO] [stdout]   --> src/implementation/memory.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct MemoryData {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 20 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 21 |     size: VkDeviceSize,
[INFO] [stdout] 22 |     memory_type_index: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device`, `usage`, and `sharing_mode` are never read
[INFO] [stdout]   --> src/implementation/buffer.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct BufferData {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 20 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 21 |     size: VkDeviceSize,
[INFO] [stdout] 22 |     usage: VkBufferUsageFlags,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     sharing_mode: VkSharingMode,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device` and `spirv` are never read
[INFO] [stdout]   --> src/implementation/pipeline.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct ShaderData {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 28 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 29 |     spirv: Vec<u32>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device`, `layout`, and `shader` are never read
[INFO] [stdout]   --> src/implementation/pipeline.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | struct PipelineData {
[INFO] [stdout]    |        ------------ fields in this struct
[INFO] [stdout] 33 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 34 |     layout: VkPipelineLayout,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 35 |     shader: VkShaderModule,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device` and `set_layouts` are never read
[INFO] [stdout]   --> src/implementation/pipeline.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | struct PipelineLayoutData {
[INFO] [stdout]    |        ------------------ fields in this struct
[INFO] [stdout] 39 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 40 |     set_layouts: Vec<VkDescriptorSetLayout>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device` and `queue_family_index` are never read
[INFO] [stdout]   --> src/implementation/pipeline.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | struct CommandPoolData {
[INFO] [stdout]    |        --------------- fields in this struct
[INFO] [stdout] 44 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 45 |     queue_family_index: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `pool` and `level` are never read
[INFO] [stdout]   --> src/implementation/pipeline.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct CommandBufferData {
[INFO] [stdout]    |        ----------------- fields in this struct
[INFO] [stdout] 50 |     pool: VkCommandPool,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 51 |     level: VkCommandBufferLevel,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device` and `bindings` are never read
[INFO] [stdout]   --> src/implementation/descriptor.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct DescriptorSetLayoutData {
[INFO] [stdout]    |        ----------------------- fields in this struct
[INFO] [stdout] 22 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 23 |     bindings: Vec<VkDescriptorSetLayoutBinding>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device` and `max_sets` are never read
[INFO] [stdout]   --> src/implementation/descriptor.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct DescriptorPoolData {
[INFO] [stdout]    |        ------------------ fields in this struct
[INFO] [stdout] 27 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 28 |     max_sets: u32,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `device` is never read
[INFO] [stdout]   --> src/implementation/sync.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct FenceData {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 24 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device` and `signaled` are never read
[INFO] [stdout]   --> src/implementation/sync.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | struct SemaphoreData {
[INFO] [stdout]    |        ------------- fields in this struct
[INFO] [stdout] 29 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 30 |     signaled: bool,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `device` is never read
[INFO] [stdout]   --> src/implementation/sync.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct EventData {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 34 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `flags::VkShaderStageFlags`, which is not FFI-safe
[INFO] [stdout]    --> src/implementation/pipeline.rs:374:18
[INFO] [stdout]     |
[INFO] [stdout] 374 |     _stageFlags: VkShaderStageFlags,
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]     = note: this struct has unspecified layout
[INFO] [stdout] note: the type is defined here
[INFO] [stdout]    --> src/core/flags.rs:63:1
[INFO] [stdout]     |
[INFO] [stdout]  63 | / bitflags! {
[INFO] [stdout]  64 | |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
[INFO] [stdout]  65 | |     pub struct VkShaderStageFlags: VkFlags {
[INFO] [stdout]  66 | |         const COMPUTE = 0x00000020;
[INFO] [stdout] ...   |
[INFO] [stdout]  69 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `$crate::__declare_public_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `flags::VkDescriptorPoolResetFlags`, which is not FFI-safe
[INFO] [stdout]    --> src/implementation/descriptor.rs:178:13
[INFO] [stdout]     |
[INFO] [stdout] 178 |     _flags: VkDescriptorPoolResetFlags,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]     = note: this struct has unspecified layout
[INFO] [stdout] note: the type is defined here
[INFO] [stdout]    --> src/core/flags.rs:117:1
[INFO] [stdout]     |
[INFO] [stdout] 117 | / bitflags! {
[INFO] [stdout] 118 | |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
[INFO] [stdout] 119 | |     pub struct VkDescriptorPoolResetFlags: VkFlags {
[INFO] [stdout] ...   |
[INFO] [stdout] 123 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: this warning originates in the macro `$crate::__declare_public_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.50s
[INFO] running `Command { std: "docker" "inspect" "2f5c4dc8b197aa68152de9bf62bcfdf28017a1453368e4c976b16199dce2f3c0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2f5c4dc8b197aa68152de9bf62bcfdf28017a1453368e4c976b16199dce2f3c0", kill_on_drop: false }`
[INFO] [stdout] 2f5c4dc8b197aa68152de9bf62bcfdf28017a1453368e4c976b16199dce2f3c0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 502770cc8b09cb7c051308ab10b8c77be38dd28215344c4465cca444ce9dc81b
[INFO] running `Command { std: "docker" "start" "-a" "502770cc8b09cb7c051308ab10b8c77be38dd28215344c4465cca444ce9dc81b", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling log v0.4.27
[INFO] [stderr]    Compiling regex-syntax v0.8.6
[INFO] [stderr]    Compiling kronos-compute v0.2.3-rc3 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling rayon-core v1.12.0
[INFO] [stderr]    Compiling clap_lex v0.7.5
[INFO] [stderr]    Compiling anstyle v1.0.11
[INFO] [stderr]    Compiling half v2.2.0
[INFO] [stderr]    Compiling is-terminal v0.4.16
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling humantime v2.2.0
[INFO] [stderr]    Compiling clap_builder v4.5.44
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling rayon v1.8.0
[INFO] [stderr]    Compiling regex-automata v0.4.10
[INFO] [stderr]    Compiling clap v4.5.45
[INFO] [stderr]    Compiling serde_json v1.0.143
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling regex v1.11.2
[INFO] [stderr]    Compiling env_logger v0.10.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stdout] warning: unused import: `vkDestroyDescriptorPool`
[INFO] [stdout]   --> src/api/context.rs:14:29
[INFO] [stdout]    |
[INFO] [stdout] 14 |     vkCreateDescriptorPool, vkDestroyDescriptorPool,
[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: `log::warn`
[INFO] [stdout]  --> src/implementation/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use log::warn;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/implementation/instance.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/implementation/device.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/implementation/memory.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/implementation/buffer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/implementation/pipeline.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/implementation/descriptor.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/implementation/sync.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/api/context.rs:261:17
[INFO] [stdout]     |
[INFO] [stdout] 261 |                 _ => 5,
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/api/context.rs:261:17
[INFO] [stdout]     |
[INFO] [stdout] 256 |                 VkPhysicalDeviceType::DiscreteGpu => 0,
[INFO] [stdout]     |                 --------------------------------- matches some of the same values
[INFO] [stdout] 257 |                 VkPhysicalDeviceType::IntegratedGpu => 1,
[INFO] [stdout]     |                 ----------------------------------- matches some of the same values
[INFO] [stdout] 258 |                 VkPhysicalDeviceType::VirtualGpu => 2,
[INFO] [stdout]     |                 -------------------------------- matches some of the same values
[INFO] [stdout] 259 |                 VkPhysicalDeviceType::Cpu => 3,
[INFO] [stdout]     |                 ------------------------- matches some of the same values
[INFO] [stdout] 260 |                 VkPhysicalDeviceType::Other => 4,
[INFO] [stdout] 261 |                 _ => 5,
[INFO] [stdout]     |                 ^ ...and 1 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `waitAll`
[INFO] [stdout]   --> src/implementation/sync.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 87 |     waitAll: VkBool32,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_waitAll`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `timeout`
[INFO] [stdout]   --> src/implementation/sync.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 88 |     timeout: u64,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timeout`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `physical_device` and `queue_family_index` are never read
[INFO] [stdout]   --> src/api/context.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub(super) struct ContextInner {
[INFO] [stdout]    |                   ------------ fields in this struct
[INFO] [stdout] 23 |     pub(super) instance: VkInstance,
[INFO] [stdout] 24 |     pub(super) physical_device: VkPhysicalDevice,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub(super) queue_family_index: 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: associated function `create_descriptor_pool` is never used
[INFO] [stdout]    --> src/api/context.rs:379:15
[INFO] [stdout]     |
[INFO] [stdout]  52 | impl ComputeContext {
[INFO] [stdout]     | ------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 379 |     unsafe fn create_descriptor_pool(device: VkDevice) -> Result<VkDescriptorPool> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `app_info` and `enabled_extensions` are never read
[INFO] [stdout]   --> src/implementation/instance.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct InstanceData {
[INFO] [stdout]    |        ------------ fields in this struct
[INFO] [stdout] 20 |     app_info: ApplicationInfo,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 21 |     enabled_extensions: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `app_name`, `app_version`, `engine_name`, and `engine_version` are never read
[INFO] [stdout]   --> src/implementation/instance.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | struct ApplicationInfo {
[INFO] [stdout]    |        --------------- fields in this struct
[INFO] [stdout] 25 |     app_name: String,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 26 |     app_version: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 27 |     engine_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 28 |     engine_version: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `physical_device` is never read
[INFO] [stdout]   --> src/implementation/device.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct DeviceData {
[INFO] [stdout]    |        ---------- field in this struct
[INFO] [stdout] 20 |     physical_device: VkPhysicalDevice,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device` and `memory_type_index` are never read
[INFO] [stdout]   --> src/implementation/memory.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct MemoryData {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 20 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 21 |     size: VkDeviceSize,
[INFO] [stdout] 22 |     memory_type_index: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device`, `usage`, and `sharing_mode` are never read
[INFO] [stdout]   --> src/implementation/buffer.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct BufferData {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 20 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 21 |     size: VkDeviceSize,
[INFO] [stdout] 22 |     usage: VkBufferUsageFlags,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     sharing_mode: VkSharingMode,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device` and `spirv` are never read
[INFO] [stdout]   --> src/implementation/pipeline.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct ShaderData {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 28 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 29 |     spirv: Vec<u32>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device`, `layout`, and `shader` are never read
[INFO] [stdout]   --> src/implementation/pipeline.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | struct PipelineData {
[INFO] [stdout]    |        ------------ fields in this struct
[INFO] [stdout] 33 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 34 |     layout: VkPipelineLayout,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 35 |     shader: VkShaderModule,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device` and `set_layouts` are never read
[INFO] [stdout]   --> src/implementation/pipeline.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | struct PipelineLayoutData {
[INFO] [stdout]    |        ------------------ fields in this struct
[INFO] [stdout] 39 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 40 |     set_layouts: Vec<VkDescriptorSetLayout>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device` and `queue_family_index` are never read
[INFO] [stdout]   --> src/implementation/pipeline.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | struct CommandPoolData {
[INFO] [stdout]    |        --------------- fields in this struct
[INFO] [stdout] 44 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 45 |     queue_family_index: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `pool` and `level` are never read
[INFO] [stdout]   --> src/implementation/pipeline.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct CommandBufferData {
[INFO] [stdout]    |        ----------------- fields in this struct
[INFO] [stdout] 50 |     pool: VkCommandPool,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 51 |     level: VkCommandBufferLevel,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device` and `bindings` are never read
[INFO] [stdout]   --> src/implementation/descriptor.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct DescriptorSetLayoutData {
[INFO] [stdout]    |        ----------------------- fields in this struct
[INFO] [stdout] 22 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 23 |     bindings: Vec<VkDescriptorSetLayoutBinding>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device` and `max_sets` are never read
[INFO] [stdout]   --> src/implementation/descriptor.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct DescriptorPoolData {
[INFO] [stdout]    |        ------------------ fields in this struct
[INFO] [stdout] 27 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 28 |     max_sets: u32,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `device` is never read
[INFO] [stdout]   --> src/implementation/sync.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct FenceData {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 24 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `device` and `signaled` are never read
[INFO] [stdout]   --> src/implementation/sync.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | struct SemaphoreData {
[INFO] [stdout]    |        ------------- fields in this struct
[INFO] [stdout] 29 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 30 |     signaled: bool,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `device` is never read
[INFO] [stdout]   --> src/implementation/sync.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct EventData {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 34 |     device: VkDevice,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `flags::VkShaderStageFlags`, which is not FFI-safe
[INFO] [stdout]    --> src/implementation/pipeline.rs:374:18
[INFO] [stdout]     |
[INFO] [stdout] 374 |     _stageFlags: VkShaderStageFlags,
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]     = note: this struct has unspecified layout
[INFO] [stdout] note: the type is defined here
[INFO] [stdout]    --> src/core/flags.rs:63:1
[INFO] [stdout]     |
[INFO] [stdout]  63 | / bitflags! {
[INFO] [stdout]  64 | |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
[INFO] [stdout]  65 | |     pub struct VkShaderStageFlags: VkFlags {
[INFO] [stdout]  66 | |         const COMPUTE = 0x00000020;
[INFO] [stdout] ...   |
[INFO] [stdout]  69 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `$crate::__declare_public_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `flags::VkDescriptorPoolResetFlags`, which is not FFI-safe
[INFO] [stdout]    --> src/implementation/descriptor.rs:178:13
[INFO] [stdout]     |
[INFO] [stdout] 178 |     _flags: VkDescriptorPoolResetFlags,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]     = note: this struct has unspecified layout
[INFO] [stdout] note: the type is defined here
[INFO] [stdout]    --> src/core/flags.rs:117:1
[INFO] [stdout]     |
[INFO] [stdout] 117 | / bitflags! {
[INFO] [stdout] 118 | |     #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
[INFO] [stdout] 119 | |     pub struct VkDescriptorPoolResetFlags: VkFlags {
[INFO] [stdout] ...   |
[INFO] [stdout] 123 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: this warning originates in the macro `$crate::__declare_public_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `icd_loader` in `implementation`
[INFO] [stdout]   --> tests/icd_dispatch.rs:17:41
[INFO] [stdout]    |
[INFO] [stdout] 17 |         kronos_compute::implementation::icd_loader::set_preferred_icd_index(0);
[INFO] [stdout]    |                                         ^^^^^^^^^^ could not find `icd_loader` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `barrier_policy`
[INFO] [stdout]   --> tests/integration_tests.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |         use barrier_policy::GpuVendor;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `barrier_policy`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `barrier_policy`, use `cargo add barrier_policy` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `barrier_policy`
[INFO] [stdout]   --> tests/integration_tests.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |         use barrier_policy::{GpuVendor, BarrierType, BarrierConfig};
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `barrier_policy`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `barrier_policy`, use `cargo add barrier_policy` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `pool_allocator`
[INFO] [stdout]   --> tests/integration_tests.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         use pool_allocator::PoolType;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `pool_allocator`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `pool_allocator`, use `cargo add pool_allocator` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `timeline_batching`
[INFO] [stdout]   --> tests/integration_tests.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |         use timeline_batching::BatchBuilder;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `timeline_batching`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `timeline_batching`, use `cargo add timeline_batching` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `persistent_descriptors`
[INFO] [stdout]   --> tests/integration_tests.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |         use persistent_descriptors::create_push_constant_range;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `persistent_descriptors`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `persistent_descriptors`, use `cargo add persistent_descriptors` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `persistent_descriptors`
[INFO] [stdout]   --> tests/integration_tests.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |         use persistent_descriptors::create_push_constant_range;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `persistent_descriptors`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `persistent_descriptors`, use `cargo add persistent_descriptors` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> tests/icd_aggregate_stress.rs:39:48
[INFO] [stdout]    |
[INFO] [stdout] 17 |     unsafe {
[INFO] [stdout]    |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 39 |             handles.push(thread::spawn(move || 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 import: `c_void`
[INFO] [stdout]  --> examples/benchmark_fair_comparison.rs:3:25
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::ffi::{CString, c_void};
[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: `kronos_compute::implementation::*`
[INFO] [stdout]  --> tests/integration_tests.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     use kronos_compute::implementation::*;
[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]   --> examples/benchmark_comparison.rs:84:27
[INFO] [stdout]    |
[INFO] [stdout] 84 | fn benchmark_operation<F>(name: &str, iterations: u32, mut op: F) -> Duration
[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 import: `libc`
[INFO] [stdout]  --> examples/benchmark_fair_comparison.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use libc;
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `icd_loader` in `implementation`
[INFO] [stdout]    --> tests/icd_dispatch.rs:114:41
[INFO] [stdout]     |
[INFO] [stdout] 114 |         kronos_compute::implementation::icd_loader::clear_preferred_icd();
[INFO] [stdout]     |                                         ^^^^^^^^^^ could not find `icd_loader` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `icd_loader`
[INFO] [stdout]   --> tests/integration_tests.rs:11:25
[INFO] [stdout]    |
[INFO] [stdout] 11 |         let manifests = icd_loader::discover_icds();
[INFO] [stdout]    |                         ^^^^^^^^^^ use of unresolved module or unlinked crate `icd_loader`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `icd_loader`, use `cargo add icd_loader` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `VkResult`
[INFO] [stdout]   --> tests/icd_dispatch.rs:44:25
[INFO] [stdout]    |
[INFO] [stdout] 44 |         assert_eq!(res, VkResult::Success, "vkCreateInstance failed: {res:?}");
[INFO] [stdout]    |                         ^^^^^^^^ use of undeclared type `VkResult`
[INFO] [stdout]    |
[INFO] [stdout] help: an enum with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 44 -         assert_eq!(res, VkResult::Success, "vkCreateInstance failed: {res:?}");
[INFO] [stdout] 44 +         assert_eq!(res, Result::Success, "vkCreateInstance failed: {res:?}");
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  3 + use kronos_compute::VkResult;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `VkResult`
[INFO] [stdout]   --> tests/icd_dispatch.rs:78:25
[INFO] [stdout]    |
[INFO] [stdout] 78 |         assert_eq!(res, VkResult::Success, "vkCreateDevice failed: {res:?}");
[INFO] [stdout]    |                         ^^^^^^^^ use of undeclared type `VkResult`
[INFO] [stdout]    |
[INFO] [stdout] help: an enum with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 78 -         assert_eq!(res, VkResult::Success, "vkCreateDevice failed: {res:?}");
[INFO] [stdout] 78 +         assert_eq!(res, Result::Success, "vkCreateDevice failed: {res:?}");
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  3 + use kronos_compute::VkResult;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `VkResult`
[INFO] [stdout]   --> tests/icd_dispatch.rs:89:25
[INFO] [stdout]    |
[INFO] [stdout] 89 |         assert_eq!(res, VkResult::Success);
[INFO] [stdout]    |                         ^^^^^^^^ use of undeclared type `VkResult`
[INFO] [stdout]    |
[INFO] [stdout] help: an enum with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 89 -         assert_eq!(res, VkResult::Success);
[INFO] [stdout] 89 +         assert_eq!(res, Result::Success);
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  3 + use kronos_compute::VkResult;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `VkResult`
[INFO] [stdout]   --> tests/icd_dispatch.rs:98:25
[INFO] [stdout]    |
[INFO] [stdout] 98 |         assert_eq!(res, VkResult::Success);
[INFO] [stdout]    |                         ^^^^^^^^ use of undeclared type `VkResult`
[INFO] [stdout]    |
[INFO] [stdout] help: an enum with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 98 -         assert_eq!(res, VkResult::Success);
[INFO] [stdout] 98 +         assert_eq!(res, Result::Success);
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  3 + use kronos_compute::VkResult;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `VkResult`
[INFO] [stdout]    --> tests/icd_dispatch.rs:100:25
[INFO] [stdout]     |
[INFO] [stdout] 100 |         assert_eq!(res, VkResult::Success);
[INFO] [stdout]     |                         ^^^^^^^^ use of undeclared type `VkResult`
[INFO] [stdout]     |
[INFO] [stdout] help: an enum with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 100 -         assert_eq!(res, VkResult::Success);
[INFO] [stdout] 100 +         assert_eq!(res, Result::Success);
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   3 + use kronos_compute::VkResult;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `VkResult`
[INFO] [stdout]    --> tests/icd_dispatch.rs:105:25
[INFO] [stdout]     |
[INFO] [stdout] 105 |         assert_eq!(res, VkResult::Success, "vkQueueSubmit failed: {res:?}");
[INFO] [stdout]     |                         ^^^^^^^^ use of undeclared type `VkResult`
[INFO] [stdout]     |
[INFO] [stdout] help: an enum with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 105 -         assert_eq!(res, VkResult::Success, "vkQueueSubmit failed: {res:?}");
[INFO] [stdout] 105 +         assert_eq!(res, Result::Success, "vkQueueSubmit failed: {res:?}");
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   3 + use kronos_compute::VkResult;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `prefer_icd_index` found for struct `kronos_compute::api::ContextBuilder` in the current scope
[INFO] [stdout]   --> examples/icd_preference_demo.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 17 |       match ComputeContext::builder()
[INFO] [stdout]    |  ___________-
[INFO] [stdout] 18 | |         .app_name("Aggregated Mode Demo")
[INFO] [stdout] 19 | |         .prefer_icd_index(3)  // AMD in available_icds() list
[INFO] [stdout]    | |         -^^^^^^^^^^^^^^^^ method not found in `kronos_compute::api::ContextBuilder`
[INFO] [stdout]    | |_________|
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> examples/icd_preference_demo.rs:24:33
[INFO] [stdout]    |
[INFO] [stdout] 24 |             if let Some(info) = ctx.icd_info() {
[INFO] [stdout]    |                                 ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `prefer_icd_path` found for struct `kronos_compute::api::ContextBuilder` in the current scope
[INFO] [stdout]   --> examples/icd_preference_demo.rs:39:10
[INFO] [stdout]    |
[INFO] [stdout] 37 |       match ComputeContext::builder()
[INFO] [stdout]    |  ___________-
[INFO] [stdout] 38 | |         .app_name("Path Preference Demo")
[INFO] [stdout] 39 | |         .prefer_icd_path("/usr/lib/x86_64-linux-gnu/libvulkan_radeon.so")
[INFO] [stdout]    | |         -^^^^^^^^^^^^^^^ method not found in `kronos_compute::api::ContextBuilder`
[INFO] [stdout]    | |_________|
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> examples/icd_preference_demo.rs:44:33
[INFO] [stdout]    |
[INFO] [stdout] 44 |             if let Some(info) = ctx.icd_info() {
[INFO] [stdout]    |                                 ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kronos-compute` (test "integration_tests") due to 7 previous errors; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `kronos-compute` (example "icd_preference_demo") due to 4 previous errors
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `instance_time`
[INFO] [stdout]    --> examples/benchmark_fair_comparison.rs:117:17
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let (_, instance_time) = measure_overhead("Instance create/destroy", instance_iterations, || {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instance_time`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kronos-compute` (test "icd_dispatch") due to 8 previous errors
[INFO] [stdout] warning: `extern` block uses type `kronos_compute::VkQueueFlags`, which is not FFI-safe
[INFO] [stdout]   --> examples/compute_optimized.rs:18:144
[INFO] [stdout]    |
[INFO] [stdout] 18 | ...rtyCount: *mut u32, pQueueFamilyProperties: *mut VkQueueFamilyProperties);
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]    = note: this struct has unspecified layout
[INFO] [stdout]    = note: `#[warn(improper_ctypes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` block uses type `kronos_compute::VkBufferUsageFlags`, which is not FFI-safe
[INFO] [stdout]   --> examples/compute_optimized.rs:21:54
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fn vkCreateBuffer(device: VkDevice, pCreateInfo: *const VkBufferCreateInfo, pAllocator: *const VkAllocationCallbacks, pBuffer: *...
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]    = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` block uses type `kronos_compute::VkShaderStageFlags`, which is not FFI-safe
[INFO] [stdout]   --> examples/compute_optimized.rs:25:67
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn vkCreateDescriptorSetLayout(device: VkDevice, pCreateInfo: *const VkDescriptorSetLayoutCreateInfo, pAllocator: *const VkAlloc...
[INFO] [stdout]    |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]    = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` block uses type `kronos_compute::VkShaderStageFlags`, which is not FFI-safe
[INFO] [stdout]   --> examples/compute_optimized.rs:26:62
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn vkCreatePipelineLayout(device: VkDevice, pCreateInfo: *const VkPipelineLayoutCreateInfo, pAllocator: *const VkAllocationCallb...
[INFO] [stdout]    |                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]    = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` block uses type `kronos_compute::VkPipelineCreateFlags`, which is not FFI-safe
[INFO] [stdout]   --> examples/compute_optimized.rs:28:119
[INFO] [stdout]    |
[INFO] [stdout] 28 | ...che, createInfoCount: u32, pCreateInfos: *const VkComputePipelineCreateInfo, pAllocator: *const VkAllocationCallbacks, pPipelines...
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]    = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` block uses type `kronos_compute::VkCommandPoolCreateFlags`, which is not FFI-safe
[INFO] [stdout]   --> examples/compute_optimized.rs:29:59
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn vkCreateCommandPool(device: VkDevice, pCreateInfo: *const VkCommandPoolCreateInfo, pAllocator: *const VkAllocationCallbacks, ...
[INFO] [stdout]    |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]    = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` block uses type `kronos_compute::VkCommandBufferUsageFlags`, which is not FFI-safe
[INFO] [stdout]   --> examples/compute_optimized.rs:31:73
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn vkBeginCommandBuffer(commandBuffer: VkCommandBuffer, pBeginInfo: *const VkCommandBufferBeginInfo) -> VkResult;
[INFO] [stdout]    |                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]    = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` block uses type `kronos_compute::VkShaderStageFlags`, which is not FFI-safe
[INFO] [stdout]   --> examples/compute_optimized.rs:34:97
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn vkCmdPushConstants(commandBuffer: VkCommandBuffer, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: u32, siz...
[INFO] [stdout]    |                                                                                                 ^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]    = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `icd_loader` in `implementation`
[INFO] [stdout]   --> examples/test_amd_directly.rs:13:37
[INFO] [stdout]    |
[INFO] [stdout] 13 |     kronos_compute::implementation::icd_loader::set_preferred_icd_index(3); // AMD
[INFO] [stdout]    |                                     ^^^^^^^^^^ could not find `icd_loader` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `icd_loader` in `implementation`
[INFO] [stdout]   --> examples/test_amd_directly.rs:22:57
[INFO] [stdout]    |
[INFO] [stdout] 22 |     if let Some(info) = kronos_compute::implementation::icd_loader::selected_icd_info() {
[INFO] [stdout]    |                                                         ^^^^^^^^^^ could not find `icd_loader` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kronos-compute` (example "test_amd_directly") due to 2 previous errors
[INFO] [stdout] error[E0599]: no method named `prefer_icd_index` found for struct `kronos_compute::api::ContextBuilder` in the current scope
[INFO] [stdout]   --> examples/test_safe_amd_index.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 14 |       match ComputeContext::builder()
[INFO] [stdout]    |  ___________-
[INFO] [stdout] 15 | |         .app_name("AMD Index Test")
[INFO] [stdout] 16 | |         .prefer_icd_index(3)  // AMD is at index 3
[INFO] [stdout]    | |         -^^^^^^^^^^^^^^^^ method not found in `kronos_compute::api::ContextBuilder`
[INFO] [stdout]    | |_________|
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kronos-compute` (example "test_safe_amd_index") due to 1 previous error
[INFO] running `Command { std: "docker" "inspect" "502770cc8b09cb7c051308ab10b8c77be38dd28215344c4465cca444ce9dc81b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "502770cc8b09cb7c051308ab10b8c77be38dd28215344c4465cca444ce9dc81b", kill_on_drop: false }`
[INFO] [stdout] 502770cc8b09cb7c051308ab10b8c77be38dd28215344c4465cca444ce9dc81b
