[INFO] fetching crate kronos-compute 0.2.3-rc3...
[INFO] testing kronos-compute-0.2.3-rc3 against 1.90.0 for beta-1.91-3
[INFO] extracting crate kronos-compute 0.2.3-rc3 into /workspace/builds/worker-6-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-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate kronos-compute 0.2.3-rc3 on toolchain 1.90.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "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" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded winapi-util v0.1.10
[INFO] [stderr]   Downloaded half v2.2.0
[INFO] [stderr]   Downloaded rayon-core v1.12.0
[INFO] [stderr]   Downloaded rayon v1.8.0
[INFO] [stderr]   Downloaded ash v0.37.3+1.3.251
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f903ed86078cef444116dbae6cff7b5edc39ac380e102afd89d784642830e582
[INFO] running `Command { std: "docker" "start" "-a" "f903ed86078cef444116dbae6cff7b5edc39ac380e102afd89d784642830e582", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f903ed86078cef444116dbae6cff7b5edc39ac380e102afd89d784642830e582", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f903ed86078cef444116dbae6cff7b5edc39ac380e102afd89d784642830e582", kill_on_drop: false }`
[INFO] [stdout] f903ed86078cef444116dbae6cff7b5edc39ac380e102afd89d784642830e582
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 874b86ec6e6d4e05d99ba7177133f1070f8ebb82cd9404fb492bc1c8b4e2da88
[INFO] running `Command { std: "docker" "start" "-a" "874b86ec6e6d4e05d99ba7177133f1070f8ebb82cd9404fb492bc1c8b4e2da88", kill_on_drop: false }`
[INFO] [stderr]    Compiling kronos-compute v0.2.3-rc3 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling bitflags v2.9.3
[INFO] [stderr]    Compiling log v0.4.27
[INFO] [stderr]    Compiling serde_json v1.0.143
[INFO] [stderr]    Compiling libloading v0.8.8
[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)]` 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)]` 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)]` 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)]` 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 13.22s
[INFO] running `Command { std: "docker" "inspect" "874b86ec6e6d4e05d99ba7177133f1070f8ebb82cd9404fb492bc1c8b4e2da88", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "874b86ec6e6d4e05d99ba7177133f1070f8ebb82cd9404fb492bc1c8b4e2da88", kill_on_drop: false }`
[INFO] [stdout] 874b86ec6e6d4e05d99ba7177133f1070f8ebb82cd9404fb492bc1c8b4e2da88
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] dabb17035115ad5e49fe48f87393caa59efb13180f610d6223a02f7607763f88
[INFO] running `Command { std: "docker" "start" "-a" "dabb17035115ad5e49fe48f87393caa59efb13180f610d6223a02f7607763f88", kill_on_drop: false }`
[INFO] [stderr]    Compiling rayon-core v1.12.0
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling kronos-compute v0.2.3-rc3 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling regex-syntax v0.8.6
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling half v2.2.0
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling is-terminal v0.4.16
[INFO] [stderr]    Compiling clap_builder v4.5.44
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling plotters v0.3.7
[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)]` 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)]` 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)]` 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)]` 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] warning: unused import: `kronos_compute::ffi::*`
[INFO] [stdout]  --> examples/compute_test.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use kronos_compute::ffi::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[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] error[E0433]: failed to resolve: could not find `icd_loader` in `implementation`
[INFO] [stdout]   --> tests/safe_api_icd_select.rs:13:48
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let icds = kronos_compute::implementation::icd_loader::available_icds();
[INFO] [stdout]    |                                                ^^^^^^^^^^ could not find `icd_loader` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `kronos_compute::ffi::*`
[INFO] [stdout]  --> examples/sync_test.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use kronos_compute::ffi::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> examples/sync_test.rs:344:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 344 |             unsafe {
[INFO] [stdout]     |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` block uses type `kronos_compute::VkCommandPoolCreateFlags`, which is not FFI-safe
[INFO] [stdout]   --> examples/compute_test.rs:53:22
[INFO] [stdout]    |
[INFO] [stdout] 53 |         pCreateInfo: *const VkCommandPoolCreateInfo,
[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: function `VK_MAKE_VERSION` should have a snake case name
[INFO] [stdout]    --> examples/compute_test.rs:207:10
[INFO] [stdout]     |
[INFO] [stdout] 207 | const fn VK_MAKE_VERSION(major: u32, minor: u32, patch: u32) -> u32 {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `vk_make_version`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `VK_VERSION_MAJOR` should have a snake case name
[INFO] [stdout]    --> examples/compute_test.rs:211:10
[INFO] [stdout]     |
[INFO] [stdout] 211 | const fn VK_VERSION_MAJOR(version: u32) -> u32 {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `vk_version_major`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `VK_VERSION_MINOR` should have a snake case name
[INFO] [stdout]    --> examples/compute_test.rs:215:10
[INFO] [stdout]     |
[INFO] [stdout] 215 | const fn VK_VERSION_MINOR(version: u32) -> u32 {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `vk_version_minor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `VK_VERSION_PATCH` should have a snake case name
[INFO] [stdout]    --> examples/compute_test.rs:219:10
[INFO] [stdout]     |
[INFO] [stdout] 219 | const fn VK_VERSION_PATCH(version: u32) -> u32 {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `vk_version_patch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` block uses type `kronos_compute::VkFenceCreateFlags`, which is not FFI-safe
[INFO] [stdout]   --> examples/sync_test.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |         pCreateInfo: *const VkFenceCreateInfo,
[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: function `VK_MAKE_VERSION` should have a snake case name
[INFO] [stdout]    --> examples/sync_test.rs:379:10
[INFO] [stdout]     |
[INFO] [stdout] 379 | const fn VK_MAKE_VERSION(major: u32, minor: u32, patch: u32) -> u32 {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `vk_make_version`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` 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)]` on by default
[INFO] [stdout] 
[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/test_safe_api_amd.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 14 |       match ComputeContext::builder()
[INFO] [stdout]    |  ___________-
[INFO] [stdout] 15 | |         .app_name("AMD Test")
[INFO] [stdout] 16 | |         .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[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: could not find `barrier_policy` in `implementation`
[INFO] [stdout]   --> tests/amd_validation.rs:77:38
[INFO] [stdout]    |
[INFO] [stdout] 77 |         let vendor = implementation::barrier_policy::GpuVendor::from_vendor_id(amd_props.vendorID);
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^ could not find `barrier_policy` in `implementation`
[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]   --> tests/safe_api_icd_select.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 19 |       let ctx = kronos_compute::api::ComputeContext::builder()
[INFO] [stdout]    |  _______________-
[INFO] [stdout] 20 | |         .app_name("Safe API ICD Select Test")
[INFO] [stdout] 21 | |         .prefer_icd_index(0)
[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] [stdout] error[E0433]: failed to resolve: could not find `barrier_policy` in `implementation`
[INFO] [stdout]    --> examples/icd_info.rs:146:58
[INFO] [stdout]     |
[INFO] [stdout] 146 |             let vendor = kronos_compute::implementation::barrier_policy::GpuVendor::from_vendor_id(props.vendorID);
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^ could not find `barrier_policy` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `barrier_policy` in `implementation`
[INFO] [stdout]   --> tests/amd_validation.rs:78:44
[INFO] [stdout]    |
[INFO] [stdout] 78 |         assert_eq!(vendor, implementation::barrier_policy::GpuVendor::AMD);
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^ could not find `barrier_policy` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vkGetPhysicalDeviceFeatures` in crate `kronos_compute`
[INFO] [stdout]    --> examples/icd_info.rs:138:29
[INFO] [stdout]     |
[INFO] [stdout] 138 |               kronos_compute::vkGetPhysicalDeviceFeatures(*device, &mut features);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: a function with a similar name exists: `vkGetPhysicalDeviceProperties`
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/workdir/src/implementation/device.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / pub unsafe extern "C" fn vkGetPhysicalDeviceProperties(
[INFO] [stdout]  28 | |     physicalDevice: VkPhysicalDevice,
[INFO] [stdout]  29 | |     pProperties: *mut VkPhysicalDeviceProperties,
[INFO] [stdout]  30 | | ) {
[INFO] [stdout]     | |_- similarly named function `vkGetPhysicalDeviceProperties` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kronos-compute` (example "test_safe_api_amd") due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[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[E0433]: failed to resolve: could not find `pool_allocator` in `implementation`
[INFO] [stdout]    --> tests/amd_validation.rs:180:25
[INFO] [stdout]     |
[INFO] [stdout] 180 |         implementation::pool_allocator::init_pools(device, physical_device).unwrap();
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^ could not find `pool_allocator` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kronos-compute` (test "safe_api_icd_select") due to 2 previous errors
[INFO] [stderr] error: could not compile `kronos-compute` (test "integration_tests") due to 7 previous errors; 1 warning emitted
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pool_allocator` in `implementation`
[INFO] [stdout]    --> tests/amd_validation.rs:205:25
[INFO] [stdout]     |
[INFO] [stdout] 205 |         implementation::pool_allocator::allocate_buffer_memory(
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^ could not find `pool_allocator` in `implementation`
[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/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] error[E0433]: failed to resolve: could not find `pool_allocator` in `implementation`
[INFO] [stdout]    --> tests/amd_validation.rs:206:47
[INFO] [stdout]     |
[INFO] [stdout] 206 |             device, buffer_a, implementation::pool_allocator::PoolType::DeviceLocal
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^ could not find `pool_allocator` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> examples/icd_info.rs:73:51
[INFO] [stdout]    |
[INFO] [stdout] 73 |             let device_name = std::str::from_utf8(&props.deviceName)
[INFO] [stdout]    |                               ------------------- ^^^^^^^^^^^^^^^^^ expected `&[u8]`, found `&[i8; 256]`
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected reference `&[u8]`
[INFO] [stdout]               found reference `&[i8; 256]`
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/str/converts.rs:89:14
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `kronos_compute::implementation::icd_loader`
[INFO] [stdout]  --> examples/icd_select.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use kronos_compute::implementation::icd_loader;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `icd_loader` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pool_allocator` in `implementation`
[INFO] [stdout]    --> tests/amd_validation.rs:208:25
[INFO] [stdout]     |
[INFO] [stdout] 208 |         implementation::pool_allocator::allocate_buffer_memory(
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^ could not find `pool_allocator` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pool_allocator` in `implementation`
[INFO] [stdout]    --> tests/amd_validation.rs:209:47
[INFO] [stdout]     |
[INFO] [stdout] 209 |             device, buffer_b, implementation::pool_allocator::PoolType::DeviceLocal
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^ could not find `pool_allocator` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pool_allocator` in `implementation`
[INFO] [stdout]    --> tests/amd_validation.rs:211:25
[INFO] [stdout]     |
[INFO] [stdout] 211 |         implementation::pool_allocator::allocate_buffer_memory(
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^ could not find `pool_allocator` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `pool_allocator` in `implementation`
[INFO] [stdout]    --> tests/amd_validation.rs:212:47
[INFO] [stdout]     |
[INFO] [stdout] 212 |             device, buffer_c, implementation::pool_allocator::PoolType::DeviceLocal
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^ could not find `pool_allocator` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `contains` found for type `u32` in the current scope
[INFO] [stdout]    --> examples/icd_info.rs:102:31
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 if heap.flags.contains(VkMemoryHeapFlags::DEVICE_LOCAL) {
[INFO] [stdout]     |                               ^^^^^^^^ method not found in `u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `VkMemoryHeapFlags`
[INFO] [stdout]    --> examples/icd_info.rs:102:40
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 if heap.flags.contains(VkMemoryHeapFlags::DEVICE_LOCAL) {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        use of undeclared type `VkMemoryHeapFlags`
[INFO] [stdout]     |                                        help: a type alias with a similar name exists: `VkMemoryMapFlags`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kronos-compute` (example "test_safe_amd_index") due to 1 previous error
[INFO] [stdout] error[E0433]: failed to resolve: could not find `persistent_descriptors` in `implementation`
[INFO] [stdout]    --> tests/amd_validation.rs:218:46
[INFO] [stdout]     |
[INFO] [stdout] 218 |         let descriptor_set = implementation::persistent_descriptors::get_persistent_descriptor_set(
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^ could not find `persistent_descriptors` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `barrier_policy` in `implementation`
[INFO] [stdout]    --> tests/amd_validation.rs:235:51
[INFO] [stdout]     |
[INFO] [stdout] 235 |         let mut barrier_tracker = implementation::barrier_policy::BarrierTracker::new(
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^ could not find `barrier_policy` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `barrier_policy` in `implementation`
[INFO] [stdout]    --> tests/amd_validation.rs:236:29
[INFO] [stdout]     |
[INFO] [stdout] 236 |             implementation::barrier_policy::GpuVendor::AMD
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^ could not find `barrier_policy` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `amd_gpu`
[INFO] [stdout]   --> tests/amd_validation.rs:11:16
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[cfg_attr(not(feature = "amd_gpu"), ignore)]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `ash`, `compare-ash`, `default`, `implementation`, `lazy_static`, `validation`, and `vendored`
[INFO] [stdout]    = help: consider adding `amd_gpu` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `amd_gpu`
[INFO] [stdout]   --> tests/amd_validation.rs:86:16
[INFO] [stdout]    |
[INFO] [stdout] 86 | #[cfg_attr(not(feature = "amd_gpu"), ignore)]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `ash`, `compare-ash`, `default`, `implementation`, `lazy_static`, `validation`, and `vendored`
[INFO] [stdout]    = help: consider adding `amd_gpu` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `amd_gpu`
[INFO] [stdout]    --> tests/amd_validation.rs:320:16
[INFO] [stdout]     |
[INFO] [stdout] 320 | #[cfg_attr(not(feature = "amd_gpu"), ignore)]
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `ash`, `compare-ash`, `default`, `implementation`, `lazy_static`, `validation`, and `vendored`
[INFO] [stdout]     = help: consider adding `amd_gpu` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0425, E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kronos-compute` (example "icd_info") due to 5 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/icd_select.rs:48:18
[INFO] [stdout]    |
[INFO] [stdout] 46 |               let ctx = api::ComputeContext::builder()
[INFO] [stdout]    |  _______________________-
[INFO] [stdout] 47 | |                 .app_name("ICD Select (index)")
[INFO] [stdout] 48 | |                 .prefer_icd_index(idx)
[INFO] [stdout]    | |                 -^^^^^^^^^^^^^^^^ method not found in `kronos_compute::api::ContextBuilder`
[INFO] [stdout]    | |_________________|
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> tests/amd_validation.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let device_name = std::str::from_utf8_unchecked(
[INFO] [stdout]    |                           ----------------------------- arguments to this function are incorrect
[INFO] [stdout] 67 |             &amd_props.deviceName[..amd_props.deviceName.iter().position(|&c| c == 0).unwrap_or(256)]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&[u8]`, found `&[i8]`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected reference `&[u8]`
[INFO] [stdout]               found reference `&[i8]`
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/str/converts.rs:178:21
[INFO] [stdout] 
[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_select.rs:67:18
[INFO] [stdout]    |
[INFO] [stdout] 65 |               let ctx = api::ComputeContext::builder()
[INFO] [stdout]    |  _______________________-
[INFO] [stdout] 66 | |                 .app_name("ICD Select (path)")
[INFO] [stdout] 67 | |                 .prefer_icd_path(path)
[INFO] [stdout]    | |                 -^^^^^^^^^^^^^^^ method not found in `kronos_compute::api::ContextBuilder`
[INFO] [stdout]    | |_________________|
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `VkResult`
[INFO] [stdout]   --> tests/icd_aggregate_e2e.rs:31:23
[INFO] [stdout]    |
[INFO] [stdout] 31 |         assert_eq!(r, 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] 31 -         assert_eq!(r, VkResult::Success);
[INFO] [stdout] 31 +         assert_eq!(r, 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[E0425]: cannot find function `vkGetPhysicalDeviceProperties` in module `kronos_compute::implementation::instance`
[INFO] [stdout]   --> examples/rust_implementation_test.rs:67:51
[INFO] [stdout]    |
[INFO] [stdout] 67 |         kronos_compute::implementation::instance::vkGetPhysicalDeviceProperties(
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in `kronos_compute::implementation::instance`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these functions
[INFO] [stdout]    |
[INFO] [stdout]  3 + use crate::vkGetPhysicalDeviceProperties;
[INFO] [stdout]    |
[INFO] [stdout]  3 + use kronos_compute::vkGetPhysicalDeviceProperties;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `vkGetPhysicalDeviceProperties`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 67 -         kronos_compute::implementation::instance::vkGetPhysicalDeviceProperties(
[INFO] [stdout] 67 +         vkGetPhysicalDeviceProperties(
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vkQueueSubmit` in module `kronos_compute::implementation::device`
[INFO] [stdout]    --> examples/rust_implementation_test.rs:303:62
[INFO] [stdout]     |
[INFO] [stdout] 303 |         let result = kronos_compute::implementation::device::vkQueueSubmit(
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^ not found in `kronos_compute::implementation::device`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these functions
[INFO] [stdout]     |
[INFO] [stdout]   3 + use crate::vkQueueSubmit;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use kronos_compute::vkQueueSubmit;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `vkQueueSubmit`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 303 -         let result = kronos_compute::implementation::device::vkQueueSubmit(
[INFO] [stdout] 303 +         let result = vkQueueSubmit(
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vkQueueWaitIdle` in module `kronos_compute::implementation::device`
[INFO] [stdout]    --> examples/rust_implementation_test.rs:313:62
[INFO] [stdout]     |
[INFO] [stdout] 313 |         let result = kronos_compute::implementation::device::vkQueueWaitIdle(queue);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^ not found in `kronos_compute::implementation::device`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these functions
[INFO] [stdout]     |
[INFO] [stdout]   3 + use crate::vkQueueWaitIdle;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use kronos_compute::vkQueueWaitIdle;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `vkQueueWaitIdle`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 313 -         let result = kronos_compute::implementation::device::vkQueueWaitIdle(queue);
[INFO] [stdout] 313 +         let result = vkQueueWaitIdle(queue);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `VkResult`
[INFO] [stdout]   --> tests/icd_aggregate_e2e.rs:60:23
[INFO] [stdout]    |
[INFO] [stdout] 60 |         assert_eq!(r, 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] 60 -         assert_eq!(r, VkResult::Success);
[INFO] [stdout] 60 +         assert_eq!(r, 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_aggregate_e2e.rs:74:71
[INFO] [stdout]    |
[INFO] [stdout] 74 |         assert_eq!(kronos_compute::vkBeginCommandBuffer(cmd, &begin), 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] 74 -         assert_eq!(kronos_compute::vkBeginCommandBuffer(cmd, &begin), VkResult::Success);
[INFO] [stdout] 74 +         assert_eq!(kronos_compute::vkBeginCommandBuffer(cmd, &begin), 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_aggregate_e2e.rs:75:61
[INFO] [stdout]    |
[INFO] [stdout] 75 |         assert_eq!(kronos_compute::vkEndCommandBuffer(cmd), 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] 75 -         assert_eq!(kronos_compute::vkEndCommandBuffer(cmd), VkResult::Success);
[INFO] [stdout] 75 +         assert_eq!(kronos_compute::vkEndCommandBuffer(cmd), 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_aggregate_e2e.rs:77:85
[INFO] [stdout]    |
[INFO] [stdout] 77 |         assert_eq!(kronos_compute::vkQueueSubmit(queue, 1, &submit, VkFence::NULL), 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] 77 -         assert_eq!(kronos_compute::vkQueueSubmit(queue, 1, &submit, VkFence::NULL), VkResult::Success);
[INFO] [stdout] 77 +         assert_eq!(kronos_compute::vkQueueSubmit(queue, 1, &submit, VkFence::NULL), 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: could not find `icd_loader` in `implementation`
[INFO] [stdout]   --> tests/aggregated_mode_test.rs:15:49
[INFO] [stdout]    |
[INFO] [stdout] 15 |         let _ = kronos_compute::implementation::icd_loader::initialize_icd_loader();
[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]   --> tests/thread_safety_test.rs:13:56
[INFO] [stdout]    |
[INFO] [stdout] 13 |             let icds = kronos_compute::implementation::icd_loader::available_icds();
[INFO] [stdout]    |                                                        ^^^^^^^^^^ could not find `icd_loader` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kronos-compute` (example "icd_select") due to 3 previous errors
[INFO] [stdout] error[E0433]: failed to resolve: could not find `icd_loader` in `implementation`
[INFO] [stdout]   --> tests/aggregated_mode_test.rs:18:56
[INFO] [stdout]    |
[INFO] [stdout] 18 |         let all_icds = kronos_compute::implementation::icd_loader::get_all_icds();
[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]   --> tests/thread_safety_test.rs:36:62
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let icds_after = kronos_compute::implementation::icd_loader::available_icds();
[INFO] [stdout]    |                                                              ^^^^^^^^^^ could not find `icd_loader` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> tests/amd_validation.rs:188:20
[INFO] [stdout]     |
[INFO] [stdout] 188 |             flags: 0,
[INFO] [stdout]     |                    ^ expected `VkBufferCreateFlags`, found integer
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> tests/amd_validation.rs:227:20
[INFO] [stdout]     |
[INFO] [stdout] 227 |             flags: 0,
[INFO] [stdout]     |                    ^ expected `VkCommandPoolCreateFlags`, found integer
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `icd_loader` in `implementation`
[INFO] [stdout]   --> tests/thread_safety_test.rs:47:54
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let final_icds = kronos_compute::implementation::icd_loader::available_icds();
[INFO] [stdout]    |                                                      ^^^^^^^^^^ could not find `icd_loader` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `traditional_elapsed`
[INFO] [stdout]    --> tests/amd_validation.rs:361:13
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let traditional_elapsed = traditional_time.elapsed();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_traditional_elapsed`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kronos_elapsed`
[INFO] [stdout]    --> tests/amd_validation.rs:367:13
[INFO] [stdout]     |
[INFO] [stdout] 367 |         let kronos_elapsed = kronos_time.elapsed();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kronos_elapsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kronos-compute` (test "icd_aggregate_e2e") due to 5 previous errors
[INFO] [stdout] error[E0433]: failed to resolve: could not find `icd_loader` in `implementation`
[INFO] [stdout]   --> tests/thread_safety_test.rs:62:60
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 let icds = kronos_compute::implementation::icd_loader::available_icds();
[INFO] [stdout]    |                                                            ^^^^^^^^^^ could not find `icd_loader` in `implementation`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `VkResult` in this scope
[INFO] [stdout]    --> src/implementation/tests.rs:142:24
[INFO] [stdout]     |
[INFO] [stdout] 142 |         let vk_result: VkResult = error.into();
[INFO] [stdout]     |                        ^^^^^^^^
[INFO] [stdout]    --> /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/result.rs:548:1
[INFO] [stdout]     |
[INFO] [stdout]     = note: similarly named enum `Result` defined here
[INFO] [stdout]     |
[INFO] [stdout] help: an enum with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 142 -         let vk_result: VkResult = error.into();
[INFO] [stdout] 142 +         let vk_result: Result = error.into();
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum through its public re-export
[INFO] [stdout]     |
[INFO] [stdout] 126 +     use crate::VkResult;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `VkResult`
[INFO] [stdout]    --> src/implementation/tests.rs:143:31
[INFO] [stdout]     |
[INFO] [stdout] 143 |         assert_eq!(vk_result, VkResult::NotReady);
[INFO] [stdout]     |                               ^^^^^^^^ use of undeclared type `VkResult`
[INFO] [stdout]     |
[INFO] [stdout] help: an enum with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 143 -         assert_eq!(vk_result, VkResult::NotReady);
[INFO] [stdout] 143 +         assert_eq!(vk_result, Result::NotReady);
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum through its public re-export
[INFO] [stdout]     |
[INFO] [stdout] 126 +     use crate::VkResult;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sync::Arc`
[INFO] [stdout]  --> tests/thread_safety_test.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{sync::Arc, thread, time::Duration};
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kronos-compute` (test "amd_validation") due to 15 previous errors; 5 warnings emitted
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `VkResult`
[INFO] [stdout]    --> src/implementation/tests.rs:148:43
[INFO] [stdout]     |
[INFO] [stdout] 148 |         let error = IcdError::VulkanError(VkResult::ErrorDeviceLost);
[INFO] [stdout]     |                                           ^^^^^^^^ use of undeclared type `VkResult`
[INFO] [stdout]     |
[INFO] [stdout] help: an enum with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 148 -         let error = IcdError::VulkanError(VkResult::ErrorDeviceLost);
[INFO] [stdout] 148 +         let error = IcdError::VulkanError(Result::ErrorDeviceLost);
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum through its public re-export
[INFO] [stdout]     |
[INFO] [stdout] 126 +     use crate::VkResult;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kronos-compute` (example "rust_implementation_test") due to 3 previous errors
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `VkResult`
[INFO] [stdout]    --> src/implementation/tests.rs:150:65
[INFO] [stdout]     |
[INFO] [stdout] 150 |             IcdError::VulkanError(result) => assert_eq!(result, VkResult::ErrorDeviceLost),
[INFO] [stdout]     |                                                                 ^^^^^^^^ use of undeclared type `VkResult`
[INFO] [stdout]     |
[INFO] [stdout] help: an enum with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 150 -             IcdError::VulkanError(result) => assert_eq!(result, VkResult::ErrorDeviceLost),
[INFO] [stdout] 150 +             IcdError::VulkanError(result) => assert_eq!(result, Result::ErrorDeviceLost),
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum through its public re-export
[INFO] [stdout]     |
[INFO] [stdout] 126 +     use crate::VkResult;
[INFO] [stdout]     |
[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` (test "aggregated_mode_test") due to 2 previous errors
[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)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::core::*`
[INFO] [stdout]  --> src/api/tests.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     use crate::core::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::sys::*`
[INFO] [stdout]  --> src/api/tests.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     use crate::sys::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^
[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] For more information about this error, try `rustc --explain E0433`.
[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: unused import: `crate::core::*`
[INFO] [stdout]    --> src/implementation/tests.rs:127:9
[INFO] [stdout]     |
[INFO] [stdout] 127 |     use crate::core::*;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ffi::NulError`
[INFO] [stdout]    --> src/implementation/tests.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 |         use std::ffi::NulError;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kronos-compute` (test "thread_safety_test") due to 4 previous errors; 1 warning emitted
[INFO] [stdout] error[E0599]: no variant or associated item named `LockPoisoned` found for enum `implementation::error::KronosError` in the current scope
[INFO] [stdout]    --> src/implementation/tests.rs:134:26
[INFO] [stdout]     |
[INFO] [stdout] 134 |             KronosError::LockPoisoned => (),
[INFO] [stdout]     |                          ^^^^^^^^^^^^ variant or associated item not found in `implementation::error::KronosError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/implementation/error.rs:58:1
[INFO] [stdout]     |
[INFO] [stdout]  58 | pub enum KronosError {
[INFO] [stdout]     | -------------------- variant or associated item `LockPoisoned` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `NotReady` found for enum `implementation::error::KronosError` in the current scope
[INFO] [stdout]    --> src/implementation/tests.rs:141:34
[INFO] [stdout]     |
[INFO] [stdout] 141 |         let error = KronosError::NotReady;
[INFO] [stdout]     |                                  ^^^^^^^^ variant or associated item not found in `implementation::error::KronosError`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/implementation/error.rs:58:1
[INFO] [stdout]     |
[INFO] [stdout]  58 | pub enum KronosError {
[INFO] [stdout]     | -------------------- variant or associated item `NotReady` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `implementation::error::KronosError: From<Vec<u8>>` is not satisfied
[INFO] [stdout]    --> src/implementation/tests.rs:159:21
[INFO] [stdout]     |
[INFO] [stdout] 159 |         let error = KronosError::from(nul_error.into_bytes().into_iter().collect::<Vec<_>>());
[INFO] [stdout]     |                     ^^^^^^^^^^^ the trait `From<Vec<u8>>` is not implemented for `implementation::error::KronosError`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `From<T>`:
[INFO] [stdout]               `implementation::error::KronosError` implements `From<PoisonError<T>>`
[INFO] [stdout]               `implementation::error::KronosError` implements `From<implementation::error::IcdError>`
[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)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transfer_dst`
[INFO] [stdout]   --> src/api/tests.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let transfer_dst = BufferUsage::transfer_dst();
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transfer_dst`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` 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] 
[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] Some errors have detailed explanations: E0277, E0412, E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kronos-compute` (lib test) due to 7 previous errors; 17 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "dabb17035115ad5e49fe48f87393caa59efb13180f610d6223a02f7607763f88", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dabb17035115ad5e49fe48f87393caa59efb13180f610d6223a02f7607763f88", kill_on_drop: false }`
[INFO] [stdout] dabb17035115ad5e49fe48f87393caa59efb13180f610d6223a02f7607763f88
