[INFO] fetching crate wgsl_to_wgpu 0.17.1...
[INFO] testing wgsl_to_wgpu-0.17.1 against 1.93.0 for beta-1.94-1
[INFO] extracting crate wgsl_to_wgpu 0.17.1 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate wgsl_to_wgpu 0.17.1
[INFO] finished tweaking crates.io crate wgsl_to_wgpu 0.17.1
[INFO] tweaked toml for crates.io crate wgsl_to_wgpu 0.17.1 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate wgsl_to_wgpu 0.17.1 on toolchain 1.93.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.93.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate wgsl_to_wgpu 0.17.1 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.93.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded case v1.0.0
[INFO] [stderr]   Downloaded insta v1.45.0
[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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+1.93.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 09b65224af25841ac4ca80f36ddf5781de42b49c6e0ab763673fe31c31873c75
[INFO] running `Command { std: "docker" "start" "-a" "09b65224af25841ac4ca80f36ddf5781de42b49c6e0ab763673fe31c31873c75", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "09b65224af25841ac4ca80f36ddf5781de42b49c6e0ab763673fe31c31873c75", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "09b65224af25841ac4ca80f36ddf5781de42b49c6e0ab763673fe31c31873c75", kill_on_drop: false }`
[INFO] [stdout] 09b65224af25841ac4ca80f36ddf5781de42b49c6e0ab763673fe31c31873c75
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+1.93.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 958ca31e11f302cc4a58af1675a2d1b8ec9167a4b01eed62565d4b9c706672f4
[INFO] running `Command { std: "docker" "start" "-a" "958ca31e11f302cc4a58af1675a2d1b8ec9167a4b01eed62565d4b9c706672f4", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling naga v28.0.0
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling hexf-parse v0.2.1
[INFO] [stderr]    Compiling pathdiff v0.2.3
[INFO] [stderr]    Compiling case v1.0.0
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling codespan-reporting v0.12.0
[INFO] [stderr]    Compiling indexmap v2.12.1
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]    Compiling zerocopy-derive v0.8.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling bytemuck v1.24.0
[INFO] [stderr]    Compiling wgpu-types v28.0.0
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling wgsl_to_wgpu v0.17.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 25.10s
[INFO] running `Command { std: "docker" "inspect" "958ca31e11f302cc4a58af1675a2d1b8ec9167a4b01eed62565d4b9c706672f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "958ca31e11f302cc4a58af1675a2d1b8ec9167a4b01eed62565d4b9c706672f4", kill_on_drop: false }`
[INFO] [stdout] 958ca31e11f302cc4a58af1675a2d1b8ec9167a4b01eed62565d4b9c706672f4
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+1.93.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 65d49fe527413bf5573fd299d17f51560e2ef466706cfb80161198abfa7598d8
[INFO] running `Command { std: "docker" "start" "-a" "65d49fe527413bf5573fd299d17f51560e2ef466706cfb80161198abfa7598d8", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.178
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling wgpu-types v28.0.0
[INFO] [stderr]    Compiling naga v28.0.0
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling tempfile v3.23.0
[INFO] [stderr]    Compiling insta v1.45.0
[INFO] [stderr]    Compiling wgsl_to_wgpu v0.17.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 20.50s
[INFO] running `Command { std: "docker" "inspect" "65d49fe527413bf5573fd299d17f51560e2ef466706cfb80161198abfa7598d8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "65d49fe527413bf5573fd299d17f51560e2ef466706cfb80161198abfa7598d8", kill_on_drop: false }`
[INFO] [stdout] 65d49fe527413bf5573fd299d17f51560e2ef466706cfb80161198abfa7598d8
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+1.93.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 4f91d1609f250a85d6fbf5b4262979c9d1f675aecef179ac06d21a94841c949f
[INFO] running `Command { std: "docker" "start" "-a" "4f91d1609f250a85d6fbf5b4262979c9d1f675aecef179ac06d21a94841c949f", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.16s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/wgsl_to_wgpu-a6dd0028fcffcd19)
[INFO] [stdout] 
[INFO] [stdout] running 47 tests
[INFO] [stdout] test bindgroup::tests::bind_group_data_first_group_not_zero ... ok
[INFO] [stdout] test bindgroup::tests::bind_group_data_consecutive_bind_groups ... ok
[INFO] [stdout] test bindgroup::tests::bind_group_data_non_consecutive_bind_groups ... ok
[INFO] [stdout] test structs::tests::write_all_structs_rust ... ok
[INFO] [stdout] test structs::tests::write_all_structs_glam ... ok
[INFO] [stdout] test structs::tests::write_all_structs_nalgebra ... ok
[INFO] [stdout] test structs::tests::write_runtime_sized_array_no_encase - should panic ... ok
[INFO] [stdout] test structs::tests::write_runtime_sized_array_bytemuck_host_shareable - should panic ... ok
[INFO] [stdout] test structs::tests::write_runtime_sized_array_bytemuck_vertex - should panic ... ok
[INFO] [stdout] test structs::tests::write_runtime_sized_array_not_last_field - should panic ... ok
[INFO] [stdout] test test::create_shader_module_compute_overrides ... ok
[INFO] [stdout] test test::create_shader_module_consecutive_bind_groups ... ok
[INFO] [stdout] test test::create_shader_module_immediate_data ... ok
[INFO] [stdout] test test::create_shader_module_multiple_outputs ... ok
[INFO] [stdout] test test::create_shader_module_non_consecutive_bind_groups ... ok
[INFO] [stdout] test test::create_shader_module_overrides ... ok
[INFO] [stdout] test test::create_shader_module_parse_error ... ok
[INFO] [stdout] test test::create_shader_module_repeated_bindings ... ok
[INFO] [stdout] test test::create_shader_module_semantic_error ... ok
[INFO] [stdout] test test::create_shader_modules_source ... ok
[INFO] [stdout] test structs::tests::write_all_structs_encase_bytemuck ... FAILED
[INFO] [stdout] test test::create_shader_multiple_entries ... ok
[INFO] [stdout] test bindgroup::tests::bind_groups_module_compute ... FAILED
[INFO] [stdout] test test::add_duplicate_module_different_paths ... FAILED
[INFO] [stdout] test structs::tests::write_all_structs_bytemuck_input_layout_validation ... FAILED
[INFO] [stdout] test bindgroup::tests::bind_groups_module_fragment ... FAILED
[INFO] [stdout] test bindgroup::tests::bind_groups_module_vertex ... FAILED
[INFO] [stdout] test bindgroup::tests::bind_groups_module_vertex_fragment ... FAILED
[INFO] [stdout] test structs::tests::write_all_structs_serde_encase_bytemuck ... FAILED
[INFO] [stdout] test test::add_single_root_module ... FAILED
[INFO] [stdout] test test::create_shader_modules_source_rustfmt ... FAILED
[INFO] [stdout] test consts::tests::write_pipeline_overrideable_constants_empty ... ok
[INFO] [stdout] test structs::tests::write_all_structs_bytemuck_f64_vec ... FAILED
[INFO] [stdout] test test::mesh_shader ... FAILED
[INFO] [stdout] test structs::tests::write_all_structs_bytemuck_skip_input_layout_validation ... FAILED
[INFO] [stdout] test test::single_root_module ... FAILED
[INFO] [stdout] test structs::tests::write_runtime_sized_array ... FAILED
[INFO] [stdout] test test::shader_stage_collection ... FAILED
[INFO] [stdout] test test::write_vertex_module_single_input_float16 ... FAILED
[INFO] [stdout] test test::write_vertex_module_single_input_sint32 ... FAILED
[INFO] [stdout] test structs::tests::write_all_structs_skip_stage_outputs ... FAILED
[INFO] [stdout] test consts::tests::write_global_constants ... ok
[INFO] [stdout] test test::vertex_entries ... FAILED
[INFO] [stdout] test test::write_vertex_module_single_input_float64 ... FAILED
[INFO] [stdout] test test::write_vertex_module_single_input_uint32 ... FAILED
[INFO] [stdout] test test::write_vertex_module_single_input_float32 ... FAILED
[INFO] [stdout] test test::write_vertex_module_empty ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- structs::tests::write_all_structs_encase_bytemuck stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_all_structs_encase_bytemuck.snap
[INFO] [stdout] Snapshot: write_all_structs_encase_bytemuck
[INFO] [stdout] Source: src/structs.rs:352
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub const ENTRY_MAIN: &str = "main";
[INFO] [stdout]     2       │-#[derive(Debug)]
[INFO] [stdout]     3       │-pub struct FragmentEntry<const N: usize> {
[INFO] [stdout]     4       │-    pub entry_point: &'static str,
[INFO] [stdout]     5       │-    pub targets: [Option<wgpu::ColorTargetState>; N],
[INFO] [stdout]     6       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]     7       │-}
[INFO] [stdout]     8       │-pub fn fragment_state<'a, const N: usize>(
[INFO] [stdout]     9       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]    10       │-    entry: &'a FragmentEntry<N>,
[INFO] [stdout]    11       │-) -> wgpu::FragmentState<'a> {
[INFO] [stdout]    12       │-    wgpu::FragmentState {
[INFO] [stdout]    13       │-        module,
[INFO] [stdout]    14       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]    15       │-        targets: &entry.targets,
[INFO] [stdout]    16       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]    17       │-            constants: &entry.constants,
[INFO] [stdout]    18       │-            ..Default::default()
[INFO] [stdout]    19       │-        },
[INFO] [stdout]    20       │-    }
[INFO] [stdout]    21       │-}
[INFO] [stdout]    22       │-pub fn main_entry(targets: [Option<wgpu::ColorTargetState>; 0]) -> FragmentEntry<0> {
[INFO] [stdout]    23       │-    FragmentEntry {
[INFO] [stdout]    24       │-        entry_point: ENTRY_MAIN,
[INFO] [stdout]    25       │-        targets,
[INFO] [stdout]    26       │-        constants: Default::default(),
[INFO] [stdout]    27       │-    }
[INFO] [stdout]    28       │-}
[INFO] [stdout]    29       │-pub const SOURCE: &str = include_str!("types.wgsl");
[INFO] [stdout]    30       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]    31       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]    32       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]    33       │-        label: None,
[INFO] [stdout]    34       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]    35       │-    })
[INFO] [stdout]    36       │-}
[INFO] [stdout]    37       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]    38       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]    39       │-        label: None,
[INFO] [stdout]    40       │-        bind_group_layouts: &[],
[INFO] [stdout]    41       │-        immediate_size: 0,
[INFO] [stdout]    42       │-    })
[INFO] [stdout]    43       │-}
[INFO] [stdout]    44       │-#[repr(C)]
[INFO] [stdout]    45       │-#[derive(
[INFO] [stdout]    46       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]    47       │-)]
[INFO] [stdout]    48       │-pub struct Atomics {
[INFO] [stdout]    49       │-    pub num: u32,
[INFO] [stdout]    50       │-    pub numi: i32,
[INFO] [stdout]    51       │-}
[INFO] [stdout]    52       │-const _: () = assert!(
[INFO] [stdout]    53       │-    std::mem::size_of::<Atomics>() == 8,
[INFO] [stdout]    54       │-    "size of Atomics does not match WGSL"
[INFO] [stdout]    55       │-);
[INFO] [stdout]    56       │-const _: () = assert!(
[INFO] [stdout]    57       │-    std::mem::offset_of!(Atomics, num) == 0,
[INFO] [stdout]    58       │-    "offset of Atomics.num does not match WGSL"
[INFO] [stdout]    59       │-);
[INFO] [stdout]    60       │-const _: () = assert!(
[INFO] [stdout]    61       │-    std::mem::offset_of!(Atomics, numi) == 4,
[INFO] [stdout]    62       │-    "offset of Atomics.numi does not match WGSL"
[INFO] [stdout]    63       │-);
[INFO] [stdout]    64       │-#[repr(C)]
[INFO] [stdout]    65       │-#[derive(
[INFO] [stdout]    66       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]    67       │-)]
[INFO] [stdout]    68       │-pub struct MatricesF16 {
[INFO] [stdout]    69       │-    pub a: [[half::f16; 4]; 4],
[INFO] [stdout]    70       │-    pub b: [[half::f16; 4]; 3],
[INFO] [stdout]    71       │-    pub c: [[half::f16; 4]; 2],
[INFO] [stdout]    72       │-    pub d: [[half::f16; 3]; 4],
[INFO] [stdout]    73       │-    pub e: [[half::f16; 3]; 3],
[INFO] [stdout]    74       │-    pub f: [[half::f16; 3]; 2],
[INFO] [stdout]    75       │-    pub g: [[half::f16; 2]; 4],
[INFO] [stdout]    76       │-    pub h: [[half::f16; 2]; 3],
[INFO] [stdout]    77       │-    pub i: [[half::f16; 2]; 2],
[INFO] [stdout]    78       │-}
[INFO] [stdout]    79       │-const _: () = assert!(
[INFO] [stdout]    80       │-    std::mem::size_of::<MatricesF16>() == 184,
[INFO] [stdout]    81       │-    "size of MatricesF16 does not match WGSL"
[INFO] [stdout]    82       │-);
[INFO] [stdout]    83       │-const _: () = assert!(
[INFO] [stdout]    84       │-    std::mem::offset_of!(MatricesF16, a) == 0,
[INFO] [stdout]    85       │-    "offset of MatricesF16.a does not match WGSL"
[INFO] [stdout]    86       │-);
[INFO] [stdout]    87       │-const _: () = assert!(
[INFO] [stdout]    88       │-    std::mem::offset_of!(MatricesF16, b) == 32,
[INFO] [stdout]    89       │-    "offset of MatricesF16.b does not match WGSL"
[INFO] [stdout]    90       │-);
[INFO] [stdout]    91       │-const _: () = assert!(
[INFO] [stdout]    92       │-    std::mem::offset_of!(MatricesF16, c) == 64,
[INFO] [stdout]    93       │-    "offset of MatricesF16.c does not match WGSL"
[INFO] [stdout]    94       │-);
[INFO] [stdout]    95       │-const _: () = assert!(
[INFO] [stdout]    96       │-    std::mem::offset_of!(MatricesF16, d) == 80,
[INFO] [stdout]    97       │-    "offset of MatricesF16.d does not match WGSL"
[INFO] [stdout]    98       │-);
[INFO] [stdout]    99       │-const _: () = assert!(
[INFO] [stdout]   100       │-    std::mem::offset_of!(MatricesF16, e) == 104,
[INFO] [stdout]   101       │-    "offset of MatricesF16.e does not match WGSL"
[INFO] [stdout]   102       │-);
[INFO] [stdout]   103       │-const _: () = assert!(
[INFO] [stdout]   104       │-    std::mem::offset_of!(MatricesF16, f) == 128,
[INFO] [stdout]   105       │-    "offset of MatricesF16.f does not match WGSL"
[INFO] [stdout]   106       │-);
[INFO] [stdout]   107       │-const _: () = assert!(
[INFO] [stdout]   108       │-    std::mem::offset_of!(MatricesF16, g) == 144,
[INFO] [stdout]   109       │-    "offset of MatricesF16.g does not match WGSL"
[INFO] [stdout]   110       │-);
[INFO] [stdout]   111       │-const _: () = assert!(
[INFO] [stdout]   112       │-    std::mem::offset_of!(MatricesF16, h) == 160,
[INFO] [stdout]   113       │-    "offset of MatricesF16.h does not match WGSL"
[INFO] [stdout]   114       │-);
[INFO] [stdout]   115       │-const _: () = assert!(
[INFO] [stdout]   116       │-    std::mem::offset_of!(MatricesF16, i) == 176,
[INFO] [stdout]   117       │-    "offset of MatricesF16.i does not match WGSL"
[INFO] [stdout]   118       │-);
[INFO] [stdout]   119       │-#[repr(C)]
[INFO] [stdout]   120       │-#[derive(
[INFO] [stdout]   121       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   122       │-)]
[INFO] [stdout]   123       │-pub struct MatricesF32 {
[INFO] [stdout]   124       │-    pub a: [[f32; 4]; 4],
[INFO] [stdout]   125       │-    pub b: [[f32; 4]; 3],
[INFO] [stdout]   126       │-    pub c: [[f32; 4]; 2],
[INFO] [stdout]   127       │-    pub d: [[f32; 3]; 4],
[INFO] [stdout]   128       │-    pub e: [[f32; 3]; 3],
[INFO] [stdout]   129       │-    pub f: [[f32; 3]; 2],
[INFO] [stdout]   130       │-    pub g: [[f32; 2]; 4],
[INFO] [stdout]   131       │-    pub h: [[f32; 2]; 3],
[INFO] [stdout]   132       │-    pub i: [[f32; 2]; 2],
[INFO] [stdout]   133       │-}
[INFO] [stdout]   134       │-const _: () = assert!(
[INFO] [stdout]   135       │-    std::mem::size_of::<MatricesF32>() == 368,
[INFO] [stdout]   136       │-    "size of MatricesF32 does not match WGSL"
[INFO] [stdout]   137       │-);
[INFO] [stdout]   138       │-const _: () = assert!(
[INFO] [stdout]   139       │-    std::mem::offset_of!(MatricesF32, a) == 0,
[INFO] [stdout]   140       │-    "offset of MatricesF32.a does not match WGSL"
[INFO] [stdout]   141       │-);
[INFO] [stdout]   142       │-const _: () = assert!(
[INFO] [stdout]   143       │-    std::mem::offset_of!(MatricesF32, b) == 64,
[INFO] [stdout]   144       │-    "offset of MatricesF32.b does not match WGSL"
[INFO] [stdout]   145       │-);
[INFO] [stdout]   146       │-const _: () = assert!(
[INFO] [stdout]   147       │-    std::mem::offset_of!(MatricesF32, c) == 128,
[INFO] [stdout]   148       │-    "offset of MatricesF32.c does not match WGSL"
[INFO] [stdout]   149       │-);
[INFO] [stdout]   150       │-const _: () = assert!(
[INFO] [stdout]   151       │-    std::mem::offset_of!(MatricesF32, d) == 160,
[INFO] [stdout]   152       │-    "offset of MatricesF32.d does not match WGSL"
[INFO] [stdout]   153       │-);
[INFO] [stdout]   154       │-const _: () = assert!(
[INFO] [stdout]   155       │-    std::mem::offset_of!(MatricesF32, e) == 208,
[INFO] [stdout]   156       │-    "offset of MatricesF32.e does not match WGSL"
[INFO] [stdout]   157       │-);
[INFO] [stdout]   158       │-const _: () = assert!(
[INFO] [stdout]   159       │-    std::mem::offset_of!(MatricesF32, f) == 256,
[INFO] [stdout]   160       │-    "offset of MatricesF32.f does not match WGSL"
[INFO] [stdout]   161       │-);
[INFO] [stdout]   162       │-const _: () = assert!(
[INFO] [stdout]   163       │-    std::mem::offset_of!(MatricesF32, g) == 288,
[INFO] [stdout]   164       │-    "offset of MatricesF32.g does not match WGSL"
[INFO] [stdout]   165       │-);
[INFO] [stdout]   166       │-const _: () = assert!(
[INFO] [stdout]   167       │-    std::mem::offset_of!(MatricesF32, h) == 320,
[INFO] [stdout]   168       │-    "offset of MatricesF32.h does not match WGSL"
[INFO] [stdout]   169       │-);
[INFO] [stdout]   170       │-const _: () = assert!(
[INFO] [stdout]   171       │-    std::mem::offset_of!(MatricesF32, i) == 352,
[INFO] [stdout]   172       │-    "offset of MatricesF32.i does not match WGSL"
[INFO] [stdout]   173       │-);
[INFO] [stdout]   174       │-#[repr(C)]
[INFO] [stdout]   175       │-#[derive(
[INFO] [stdout]   176       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   177       │-)]
[INFO] [stdout]   178       │-pub struct MatricesF64 {
[INFO] [stdout]   179       │-    pub a: [[f64; 4]; 4],
[INFO] [stdout]   180       │-    pub b: [[f64; 4]; 3],
[INFO] [stdout]   181       │-    pub c: [[f64; 4]; 2],
[INFO] [stdout]   182       │-    pub d: [[f64; 3]; 4],
[INFO] [stdout]   183       │-    pub e: [[f64; 3]; 3],
[INFO] [stdout]   184       │-    pub f: [[f64; 3]; 2],
[INFO] [stdout]   185       │-    pub g: [[f64; 2]; 4],
[INFO] [stdout]   186       │-    pub h: [[f64; 2]; 3],
[INFO] [stdout]   187       │-    pub i: [[f64; 2]; 2],
[INFO] [stdout]   188       │-}
[INFO] [stdout]   189       │-const _: () = assert!(
[INFO] [stdout]   190       │-    std::mem::size_of::<MatricesF64>() == 736,
[INFO] [stdout]   191       │-    "size of MatricesF64 does not match WGSL"
[INFO] [stdout]   192       │-);
[INFO] [stdout]   193       │-const _: () = assert!(
[INFO] [stdout]   194       │-    std::mem::offset_of!(MatricesF64, a) == 0,
[INFO] [stdout]   195       │-    "offset of MatricesF64.a does not match WGSL"
[INFO] [stdout]   196       │-);
[INFO] [stdout]   197       │-const _: () = assert!(
[INFO] [stdout]   198       │-    std::mem::offset_of!(MatricesF64, b) == 128,
[INFO] [stdout]   199       │-    "offset of MatricesF64.b does not match WGSL"
[INFO] [stdout]   200       │-);
[INFO] [stdout]   201       │-const _: () = assert!(
[INFO] [stdout]   202       │-    std::mem::offset_of!(MatricesF64, c) == 256,
[INFO] [stdout]   203       │-    "offset of MatricesF64.c does not match WGSL"
[INFO] [stdout]   204       │-);
[INFO] [stdout]   205       │-const _: () = assert!(
[INFO] [stdout]   206       │-    std::mem::offset_of!(MatricesF64, d) == 320,
[INFO] [stdout]   207       │-    "offset of MatricesF64.d does not match WGSL"
[INFO] [stdout]   208       │-);
[INFO] [stdout]   209       │-const _: () = assert!(
[INFO] [stdout]   210       │-    std::mem::offset_of!(MatricesF64, e) == 416,
[INFO] [stdout]   211       │-    "offset of MatricesF64.e does not match WGSL"
[INFO] [stdout]   212       │-);
[INFO] [stdout]   213       │-const _: () = assert!(
[INFO] [stdout]   214       │-    std::mem::offset_of!(MatricesF64, f) == 512,
[INFO] [stdout]   215       │-    "offset of MatricesF64.f does not match WGSL"
[INFO] [stdout]   216       │-);
[INFO] [stdout]   217       │-const _: () = assert!(
[INFO] [stdout]   218       │-    std::mem::offset_of!(MatricesF64, g) == 576,
[INFO] [stdout]   219       │-    "offset of MatricesF64.g does not match WGSL"
[INFO] [stdout]   220       │-);
[INFO] [stdout]   221       │-const _: () = assert!(
[INFO] [stdout]   222       │-    std::mem::offset_of!(MatricesF64, h) == 640,
[INFO] [stdout]   223       │-    "offset of MatricesF64.h does not match WGSL"
[INFO] [stdout]   224       │-);
[INFO] [stdout]   225       │-const _: () = assert!(
[INFO] [stdout]   226       │-    std::mem::offset_of!(MatricesF64, i) == 704,
[INFO] [stdout]   227       │-    "offset of MatricesF64.i does not match WGSL"
[INFO] [stdout]   228       │-);
[INFO] [stdout]   229       │-#[repr(C)]
[INFO] [stdout]   230       │-#[derive(
[INFO] [stdout]   231       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   232       │-)]
[INFO] [stdout]   233       │-pub struct Nested {
[INFO] [stdout]   234       │-    pub a: MatricesF32,
[INFO] [stdout]   235       │-    pub b: MatricesF64,
[INFO] [stdout]   236       │-}
[INFO] [stdout]   237       │-const _: () = assert!(
[INFO] [stdout]   238       │-    std::mem::size_of::<Nested>() == 1120,
[INFO] [stdout]   239       │-    "size of Nested does not match WGSL"
[INFO] [stdout]   240       │-);
[INFO] [stdout]   241       │-const _: () = assert!(
[INFO] [stdout]   242       │-    std::mem::offset_of!(Nested, a) == 0,
[INFO] [stdout]   243       │-    "offset of Nested.a does not match WGSL"
[INFO] [stdout]   244       │-);
[INFO] [stdout]   245       │-const _: () = assert!(
[INFO] [stdout]   246       │-    std::mem::offset_of!(Nested, b) == 384,
[INFO] [stdout]   247       │-    "offset of Nested.b does not match WGSL"
[INFO] [stdout]   248       │-);
[INFO] [stdout]   249       │-#[repr(C)]
[INFO] [stdout]   250       │-#[derive(
[INFO] [stdout]   251       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   252       │-)]
[INFO] [stdout]   253       │-pub struct Scalars {
[INFO] [stdout]   254       │-    pub a: u32,
[INFO] [stdout]   255       │-    pub b: i32,
[INFO] [stdout]   256       │-    pub c: f32,
[INFO] [stdout]   257       │-    pub d: half::f16,
[INFO] [stdout]   258       │-}
[INFO] [stdout]   259       │-const _: () = assert!(
[INFO] [stdout]   260       │-    std::mem::size_of::<Scalars>() == 16,
[INFO] [stdout]   261       │-    "size of Scalars does not match WGSL"
[INFO] [stdout]   262       │-);
[INFO] [stdout]   263       │-const _: () = assert!(
[INFO] [stdout]   264       │-    std::mem::offset_of!(Scalars, a) == 0,
[INFO] [stdout]   265       │-    "offset of Scalars.a does not match WGSL"
[INFO] [stdout]   266       │-);
[INFO] [stdout]   267       │-const _: () = assert!(
[INFO] [stdout]   268       │-    std::mem::offset_of!(Scalars, b) == 4,
[INFO] [stdout]   269       │-    "offset of Scalars.b does not match WGSL"
[INFO] [stdout]   270       │-);
[INFO] [stdout]   271       │-const _: () = assert!(
[INFO] [stdout]   272       │-    std::mem::offset_of!(Scalars, c) == 8,
[INFO] [stdout]   273       │-    "offset of Scalars.c does not match WGSL"
[INFO] [stdout]   274       │-);
[INFO] [stdout]   275       │-const _: () = assert!(
[INFO] [stdout]   276       │-    std::mem::offset_of!(Scalars, d) == 12,
[INFO] [stdout]   277       │-    "offset of Scalars.d does not match WGSL"
[INFO] [stdout]   278       │-);
[INFO] [stdout]   279       │-#[repr(C)]
[INFO] [stdout]   280       │-#[derive(
[INFO] [stdout]   281       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   282       │-)]
[INFO] [stdout]   283       │-pub struct StaticArrays {
[INFO] [stdout]   284       │-    pub a: [u32; 5],
[INFO] [stdout]   285       │-    pub b: [f32; 3],
[INFO] [stdout]   286       │-    pub c: [[[f32; 4]; 4]; 512],
[INFO] [stdout]   287       │-}
[INFO] [stdout]   288       │-const _: () = assert!(
[INFO] [stdout]   289       │-    std::mem::size_of::<StaticArrays>() == 32800,
[INFO] [stdout]   290       │-    "size of StaticArrays does not match WGSL"
[INFO] [stdout]   291       │-);
[INFO] [stdout]   292       │-const _: () = assert!(
[INFO] [stdout]   293       │-    std::mem::offset_of!(StaticArrays, a) == 0,
[INFO] [stdout]   294       │-    "offset of StaticArrays.a does not match WGSL"
[INFO] [stdout]   295       │-);
[INFO] [stdout]   296       │-const _: () = assert!(
[INFO] [stdout]   297       │-    std::mem::offset_of!(StaticArrays, b) == 20,
[INFO] [stdout]   298       │-    "offset of StaticArrays.b does not match WGSL"
[INFO] [stdout]   299       │-);
[INFO] [stdout]   300       │-const _: () = assert!(
[INFO] [stdout]   301       │-    std::mem::offset_of!(StaticArrays, c) == 32,
[INFO] [stdout]   302       │-    "offset of StaticArrays.c does not match WGSL"
[INFO] [stdout]   303       │-);
[INFO] [stdout]   304       │-#[repr(C)]
[INFO] [stdout]   305       │-#[derive(
[INFO] [stdout]   306       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   307       │-)]
[INFO] [stdout]   308       │-pub struct VectorsF16 {
[INFO] [stdout]   309       │-    pub a: [half::f16; 2],
[INFO] [stdout]   310       │-    pub b: [half::f16; 4],
[INFO] [stdout]   311       │-}
[INFO] [stdout]   312       │-const _: () = assert!(
[INFO] [stdout]   313       │-    std::mem::size_of::<VectorsF16>() == 16,
[INFO] [stdout]   314       │-    "size of VectorsF16 does not match WGSL"
[INFO] [stdout]   315       │-);
[INFO] [stdout]   316       │-const _: () = assert!(
[INFO] [stdout]   317       │-    std::mem::offset_of!(VectorsF16, a) == 0,
[INFO] [stdout]   318       │-    "offset of VectorsF16.a does not match WGSL"
[INFO] [stdout]   319       │-);
[INFO] [stdout]   320       │-const _: () = assert!(
[INFO] [stdout]   321       │-    std::mem::offset_of!(VectorsF16, b) == 8,
[INFO] [stdout]   322       │-    "offset of VectorsF16.b does not match WGSL"
[INFO] [stdout]   323       │-);
[INFO] [stdout]   324       │-#[repr(C)]
[INFO] [stdout]   325       │-#[derive(
[INFO] [stdout]   326       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   327       │-)]
[INFO] [stdout]   328       │-pub struct VectorsF32 {
[INFO] [stdout]   329       │-    pub a: [f32; 2],
[INFO] [stdout]   330       │-    pub b: [f32; 3],
[INFO] [stdout]   331       │-    pub c: [f32; 4],
[INFO] [stdout]   332       │-}
[INFO] [stdout]   333       │-const _: () = assert!(
[INFO] [stdout]   334       │-    std::mem::size_of::<VectorsF32>() == 48,
[INFO] [stdout]   335       │-    "size of VectorsF32 does not match WGSL"
[INFO] [stdout]   336       │-);
[INFO] [stdout]   337       │-const _: () = assert!(
[INFO] [stdout]   338       │-    std::mem::offset_of!(VectorsF32, a) == 0,
[INFO] [stdout]   339       │-    "offset of VectorsF32.a does not match WGSL"
[INFO] [stdout]   340       │-);
[INFO] [stdout]   341       │-const _: () = assert!(
[INFO] [stdout]   342       │-    std::mem::offset_of!(VectorsF32, b) == 16,
[INFO] [stdout]   343       │-    "offset of VectorsF32.b does not match WGSL"
[INFO] [stdout]   344       │-);
[INFO] [stdout]   345       │-const _: () = assert!(
[INFO] [stdout]   346       │-    std::mem::offset_of!(VectorsF32, c) == 32,
[INFO] [stdout]   347       │-    "offset of VectorsF32.c does not match WGSL"
[INFO] [stdout]   348       │-);
[INFO] [stdout]   349       │-#[repr(C)]
[INFO] [stdout]   350       │-#[derive(
[INFO] [stdout]   351       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   352       │-)]
[INFO] [stdout]   353       │-pub struct VectorsF64 {
[INFO] [stdout]   354       │-    pub a: [f64; 2],
[INFO] [stdout]   355       │-    pub b: [f64; 3],
[INFO] [stdout]   356       │-    pub c: [f64; 4],
[INFO] [stdout]   357       │-}
[INFO] [stdout]   358       │-const _: () = assert!(
[INFO] [stdout]   359       │-    std::mem::size_of::<VectorsF64>() == 96,
[INFO] [stdout]   360       │-    "size of VectorsF64 does not match WGSL"
[INFO] [stdout]   361       │-);
[INFO] [stdout]   362       │-const _: () = assert!(
[INFO] [stdout]   363       │-    std::mem::offset_of!(VectorsF64, a) == 0,
[INFO] [stdout]   364       │-    "offset of VectorsF64.a does not match WGSL"
[INFO] [stdout]   365       │-);
[INFO] [stdout]   366       │-const _: () = assert!(
[INFO] [stdout]   367       │-    std::mem::offset_of!(VectorsF64, b) == 32,
[INFO] [stdout]   368       │-    "offset of VectorsF64.b does not match WGSL"
[INFO] [stdout]   369       │-);
[INFO] [stdout]   370       │-const _: () = assert!(
[INFO] [stdout]   371       │-    std::mem::offset_of!(VectorsF64, c) == 64,
[INFO] [stdout]   372       │-    "offset of VectorsF64.c does not match WGSL"
[INFO] [stdout]   373       │-);
[INFO] [stdout]   374       │-#[repr(C)]
[INFO] [stdout]   375       │-#[derive(
[INFO] [stdout]   376       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   377       │-)]
[INFO] [stdout]   378       │-pub struct VectorsI32 {
[INFO] [stdout]   379       │-    pub a: [i32; 2],
[INFO] [stdout]   380       │-    pub b: [i32; 3],
[INFO] [stdout]   381       │-    pub c: [i32; 4],
[INFO] [stdout]   382       │-}
[INFO] [stdout]   383       │-const _: () = assert!(
[INFO] [stdout]   384       │-    std::mem::size_of::<VectorsI32>() == 48,
[INFO] [stdout]   385       │-    "size of VectorsI32 does not match WGSL"
[INFO] [stdout]   386       │-);
[INFO] [stdout]   387       │-const _: () = assert!(
[INFO] [stdout]   388       │-    std::mem::offset_of!(VectorsI32, a) == 0,
[INFO] [stdout]   389       │-    "offset of VectorsI32.a does not match WGSL"
[INFO] [stdout]   390       │-);
[INFO] [stdout]   391       │-const _: () = assert!(
[INFO] [stdout]   392       │-    std::mem::offset_of!(VectorsI32, b) == 16,
[INFO] [stdout]   393       │-    "offset of VectorsI32.b does not match WGSL"
[INFO] [stdout]   394       │-);
[INFO] [stdout]   395       │-const _: () = assert!(
[INFO] [stdout]   396       │-    std::mem::offset_of!(VectorsI32, c) == 32,
[INFO] [stdout]   397       │-    "offset of VectorsI32.c does not match WGSL"
[INFO] [stdout]   398       │-);
[INFO] [stdout]   399       │-#[repr(C)]
[INFO] [stdout]   400       │-#[derive(
[INFO] [stdout]   401       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   402       │-)]
[INFO] [stdout]   403       │-pub struct VectorsU32 {
[INFO] [stdout]   404       │-    pub a: [u32; 2],
[INFO] [stdout]   405       │-    pub b: [u32; 3],
[INFO] [stdout]   406       │-    pub c: [u32; 4],
[INFO] [stdout]   407       │-}
[INFO] [stdout]   408       │-const _: () = assert!(
[INFO] [stdout]   409       │-    std::mem::size_of::<VectorsU32>() == 48,
[INFO] [stdout]   410       │-    "size of VectorsU32 does not match WGSL"
[INFO] [stdout]   411       │-);
[INFO] [stdout]   412       │-const _: () = assert!(
[INFO] [stdout]   413       │-    std::mem::offset_of!(VectorsU32, a) == 0,
[INFO] [stdout]   414       │-    "offset of VectorsU32.a does not match WGSL"
[INFO] [stdout]   415       │-);
[INFO] [stdout]   416       │-const _: () = assert!(
[INFO] [stdout]   417       │-    std::mem::offset_of!(VectorsU32, b) == 16,
[INFO] [stdout]   418       │-    "offset of VectorsU32.b does not match WGSL"
[INFO] [stdout]   419       │-);
[INFO] [stdout]   420       │-const _: () = assert!(
[INFO] [stdout]   421       │-    std::mem::offset_of!(VectorsU32, c) == 32,
[INFO] [stdout]   422       │-    "offset of VectorsU32.c does not match WGSL"
[INFO] [stdout]   423       │-);
[INFO] [stdout]           1 │+pub const ENTRY_MAIN : & str = "main" ; # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn main_entry (targets : [Option < wgpu :: ColorTargetState > ; 0] ,) -> FragmentEntry < 0 > { FragmentEntry { entry_point : ENTRY_MAIN , targets , constants : Default :: default () } } pub const SOURCE : & str = include_str ! ("types.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct Atomics { pub num : u32 , pub numi : i32 } const _ : () = assert ! (std :: mem :: size_of :: < Atomics > () == 8 , "size of Atomics does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Atomics , num) == 0 , "offset of Atomics.num does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Atomics , numi) == 4 , "offset of Atomics.numi does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct MatricesF16 { pub a : [[half :: f16 ; 4] ; 4] , pub b : [[half :: f16 ; 4] ; 3] , pub c : [[half :: f16 ; 4] ; 2] , pub d : [[half :: f16 ; 3] ; 4] , pub e : [[half :: f16 ; 3] ; 3] , pub f : [[half :: f16 ; 3] ; 2] , pub g : [[half :: f16 ; 2] ; 4] , pub h : [[half :: f16 ; 2] ; 3] , pub i : [[half :: f16 ; 2] ; 2] } const _ : () = assert ! (std :: mem :: size_of :: < MatricesF16 > () == 184 , "size of MatricesF16 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , a) == 0 , "offset of MatricesF16.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , b) == 32 , "offset of MatricesF16.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , c) == 64 , "offset of MatricesF16.c does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , d) == 80 , "offset of MatricesF16.d does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , e) == 104 , "offset of MatricesF16.e does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , f) == 128 , "offset of MatricesF16.f does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , g) == 144 , "offset of MatricesF16.g does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , h) == 160 , "offset of MatricesF16.h does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , i) == 176 , "offset of MatricesF16.i does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct MatricesF32 { pub a : [[f32 ; 4] ; 4] , pub b : [[f32 ; 4] ; 3] , pub c : [[f32 ; 4] ; 2] , pub d : [[f32 ; 3] ; 4] , pub e : [[f32 ; 3] ; 3] , pub f : [[f32 ; 3] ; 2] , pub g : [[f32 ; 2] ; 4] , pub h : [[f32 ; 2] ; 3] , pub i : [[f32 ; 2] ; 2] } const _ : () = assert ! (std :: mem :: size_of :: < MatricesF32 > () == 368 , "size of MatricesF32 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , a) == 0 , "offset of MatricesF32.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , b) == 64 , "offset of MatricesF32.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , c) == 128 , "offset of MatricesF32.c does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , d) == 160 , "offset of MatricesF32.d does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , e) == 208 , "offset of MatricesF32.e does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , f) == 256 , "offset of MatricesF32.f does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , g) == 288 , "offset of MatricesF32.g does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , h) == 320 , "offset of MatricesF32.h does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , i) == 352 , "offset of MatricesF32.i does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct MatricesF64 { pub a : [[f64 ; 4] ; 4] , pub b : [[f64 ; 4] ; 3] , pub c : [[f64 ; 4] ; 2] , pub d : [[f64 ; 3] ; 4] , pub e : [[f64 ; 3] ; 3] , pub f : [[f64 ; 3] ; 2] , pub g : [[f64 ; 2] ; 4] , pub h : [[f64 ; 2] ; 3] , pub i : [[f64 ; 2] ; 2] } const _ : () = assert ! (std :: mem :: size_of :: < MatricesF64 > () == 736 , "size of MatricesF64 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , a) == 0 , "offset of MatricesF64.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , b) == 128 , "offset of MatricesF64.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , c) == 256 , "offset of MatricesF64.c does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , d) == 320 , "offset of MatricesF64.d does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , e) == 416 , "offset of MatricesF64.e does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , f) == 512 , "offset of MatricesF64.f does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , g) == 576 , "offset of MatricesF64.g does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , h) == 640 , "offset of MatricesF64.h does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , i) == 704 , "offset of MatricesF64.i does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct Nested { pub a : MatricesF32 , pub b : MatricesF64 } const _ : () = assert ! (std :: mem :: size_of :: < Nested > () == 1120 , "size of Nested does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Nested , a) == 0 , "offset of Nested.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Nested , b) == 384 , "offset of Nested.b does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct Scalars { pub a : u32 , pub b : i32 , pub c : f32 , pub d : half :: f16 } const _ : () = assert ! (std :: mem :: size_of :: < Scalars > () == 16 , "size of Scalars does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Scalars , a) == 0 , "offset of Scalars.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Scalars , b) == 4 , "offset of Scalars.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Scalars , c) == 8 , "offset of Scalars.c does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Scalars , d) == 12 , "offset of Scalars.d does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct StaticArrays { pub a : [u32 ; 5] , pub b : [f32 ; 3] , pub c : [[[f32 ; 4] ; 4] ; 512] } const _ : () = assert ! (std :: mem :: size_of :: < StaticArrays > () == 32800 , "size of StaticArrays does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (StaticArrays , a) == 0 , "offset of StaticArrays.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (StaticArrays , b) == 20 , "offset of StaticArrays.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (StaticArrays , c) == 32 , "offset of StaticArrays.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsF16 { pub a : [half :: f16 ; 2] , pub b : [half :: f16 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsF16 > () == 16 , "size of VectorsF16 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF16 , a) == 0 , "offset of VectorsF16.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF16 , b) == 8 , "offset of VectorsF16.b does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsF32 { pub a : [f32 ; 2] , pub b : [f32 ; 3] , pub c : [f32 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsF32 > () == 48 , "size of VectorsF32 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF32 , a) == 0 , "offset of VectorsF32.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF32 , b) == 16 , "offset of VectorsF32.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF32 , c) == 32 , "offset of VectorsF32.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsF64 { pub a : [f64 ; 2] , pub b : [f64 ; 3] , pub c : [f64 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsF64 > () == 96 , "size of VectorsF64 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF64 , a) == 0 , "offset of VectorsF64.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF64 , b) == 32 , "offset of VectorsF64.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF64 , c) == 64 , "offset of VectorsF64.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsI32 { pub a : [i32 ; 2] , pub b : [i32 ; 3] , pub c : [i32 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsI32 > () == 48 , "size of VectorsI32 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsI32 , a) == 0 , "offset of VectorsI32.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsI32 , b) == 16 , "offset of VectorsI32.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsI32 , c) == 32 , "offset of VectorsI32.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsU32 { pub a : [u32 ; 2] , pub b : [u32 ; 3] , pub c : [u32 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsU32 > () == 48 , "size of VectorsU32 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsU32 , a) == 0 , "offset of VectorsU32.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsU32 , b) == 16 , "offset of VectorsU32.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsU32 , c) == 32 , "offset of VectorsU32.c does not match WGSL") ;
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'structs::tests::write_all_structs_encase_bytemuck' (39) panicked at src/structs.rs:352:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_all_structs_encase_bytemuck.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df71c199 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df71c199 - wgsl_to_wgpu::structs::tests::write_all_structs_encase_bytemuck::{{closure}}::hb702557881b4e47f
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5df2df751caf - insta::settings::Settings::bind::hec97bf7fff45f9f7
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df71bcfe - wgsl_to_wgpu::structs::tests::write_all_structs_encase_bytemuck::hd0e249f1182c9212
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5df2df71bda7 - wgsl_to_wgpu::structs::tests::write_all_structs_encase_bytemuck::{{closure}}::h2bdabf3119b3cf3b
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:337:43
[INFO] [stdout]   25:     0x5df2df7077b6 - core::ops::function::FnOnce::call_once::h2f2ef5841181d119
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- bindgroup::tests::bind_groups_module_compute stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/bind_groups_module_compute.snap
[INFO] [stdout] Snapshot: bind_groups_module_compute
[INFO] [stdout] Source: src/bindgroup.rs:635
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod bind_groups {
[INFO] [stdout]     2       │-    #[derive(Debug)]
[INFO] [stdout]     3       │-    pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     4       │-    #[derive(Debug)]
[INFO] [stdout]     5       │-    pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     6       │-        pub src: wgpu::BufferBinding<'a>,
[INFO] [stdout]     7       │-        pub vertex_weights: wgpu::BufferBinding<'a>,
[INFO] [stdout]     8       │-        pub dst: wgpu::BufferBinding<'a>,
[INFO] [stdout]     9       │-    }
[INFO] [stdout]    10       │-    const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]    11       │-        label: Some("LayoutDescriptor0"),
[INFO] [stdout]    12       │-        entries: &[
[INFO] [stdout]    13       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    14       │-                binding: 0,
[INFO] [stdout]    15       │-                visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]    16       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    17       │-                    ty: wgpu::BufferBindingType::Storage { read_only: true },
[INFO] [stdout]    18       │-                    has_dynamic_offset: false,
[INFO] [stdout]    19       │-                    min_binding_size: None,
[INFO] [stdout]    20       │-                },
[INFO] [stdout]    21       │-                count: None,
[INFO] [stdout]    22       │-            },
[INFO] [stdout]    23       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    24       │-                binding: 1,
[INFO] [stdout]    25       │-                visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]    26       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    27       │-                    ty: wgpu::BufferBindingType::Storage { read_only: true },
[INFO] [stdout]    28       │-                    has_dynamic_offset: false,
[INFO] [stdout]    29       │-                    min_binding_size: None,
[INFO] [stdout]    30       │-                },
[INFO] [stdout]    31       │-                count: None,
[INFO] [stdout]    32       │-            },
[INFO] [stdout]    33       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    34       │-                binding: 2,
[INFO] [stdout]    35       │-                visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]    36       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    37       │-                    ty: wgpu::BufferBindingType::Storage { read_only: false },
[INFO] [stdout]    38       │-                    has_dynamic_offset: false,
[INFO] [stdout]    39       │-                    min_binding_size: None,
[INFO] [stdout]    40       │-                },
[INFO] [stdout]    41       │-                count: None,
[INFO] [stdout]    42       │-            },
[INFO] [stdout]    43       │-        ],
[INFO] [stdout]    44       │-    };
[INFO] [stdout]    45       │-    impl BindGroup0 {
[INFO] [stdout]    46       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    47       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]    48       │-        }
[INFO] [stdout]    49       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]    50       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]    51       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]    52       │-                layout: &bind_group_layout,
[INFO] [stdout]    53       │-                entries: &[
[INFO] [stdout]    54       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]    55       │-                        binding: 0,
[INFO] [stdout]    56       │-                        resource: wgpu::BindingResource::Buffer(bindings.src),
[INFO] [stdout]    57       │-                    },
[INFO] [stdout]    58       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]    59       │-                        binding: 1,
[INFO] [stdout]    60       │-                        resource: wgpu::BindingResource::Buffer(bindings.vertex_weights),
[INFO] [stdout]    61       │-                    },
[INFO] [stdout]    62       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]    63       │-                        binding: 2,
[INFO] [stdout]    64       │-                        resource: wgpu::BindingResource::Buffer(bindings.dst),
[INFO] [stdout]    65       │-                    },
[INFO] [stdout]    66       │-                ],
[INFO] [stdout]    67       │-                label: Some("BindGroup0"),
[INFO] [stdout]    68       │-            });
[INFO] [stdout]    69       │-            Self(bind_group)
[INFO] [stdout]    70       │-        }
[INFO] [stdout]    71       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    72       │-            pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]    73       │-        }
[INFO] [stdout]    74       │-    }
[INFO] [stdout]    75       │-    #[derive(Debug)]
[INFO] [stdout]    76       │-    pub struct BindGroup1(wgpu::BindGroup);
[INFO] [stdout]    77       │-    #[derive(Debug)]
[INFO] [stdout]    78       │-    pub struct BindGroupLayout1<'a> {
[INFO] [stdout]    79       │-        pub transforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]    80       │-    }
[INFO] [stdout]    81       │-    const LAYOUT_DESCRIPTOR1: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]    82       │-        label: Some("LayoutDescriptor1"),
[INFO] [stdout]    83       │-        entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    84       │-            binding: 0,
[INFO] [stdout]    85       │-            visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]    86       │-            ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    87       │-                ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]    88       │-                has_dynamic_offset: false,
[INFO] [stdout]    89       │-                min_binding_size: None,
[INFO] [stdout]    90       │-            },
[INFO] [stdout]    91       │-            count: None,
[INFO] [stdout]    92       │-        }],
[INFO] [stdout]    93       │-    };
[INFO] [stdout]    94       │-    impl BindGroup1 {
[INFO] [stdout]    95       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    96       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR1)
[INFO] [stdout]    97       │-        }
[INFO] [stdout]    98       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout1) -> Self {
[INFO] [stdout]    99       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR1);
[INFO] [stdout]   100       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]   101       │-                layout: &bind_group_layout,
[INFO] [stdout]   102       │-                entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]   103       │-                    binding: 0,
[INFO] [stdout]   104       │-                    resource: wgpu::BindingResource::Buffer(bindings.transforms),
[INFO] [stdout]   105       │-                }],
[INFO] [stdout]   106       │-                label: Some("BindGroup1"),
[INFO] [stdout]   107       │-            });
[INFO] [stdout]   108       │-            Self(bind_group)
[INFO] [stdout]   109       │-        }
[INFO] [stdout]   110       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   111       │-            pass.set_bind_group(1, &self.0, &[]);
[INFO] [stdout]   112       │-        }
[INFO] [stdout]   113       │-    }
[INFO] [stdout]   114       │-    #[derive(Debug)]
[INFO] [stdout]   115       │-    pub struct BindGroup2(wgpu::BindGroup);
[INFO] [stdout]   116       │-    #[derive(Debug)]
[INFO] [stdout]   117       │-    pub struct BindGroupLayout2<'a> {
[INFO] [stdout]   118       │-        pub atomics1: wgpu::BufferBinding<'a>,
[INFO] [stdout]   119       │-        pub atomics2: wgpu::BufferBinding<'a>,
[INFO] [stdout]   120       │-        pub atomics3: wgpu::BufferBinding<'a>,
[INFO] [stdout]   121       │-    }
[INFO] [stdout]   122       │-    const LAYOUT_DESCRIPTOR2: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]   123       │-        label: Some("LayoutDescriptor2"),
[INFO] [stdout]   124       │-        entries: &[
[INFO] [stdout]   125       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   126       │-                binding: 0,
[INFO] [stdout]   127       │-                visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]   128       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   129       │-                    ty: wgpu::BufferBindingType::Storage { read_only: false },
[INFO] [stdout]   130       │-                    has_dynamic_offset: false,
[INFO] [stdout]   131       │-                    min_binding_size: None,
[INFO] [stdout]   132       │-                },
[INFO] [stdout]   133       │-                count: None,
[INFO] [stdout]   134       │-            },
[INFO] [stdout]   135       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   136       │-                binding: 1,
[INFO] [stdout]   137       │-                visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]   138       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   139       │-                    ty: wgpu::BufferBindingType::Storage { read_only: false },
[INFO] [stdout]   140       │-                    has_dynamic_offset: false,
[INFO] [stdout]   141       │-                    min_binding_size: None,
[INFO] [stdout]   142       │-                },
[INFO] [stdout]   143       │-                count: None,
[INFO] [stdout]   144       │-            },
[INFO] [stdout]   145       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   146       │-                binding: 2,
[INFO] [stdout]   147       │-                visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]   148       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   149       │-                    ty: wgpu::BufferBindingType::Storage { read_only: false },
[INFO] [stdout]   150       │-                    has_dynamic_offset: false,
[INFO] [stdout]   151       │-                    min_binding_size: None,
[INFO] [stdout]   152       │-                },
[INFO] [stdout]   153       │-                count: None,
[INFO] [stdout]   154       │-            },
[INFO] [stdout]   155       │-        ],
[INFO] [stdout]   156       │-    };
[INFO] [stdout]   157       │-    impl BindGroup2 {
[INFO] [stdout]   158       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]   159       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR2)
[INFO] [stdout]   160       │-        }
[INFO] [stdout]   161       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout2) -> Self {
[INFO] [stdout]   162       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR2);
[INFO] [stdout]   163       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]   164       │-                layout: &bind_group_layout,
[INFO] [stdout]   165       │-                entries: &[
[INFO] [stdout]   166       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   167       │-                        binding: 0,
[INFO] [stdout]   168       │-                        resource: wgpu::BindingResource::Buffer(bindings.atomics1),
[INFO] [stdout]   169       │-                    },
[INFO] [stdout]   170       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   171       │-                        binding: 1,
[INFO] [stdout]   172       │-                        resource: wgpu::BindingResource::Buffer(bindings.atomics2),
[INFO] [stdout]   173       │-                    },
[INFO] [stdout]   174       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   175       │-                        binding: 2,
[INFO] [stdout]   176       │-                        resource: wgpu::BindingResource::Buffer(bindings.atomics3),
[INFO] [stdout]   177       │-                    },
[INFO] [stdout]   178       │-                ],
[INFO] [stdout]   179       │-                label: Some("BindGroup2"),
[INFO] [stdout]   180       │-            });
[INFO] [stdout]   181       │-            Self(bind_group)
[INFO] [stdout]   182       │-        }
[INFO] [stdout]   183       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   184       │-            pass.set_bind_group(2, &self.0, &[]);
[INFO] [stdout]   185       │-        }
[INFO] [stdout]   186       │-    }
[INFO] [stdout]   187       │-    #[derive(Debug, Copy, Clone)]
[INFO] [stdout]   188       │-    pub struct BindGroups<'a> {
[INFO] [stdout]   189       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]   190       │-        pub bind_group1: &'a BindGroup1,
[INFO] [stdout]   191       │-        pub bind_group2: &'a BindGroup2,
[INFO] [stdout]   192       │-    }
[INFO] [stdout]   193       │-    impl BindGroups<'_> {
[INFO] [stdout]   194       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   195       │-            self.bind_group0.set(pass);
[INFO] [stdout]   196       │-            self.bind_group1.set(pass);
[INFO] [stdout]   197       │-            self.bind_group2.set(pass);
[INFO] [stdout]   198       │-        }
[INFO] [stdout]   199       │-    }
[INFO] [stdout]   200       │-    pub trait SetBindGroup {
[INFO] [stdout]   201       │-        fn set_bind_group(
[INFO] [stdout]   202       │-            &mut self,
[INFO] [stdout]   203       │-            index: u32,
[INFO] [stdout]   204       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   205       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   206       │-        );
[INFO] [stdout]   207       │-    }
[INFO] [stdout]   208       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]   209       │-        fn set_bind_group(
[INFO] [stdout]   210       │-            &mut self,
[INFO] [stdout]   211       │-            index: u32,
[INFO] [stdout]   212       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   213       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   214       │-        ) {
[INFO] [stdout]   215       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   216       │-        }
[INFO] [stdout]   217       │-    }
[INFO] [stdout]   218       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]   219       │-        fn set_bind_group(
[INFO] [stdout]   220       │-            &mut self,
[INFO] [stdout]   221       │-            index: u32,
[INFO] [stdout]   222       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   223       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   224       │-        ) {
[INFO] [stdout]   225       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   226       │-        }
[INFO] [stdout]   227       │-    }
[INFO] [stdout]   228       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]   229       │-        fn set_bind_group(
[INFO] [stdout]   230       │-            &mut self,
[INFO] [stdout]   231       │-            index: u32,
[INFO] [stdout]   232       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   233       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   234       │-        ) {
[INFO] [stdout]   235       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   236       │-        }
[INFO] [stdout]   237       │-    }
[INFO] [stdout]   238       │-}
[INFO] [stdout]   239       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]   240       │-    pass: &mut P,
[INFO] [stdout]   241       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]   242       │-    bind_group1: &bind_groups::BindGroup1,
[INFO] [stdout]   243       │-    bind_group2: &bind_groups::BindGroup2,
[INFO] [stdout]   244       │-) {
[INFO] [stdout]   245       │-    bind_group0.set(pass);
[INFO] [stdout]   246       │-    bind_group1.set(pass);
[INFO] [stdout]   247       │-    bind_group2.set(pass);
[INFO] [stdout]   248       │-}
[INFO] [stdout]           1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub src : wgpu :: BufferBinding < 'a > , pub vertex_weights : wgpu :: BufferBinding < 'a > , pub dst : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : true } , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 1 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : true } , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 2 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : false } , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . src) , } , wgpu :: BindGroupEntry { binding : 1 , resource : wgpu :: BindingResource :: Buffer (bindings . vertex_weights) , } , wgpu :: BindGroupEntry { binding : 2 , resource : wgpu :: BindingResource :: Buffer (bindings . dst) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug)] pub struct BindGroup1 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout1 < 'a > { pub transforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR1 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor1") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup1 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR1) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout1) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR1) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . transforms) , }] , label : Some ("BindGroup1") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (1 , & self . 0 , & []) ; } } # [derive (Debug)] pub struct BindGroup2 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout2 < 'a > { pub atomics1 : wgpu :: BufferBinding < 'a > , pub atomics2 : wgpu :: BufferBinding < 'a > , pub atomics3 : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR2 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor2") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : false } , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 1 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : false } , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 2 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : false } , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup2 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR2) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout2) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR2) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . atomics1) , } , wgpu :: BindGroupEntry { binding : 1 , resource : wgpu :: BindingResource :: Buffer (bindings . atomics2) , } , wgpu :: BindGroupEntry { binding : 2 , resource : wgpu :: BindingResource :: Buffer (bindings . atomics3) , }] , label : Some ("BindGroup2") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (2 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 , pub bind_group1 : & 'a BindGroup1 , pub bind_group2 : & 'a BindGroup2 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; self . bind_group1 . set (pass) ; self . bind_group2 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0 , bind_group1 : & bind_groups :: BindGroup1 , bind_group2 : & bind_groups :: BindGroup2) { bind_group0 . set (pass) ; bind_group1 . set (pass) ; bind_group2 . set (pass) ; }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'bindgroup::tests::bind_groups_module_compute' (28) panicked at src/bindgroup.rs:635:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/bind_groups_module_compute.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df76676d - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df76676d - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_compute::{{closure}}::h993fbc5efd38808f
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5df2df7514a4 - insta::settings::Settings::bind::h9008b9e972d06b7f
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df76627b - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_compute::h538894a4584a7cb9
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5df2df766867 - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_compute::{{closure}}::hbecc8356581697b9
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bindgroup.rs:634:36
[INFO] [stdout]   25:     0x5df2df708326 - core::ops::function::FnOnce::call_once::hfca931bda101fd92
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::add_duplicate_module_different_paths stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/add_duplicate_module_different_paths.snap
[INFO] [stdout] Snapshot: add_duplicate_module_different_paths
[INFO] [stdout] Source: src/lib.rs:1127
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod shader1 {
[INFO] [stdout]     2       │-    pub mod bind_groups {
[INFO] [stdout]     3       │-        #[derive(Debug)]
[INFO] [stdout]     4       │-        pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     5       │-        #[derive(Debug)]
[INFO] [stdout]     6       │-        pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     7       │-            pub uniforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]     8       │-        }
[INFO] [stdout]     9       │-        const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor =
[INFO] [stdout]    10       │-            wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]    11       │-                label: Some("LayoutDescriptor0"),
[INFO] [stdout]    12       │-                entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    13       │-                    binding: 0,
[INFO] [stdout]    14       │-                    visibility: wgpu::ShaderStages::FRAGMENT,
[INFO] [stdout]    15       │-                    ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    16       │-                        ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]    17       │-                        has_dynamic_offset: false,
[INFO] [stdout]    18       │-                        min_binding_size: None,
[INFO] [stdout]    19       │-                    },
[INFO] [stdout]    20       │-                    count: None,
[INFO] [stdout]    21       │-                }],
[INFO] [stdout]    22       │-            };
[INFO] [stdout]    23       │-        impl BindGroup0 {
[INFO] [stdout]    24       │-            pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    25       │-                device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]    26       │-            }
[INFO] [stdout]    27       │-            pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]    28       │-                let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]    29       │-                let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]    30       │-                    layout: &bind_group_layout,
[INFO] [stdout]    31       │-                    entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]    32       │-                        binding: 0,
[INFO] [stdout]    33       │-                        resource: wgpu::BindingResource::Buffer(bindings.uniforms),
[INFO] [stdout]    34       │-                    }],
[INFO] [stdout]    35       │-                    label: Some("BindGroup0"),
[INFO] [stdout]    36       │-                });
[INFO] [stdout]    37       │-                Self(bind_group)
[INFO] [stdout]    38       │-            }
[INFO] [stdout]    39       │-            pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    40       │-                pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]    41       │-            }
[INFO] [stdout]    42       │-        }
[INFO] [stdout]    43       │-        #[derive(Debug, Copy, Clone)]
[INFO] [stdout]    44       │-        pub struct BindGroups<'a> {
[INFO] [stdout]    45       │-            pub bind_group0: &'a BindGroup0,
[INFO] [stdout]    46       │-        }
[INFO] [stdout]    47       │-        impl BindGroups<'_> {
[INFO] [stdout]    48       │-            pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    49       │-                self.bind_group0.set(pass);
[INFO] [stdout]    50       │-            }
[INFO] [stdout]    51       │-        }
[INFO] [stdout]    52       │-        pub trait SetBindGroup {
[INFO] [stdout]    53       │-            fn set_bind_group(
[INFO] [stdout]    54       │-                &mut self,
[INFO] [stdout]    55       │-                index: u32,
[INFO] [stdout]    56       │-                bind_group: &wgpu::BindGroup,
[INFO] [stdout]    57       │-                offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    58       │-            );
[INFO] [stdout]    59       │-        }
[INFO] [stdout]    60       │-        impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]    61       │-            fn set_bind_group(
[INFO] [stdout]    62       │-                &mut self,
[INFO] [stdout]    63       │-                index: u32,
[INFO] [stdout]    64       │-                bind_group: &wgpu::BindGroup,
[INFO] [stdout]    65       │-                offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    66       │-            ) {
[INFO] [stdout]    67       │-                self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    68       │-            }
[INFO] [stdout]    69       │-        }
[INFO] [stdout]    70       │-        impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]    71       │-            fn set_bind_group(
[INFO] [stdout]    72       │-                &mut self,
[INFO] [stdout]    73       │-                index: u32,
[INFO] [stdout]    74       │-                bind_group: &wgpu::BindGroup,
[INFO] [stdout]    75       │-                offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    76       │-            ) {
[INFO] [stdout]    77       │-                self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    78       │-            }
[INFO] [stdout]    79       │-        }
[INFO] [stdout]    80       │-        impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]    81       │-            fn set_bind_group(
[INFO] [stdout]    82       │-                &mut self,
[INFO] [stdout]    83       │-                index: u32,
[INFO] [stdout]    84       │-                bind_group: &wgpu::BindGroup,
[INFO] [stdout]    85       │-                offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    86       │-            ) {
[INFO] [stdout]    87       │-                self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    88       │-            }
[INFO] [stdout]    89       │-        }
[INFO] [stdout]    90       │-    }
[INFO] [stdout]    91       │-    pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]    92       │-        pass: &mut P,
[INFO] [stdout]    93       │-        bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]    94       │-    ) {
[INFO] [stdout]    95       │-        bind_group0.set(pass);
[INFO] [stdout]    96       │-    }
[INFO] [stdout]    97       │-    pub const ENTRY_VERT: &str = "vert";
[INFO] [stdout]    98       │-    pub const ENTRY_FRAG: &str = "frag";
[INFO] [stdout]    99       │-    #[derive(Debug)]
[INFO] [stdout]   100       │-    pub struct VertexEntry<const N: usize> {
[INFO] [stdout]   101       │-        pub entry_point: &'static str,
[INFO] [stdout]   102       │-        pub buffers: [wgpu::VertexBufferLayout<'static>; N],
[INFO] [stdout]   103       │-        pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   104       │-    }
[INFO] [stdout]   105       │-    pub fn vertex_state<'a, const N: usize>(
[INFO] [stdout]   106       │-        module: &'a wgpu::ShaderModule,
[INFO] [stdout]   107       │-        entry: &'a VertexEntry<N>,
[INFO] [stdout]   108       │-    ) -> wgpu::VertexState<'a> {
[INFO] [stdout]   109       │-        wgpu::VertexState {
[INFO] [stdout]   110       │-            module,
[INFO] [stdout]   111       │-            entry_point: Some(entry.entry_point),
[INFO] [stdout]   112       │-            buffers: &entry.buffers,
[INFO] [stdout]   113       │-            compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   114       │-                constants: &entry.constants,
[INFO] [stdout]   115       │-                ..Default::default()
[INFO] [stdout]   116       │-            },
[INFO] [stdout]   117       │-        }
[INFO] [stdout]   118       │-    }
[INFO] [stdout]   119       │-    pub fn vert_entry(vertex_input: wgpu::VertexStepMode) -> VertexEntry<1> {
[INFO] [stdout]   120       │-        VertexEntry {
[INFO] [stdout]   121       │-            entry_point: ENTRY_VERT,
[INFO] [stdout]   122       │-            buffers: [VertexInput::vertex_buffer_layout(vertex_input)],
[INFO] [stdout]   123       │-            constants: Default::default(),
[INFO] [stdout]   124       │-        }
[INFO] [stdout]   125       │-    }
[INFO] [stdout]   126       │-    #[derive(Debug)]
[INFO] [stdout]   127       │-    pub struct FragmentEntry<const N: usize> {
[INFO] [stdout]   128       │-        pub entry_point: &'static str,
[INFO] [stdout]   129       │-        pub targets: [Option<wgpu::ColorTargetState>; N],
[INFO] [stdout]   130       │-        pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   131       │-    }
[INFO] [stdout]   132       │-    pub fn fragment_state<'a, const N: usize>(
[INFO] [stdout]   133       │-        module: &'a wgpu::ShaderModule,
[INFO] [stdout]   134       │-        entry: &'a FragmentEntry<N>,
[INFO] [stdout]   135       │-    ) -> wgpu::FragmentState<'a> {
[INFO] [stdout]   136       │-        wgpu::FragmentState {
[INFO] [stdout]   137       │-            module,
[INFO] [stdout]   138       │-            entry_point: Some(entry.entry_point),
[INFO] [stdout]   139       │-            targets: &entry.targets,
[INFO] [stdout]   140       │-            compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   141       │-                constants: &entry.constants,
[INFO] [stdout]   142       │-                ..Default::default()
[INFO] [stdout]   143       │-            },
[INFO] [stdout]   144       │-        }
[INFO] [stdout]   145       │-    }
[INFO] [stdout]   146       │-    pub fn frag_entry(targets: [Option<wgpu::ColorTargetState>; 1]) -> FragmentEntry<1> {
[INFO] [stdout]   147       │-        FragmentEntry {
[INFO] [stdout]   148       │-            entry_point: ENTRY_FRAG,
[INFO] [stdout]   149       │-            targets,
[INFO] [stdout]   150       │-            constants: Default::default(),
[INFO] [stdout]   151       │-        }
[INFO] [stdout]   152       │-    }
[INFO] [stdout]   153       │-    pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ;
[INFO] [stdout]   154       │-    pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]   155       │-        let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]   156       │-        device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]   157       │-            label: None,
[INFO] [stdout]   158       │-            source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]   159       │-        })
[INFO] [stdout]   160       │-    }
[INFO] [stdout]   161       │-    pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]   162       │-        device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]   163       │-            label: None,
[INFO] [stdout]   164       │-            bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)],
[INFO] [stdout]   165       │-            immediate_size: 0,
[INFO] [stdout]   166       │-        })
[INFO] [stdout]   167       │-    }
[INFO] [stdout]   168       │-    #[repr(C)]
[INFO] [stdout]   169       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   170       │-    pub struct Root {
[INFO] [stdout]   171       │-        pub c: [f32; 4],
[INFO] [stdout]   172       │-    }
[INFO] [stdout]   173       │-}
[INFO] [stdout]   174       │-pub mod shaders {
[INFO] [stdout]   175       │-    pub mod shader2 {
[INFO] [stdout]   176       │-        pub mod bind_groups {
[INFO] [stdout]   177       │-            #[derive(Debug)]
[INFO] [stdout]   178       │-            pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]   179       │-            #[derive(Debug)]
[INFO] [stdout]   180       │-            pub struct BindGroupLayout0<'a> {
[INFO] [stdout]   181       │-                pub uniforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]   182       │-            }
[INFO] [stdout]   183       │-            const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor =
[INFO] [stdout]   184       │-                wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]   185       │-                    label: Some("LayoutDescriptor0"),
[INFO] [stdout]   186       │-                    entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   187       │-                        binding: 0,
[INFO] [stdout]   188       │-                        visibility: wgpu::ShaderStages::FRAGMENT,
[INFO] [stdout]   189       │-                        ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   190       │-                            ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   191       │-                            has_dynamic_offset: false,
[INFO] [stdout]   192       │-                            min_binding_size: None,
[INFO] [stdout]   193       │-                        },
[INFO] [stdout]   194       │-                        count: None,
[INFO] [stdout]   195       │-                    }],
[INFO] [stdout]   196       │-                };
[INFO] [stdout]   197       │-            impl BindGroup0 {
[INFO] [stdout]   198       │-                pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]   199       │-                    device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]   200       │-                }
[INFO] [stdout]   201       │-                pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]   202       │-                    let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]   203       │-                    let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]   204       │-                        layout: &bind_group_layout,
[INFO] [stdout]   205       │-                        entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]   206       │-                            binding: 0,
[INFO] [stdout]   207       │-                            resource: wgpu::BindingResource::Buffer(bindings.uniforms),
[INFO] [stdout]   208       │-                        }],
[INFO] [stdout]   209       │-                        label: Some("BindGroup0"),
[INFO] [stdout]   210       │-                    });
[INFO] [stdout]   211       │-                    Self(bind_group)
[INFO] [stdout]   212       │-                }
[INFO] [stdout]   213       │-                pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   214       │-                    pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]   215       │-                }
[INFO] [stdout]   216       │-            }
[INFO] [stdout]   217       │-            #[derive(Debug, Copy, Clone)]
[INFO] [stdout]   218       │-            pub struct BindGroups<'a> {
[INFO] [stdout]   219       │-                pub bind_group0: &'a BindGroup0,
[INFO] [stdout]   220       │-            }
[INFO] [stdout]   221       │-            impl BindGroups<'_> {
[INFO] [stdout]   222       │-                pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   223       │-                    self.bind_group0.set(pass);
[INFO] [stdout]   224       │-                }
[INFO] [stdout]   225       │-            }
[INFO] [stdout]   226       │-            pub trait SetBindGroup {
[INFO] [stdout]   227       │-                fn set_bind_group(
[INFO] [stdout]   228       │-                    &mut self,
[INFO] [stdout]   229       │-                    index: u32,
[INFO] [stdout]   230       │-                    bind_group: &wgpu::BindGroup,
[INFO] [stdout]   231       │-                    offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   232       │-                );
[INFO] [stdout]   233       │-            }
[INFO] [stdout]   234       │-            impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]   235       │-                fn set_bind_group(
[INFO] [stdout]   236       │-                    &mut self,
[INFO] [stdout]   237       │-                    index: u32,
[INFO] [stdout]   238       │-                    bind_group: &wgpu::BindGroup,
[INFO] [stdout]   239       │-                    offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   240       │-                ) {
[INFO] [stdout]   241       │-                    self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   242       │-                }
[INFO] [stdout]   243       │-            }
[INFO] [stdout]   244       │-            impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]   245       │-                fn set_bind_group(
[INFO] [stdout]   246       │-                    &mut self,
[INFO] [stdout]   247       │-                    index: u32,
[INFO] [stdout]   248       │-                    bind_group: &wgpu::BindGroup,
[INFO] [stdout]   249       │-                    offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   250       │-                ) {
[INFO] [stdout]   251       │-                    self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   252       │-                }
[INFO] [stdout]   253       │-            }
[INFO] [stdout]   254       │-            impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]   255       │-                fn set_bind_group(
[INFO] [stdout]   256       │-                    &mut self,
[INFO] [stdout]   257       │-                    index: u32,
[INFO] [stdout]   258       │-                    bind_group: &wgpu::BindGroup,
[INFO] [stdout]   259       │-                    offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   260       │-                ) {
[INFO] [stdout]   261       │-                    self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   262       │-                }
[INFO] [stdout]   263       │-            }
[INFO] [stdout]   264       │-        }
[INFO] [stdout]   265       │-        pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]   266       │-            pass: &mut P,
[INFO] [stdout]   267       │-            bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]   268       │-        ) {
[INFO] [stdout]   269       │-            bind_group0.set(pass);
[INFO] [stdout]   270       │-        }
[INFO] [stdout]   271       │-        pub const ENTRY_VERT: &str = "vert";
[INFO] [stdout]   272       │-        pub const ENTRY_FRAG: &str = "frag";
[INFO] [stdout]   273       │-        #[derive(Debug)]
[INFO] [stdout]   274       │-        pub struct VertexEntry<const N: usize> {
[INFO] [stdout]   275       │-            pub entry_point: &'static str,
[INFO] [stdout]   276       │-            pub buffers: [wgpu::VertexBufferLayout<'static>; N],
[INFO] [stdout]   277       │-            pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   278       │-        }
[INFO] [stdout]   279       │-        pub fn vertex_state<'a, const N: usize>(
[INFO] [stdout]   280       │-            module: &'a wgpu::ShaderModule,
[INFO] [stdout]   281       │-            entry: &'a VertexEntry<N>,
[INFO] [stdout]   282       │-        ) -> wgpu::VertexState<'a> {
[INFO] [stdout]   283       │-            wgpu::VertexState {
[INFO] [stdout]   284       │-                module,
[INFO] [stdout]   285       │-                entry_point: Some(entry.entry_point),
[INFO] [stdout]   286       │-                buffers: &entry.buffers,
[INFO] [stdout]   287       │-                compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   288       │-                    constants: &entry.constants,
[INFO] [stdout]   289       │-                    ..Default::default()
[INFO] [stdout]   290       │-                },
[INFO] [stdout]   291       │-            }
[INFO] [stdout]   292       │-        }
[INFO] [stdout]   293       │-        pub fn vert_entry(vertex_input: wgpu::VertexStepMode) -> VertexEntry<1> {
[INFO] [stdout]   294       │-            VertexEntry {
[INFO] [stdout]   295       │-                entry_point: ENTRY_VERT,
[INFO] [stdout]   296       │-                buffers: [VertexInput::vertex_buffer_layout(vertex_input)],
[INFO] [stdout]   297       │-                constants: Default::default(),
[INFO] [stdout]   298       │-            }
[INFO] [stdout]   299       │-        }
[INFO] [stdout]   300       │-        #[derive(Debug)]
[INFO] [stdout]   301       │-        pub struct FragmentEntry<const N: usize> {
[INFO] [stdout]   302       │-            pub entry_point: &'static str,
[INFO] [stdout]   303       │-            pub targets: [Option<wgpu::ColorTargetState>; N],
[INFO] [stdout]   304       │-            pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   305       │-        }
[INFO] [stdout]   306       │-        pub fn fragment_state<'a, const N: usize>(
[INFO] [stdout]   307       │-            module: &'a wgpu::ShaderModule,
[INFO] [stdout]   308       │-            entry: &'a FragmentEntry<N>,
[INFO] [stdout]   309       │-        ) -> wgpu::FragmentState<'a> {
[INFO] [stdout]   310       │-            wgpu::FragmentState {
[INFO] [stdout]   311       │-                module,
[INFO] [stdout]   312       │-                entry_point: Some(entry.entry_point),
[INFO] [stdout]   313       │-                targets: &entry.targets,
[INFO] [stdout]   314       │-                compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   315       │-                    constants: &entry.constants,
[INFO] [stdout]   316       │-                    ..Default::default()
[INFO] [stdout]   317       │-                },
[INFO] [stdout]   318       │-            }
[INFO] [stdout]   319       │-        }
[INFO] [stdout]   320       │-        pub fn frag_entry(targets: [Option<wgpu::ColorTargetState>; 1]) -> FragmentEntry<1> {
[INFO] [stdout]   321       │-            FragmentEntry {
[INFO] [stdout]   322       │-                entry_point: ENTRY_FRAG,
[INFO] [stdout]   323       │-                targets,
[INFO] [stdout]   324       │-                constants: Default::default(),
[INFO] [stdout]   325       │-            }
[INFO] [stdout]   326       │-        }
[INFO] [stdout]   327       │-        pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ;
[INFO] [stdout]   328       │-        pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]   329       │-            let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]   330       │-            device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]   331       │-                label: None,
[INFO] [stdout]   332       │-                source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]   333       │-            })
[INFO] [stdout]   334       │-        }
[INFO] [stdout]   335       │-        pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]   336       │-            device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]   337       │-                label: None,
[INFO] [stdout]   338       │-                bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)],
[INFO] [stdout]   339       │-                immediate_size: 0,
[INFO] [stdout]   340       │-            })
[INFO] [stdout]   341       │-        }
[INFO] [stdout]   342       │-        #[repr(C)]
[INFO] [stdout]   343       │-        #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   344       │-        pub struct Root {
[INFO] [stdout]   345       │-            pub c: [f32; 4],
[INFO] [stdout]   346       │-        }
[INFO] [stdout]   347       │-    }
[INFO] [stdout]   348       │-}
[INFO] [stdout]   349       │-pub mod shared {
[INFO] [stdout]   350       │-    #[repr(C)]
[INFO] [stdout]   351       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   352       │-    pub struct Shared {
[INFO] [stdout]   353       │-        pub d: [f32; 4],
[INFO] [stdout]   354       │-    }
[INFO] [stdout]   355       │-    pub const TEST: f32 = 1f32;
[INFO] [stdout]   356       │-    #[repr(C)]
[INFO] [stdout]   357       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   358       │-    pub struct VertexInput {
[INFO] [stdout]   359       │-        pub position: [f32; 3],
[INFO] [stdout]   360       │-    }
[INFO] [stdout]   361       │-    impl VertexInput {
[INFO] [stdout]   362       │-        pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 1] = [wgpu::VertexAttribute {
[INFO] [stdout]   363       │-            format: wgpu::VertexFormat::Float32x3,
[INFO] [stdout]   364       │-            offset: std::mem::offset_of!(VertexInput, position) as u64,
[INFO] [stdout]   365       │-            shader_location: 0,
[INFO] [stdout]   366       │-        }];
[INFO] [stdout]   367       │-        pub const fn vertex_buffer_layout(
[INFO] [stdout]   368       │-            step_mode: wgpu::VertexStepMode,
[INFO] [stdout]   369       │-        ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]   370       │-            wgpu::VertexBufferLayout {
[INFO] [stdout]   371       │-                array_stride: std::mem::size_of::<VertexInput>() as u64,
[INFO] [stdout]   372       │-                step_mode,
[INFO] [stdout]   373       │-                attributes: &VertexInput::VERTEX_ATTRIBUTES,
[INFO] [stdout]   374       │-            }
[INFO] [stdout]   375       │-        }
[INFO] [stdout]   376       │-    }
[INFO] [stdout]   377       │-}
[INFO] [stdout]   378       │-pub mod uniforms {
[INFO] [stdout]   379       │-    #[repr(C)]
[INFO] [stdout]   380       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   381       │-    pub struct Uniforms {
[INFO] [stdout]   382       │-        pub a: [f32; 4],
[INFO] [stdout]   383       │-        pub b: nested::Nested,
[INFO] [stdout]   384       │-    }
[INFO] [stdout]   385       │-    pub mod nested {
[INFO] [stdout]   386       │-        #[repr(C)]
[INFO] [stdout]   387       │-        #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   388       │-        pub struct Nested {
[INFO] [stdout]   389       │-            pub a: [f32; 4],
[INFO] [stdout]   390       │-            pub b: super::super::Root,
[INFO] [stdout]   391       │-            pub c: super::super::shared::Shared,
[INFO] [stdout]   392       │-        }
[INFO] [stdout]   393       │-    }
[INFO] [stdout]   394       │-}
[INFO] [stdout]           1 │+pub mod shader1 { pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub uniforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . uniforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; } pub const ENTRY_VERT : & str = "vert" ; pub const ENTRY_FRAG : & str = "frag" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn vert_entry (vertex_input : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_VERT , buffers : [VertexInput :: vertex_buffer_layout (vertex_input)] , constants : Default :: default () } } # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn frag_entry (targets : [Option < wgpu :: ColorTargetState > ; 1] ,) -> FragmentEntry < 1 > { FragmentEntry { entry_point : ENTRY_FRAG , targets , constants : Default :: default () } } pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Root { pub c : [f32 ; 4] } } pub mod shaders { pub mod shader2 { pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub uniforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . uniforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; } pub const ENTRY_VERT : & str = "vert" ; pub const ENTRY_FRAG : & str = "frag" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn vert_entry (vertex_input : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_VERT , buffers : [VertexInput :: vertex_buffer_layout (vertex_input)] , constants : Default :: default () } } # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn frag_entry (targets : [Option < wgpu :: ColorTargetState > ; 1] ,) -> FragmentEntry < 1 > { FragmentEntry { entry_point : ENTRY_FRAG , targets , constants : Default :: default () } } pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Root { pub c : [f32 ; 4] } } } pub mod shared { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Shared { pub d : [f32 ; 4] } pub const TEST : f32 = 1f32 ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct VertexInput { pub position : [f32 ; 3] } impl VertexInput { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 1] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x3 , offset : std :: mem :: offset_of ! (VertexInput , position) as u64 , shader_location : 0 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput > () as u64 , step_mode , attributes : & VertexInput :: VERTEX_ATTRIBUTES } } } } pub mod uniforms { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Uniforms { pub a : [f32 ; 4] , pub b : nested :: Nested } pub mod nested { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Nested { pub a : [f32 ; 4] , pub b : super :: super :: Root , pub c : super :: super :: shared :: Shared } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::add_duplicate_module_different_paths' (318) panicked at src/lib.rs:1127:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/add_duplicate_module_different_paths.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df75fb89 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df75fb89 - wgsl_to_wgpu::test::add_duplicate_module_different_paths::{{closure}}::ha3023fbba3856657
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5df2df750c0f - insta::settings::Settings::bind::h065d5ca9b4c277b7
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df75f70f - wgsl_to_wgpu::test::add_duplicate_module_different_paths::h248a2a206ba279ee
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5df2df75fc77 - wgsl_to_wgpu::test::add_duplicate_module_different_paths::{{closure}}::hc1714de3c549228f
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1098:46
[INFO] [stdout]   25:     0x5df2df707fb6 - core::ops::function::FnOnce::call_once::hcf56c11ad5a702ea
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- structs::tests::write_all_structs_bytemuck_input_layout_validation stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_all_structs_bytemuck_input_layout_validation.snap
[INFO] [stdout] Snapshot: write_all_structs_bytemuck_input_layout_validation
[INFO] [stdout] Source: src/structs.rs:538
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub const ENTRY_MAIN: &str = "main";
[INFO] [stdout]     2       │-#[derive(Debug)]
[INFO] [stdout]     3       │-pub struct VertexEntry<const N: usize> {
[INFO] [stdout]     4       │-    pub entry_point: &'static str,
[INFO] [stdout]     5       │-    pub buffers: [wgpu::VertexBufferLayout<'static>; N],
[INFO] [stdout]     6       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]     7       │-}
[INFO] [stdout]     8       │-pub fn vertex_state<'a, const N: usize>(
[INFO] [stdout]     9       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]    10       │-    entry: &'a VertexEntry<N>,
[INFO] [stdout]    11       │-) -> wgpu::VertexState<'a> {
[INFO] [stdout]    12       │-    wgpu::VertexState {
[INFO] [stdout]    13       │-        module,
[INFO] [stdout]    14       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]    15       │-        buffers: &entry.buffers,
[INFO] [stdout]    16       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]    17       │-            constants: &entry.constants,
[INFO] [stdout]    18       │-            ..Default::default()
[INFO] [stdout]    19       │-        },
[INFO] [stdout]    20       │-    }
[INFO] [stdout]    21       │-}
[INFO] [stdout]    22       │-pub fn main_entry(input0: wgpu::VertexStepMode) -> VertexEntry<1> {
[INFO] [stdout]    23       │-    VertexEntry {
[INFO] [stdout]    24       │-        entry_point: ENTRY_MAIN,
[INFO] [stdout]    25       │-        buffers: [Input0::vertex_buffer_layout(input0)],
[INFO] [stdout]    26       │-        constants: Default::default(),
[INFO] [stdout]    27       │-    }
[INFO] [stdout]    28       │-}
[INFO] [stdout]    29       │-pub const SOURCE: &str = include_str!("bytemuck_input_layout_validation.wgsl");
[INFO] [stdout]    30       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]    31       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]    32       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]    33       │-        label: None,
[INFO] [stdout]    34       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]    35       │-    })
[INFO] [stdout]    36       │-}
[INFO] [stdout]    37       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]    38       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]    39       │-        label: None,
[INFO] [stdout]    40       │-        bind_group_layouts: &[],
[INFO] [stdout]    41       │-        immediate_size: 0,
[INFO] [stdout]    42       │-    })
[INFO] [stdout]    43       │-}
[INFO] [stdout]    44       │-#[repr(C)]
[INFO] [stdout]    45       │-#[derive(Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable)]
[INFO] [stdout]    46       │-pub struct Inner {
[INFO] [stdout]    47       │-    pub a: f32,
[INFO] [stdout]    48       │-}
[INFO] [stdout]    49       │-const _: () = assert!(
[INFO] [stdout]    50       │-    std::mem::size_of::<Inner>() == 4,
[INFO] [stdout]    51       │-    "size of Inner does not match WGSL"
[INFO] [stdout]    52       │-);
[INFO] [stdout]    53       │-const _: () = assert!(
[INFO] [stdout]    54       │-    std::mem::offset_of!(Inner, a) == 0,
[INFO] [stdout]    55       │-    "offset of Inner.a does not match WGSL"
[INFO] [stdout]    56       │-);
[INFO] [stdout]    57       │-#[repr(C)]
[INFO] [stdout]    58       │-#[derive(Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable)]
[INFO] [stdout]    59       │-pub struct Input0 {
[INFO] [stdout]    60       │-    pub a: u32,
[INFO] [stdout]    61       │-    pub b: i32,
[INFO] [stdout]    62       │-    pub c: f32,
[INFO] [stdout]    63       │-}
[INFO] [stdout]    64       │-const _: () = assert!(
[INFO] [stdout]    65       │-    std::mem::size_of::<Input0>() == 64,
[INFO] [stdout]    66       │-    "size of Input0 does not match WGSL"
[INFO] [stdout]    67       │-);
[INFO] [stdout]    68       │-const _: () = assert!(
[INFO] [stdout]    69       │-    std::mem::offset_of!(Input0, a) == 0,
[INFO] [stdout]    70       │-    "offset of Input0.a does not match WGSL"
[INFO] [stdout]    71       │-);
[INFO] [stdout]    72       │-const _: () = assert!(
[INFO] [stdout]    73       │-    std::mem::offset_of!(Input0, b) == 8,
[INFO] [stdout]    74       │-    "offset of Input0.b does not match WGSL"
[INFO] [stdout]    75       │-);
[INFO] [stdout]    76       │-const _: () = assert!(
[INFO] [stdout]    77       │-    std::mem::offset_of!(Input0, c) == 32,
[INFO] [stdout]    78       │-    "offset of Input0.c does not match WGSL"
[INFO] [stdout]    79       │-);
[INFO] [stdout]    80       │-impl Input0 {
[INFO] [stdout]    81       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 3] = [
[INFO] [stdout]    82       │-        wgpu::VertexAttribute {
[INFO] [stdout]    83       │-            format: wgpu::VertexFormat::Uint32,
[INFO] [stdout]    84       │-            offset: std::mem::offset_of!(Input0, a) as u64,
[INFO] [stdout]    85       │-            shader_location: 0,
[INFO] [stdout]    86       │-        },
[INFO] [stdout]    87       │-        wgpu::VertexAttribute {
[INFO] [stdout]    88       │-            format: wgpu::VertexFormat::Sint32,
[INFO] [stdout]    89       │-            offset: std::mem::offset_of!(Input0, b) as u64,
[INFO] [stdout]    90       │-            shader_location: 1,
[INFO] [stdout]    91       │-        },
[INFO] [stdout]    92       │-        wgpu::VertexAttribute {
[INFO] [stdout]    93       │-            format: wgpu::VertexFormat::Float32,
[INFO] [stdout]    94       │-            offset: std::mem::offset_of!(Input0, c) as u64,
[INFO] [stdout]    95       │-            shader_location: 2,
[INFO] [stdout]    96       │-        },
[INFO] [stdout]    97       │-    ];
[INFO] [stdout]    98       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]    99       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]   100       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]   101       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]   102       │-            array_stride: std::mem::size_of::<Input0>() as u64,
[INFO] [stdout]   103       │-            step_mode,
[INFO] [stdout]   104       │-            attributes: &Input0::VERTEX_ATTRIBUTES,
[INFO] [stdout]   105       │-        }
[INFO] [stdout]   106       │-    }
[INFO] [stdout]   107       │-}
[INFO] [stdout]   108       │-#[repr(C)]
[INFO] [stdout]   109       │-#[derive(Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable)]
[INFO] [stdout]   110       │-pub struct Outer {
[INFO] [stdout]   111       │-    pub inner: Inner,
[INFO] [stdout]   112       │-}
[INFO] [stdout]   113       │-const _: () = assert!(
[INFO] [stdout]   114       │-    std::mem::size_of::<Outer>() == 4,
[INFO] [stdout]   115       │-    "size of Outer does not match WGSL"
[INFO] [stdout]   116       │-);
[INFO] [stdout]   117       │-const _: () = assert!(
[INFO] [stdout]   118       │-    std::mem::offset_of!(Outer, inner) == 0,
[INFO] [stdout]   119       │-    "offset of Outer.inner does not match WGSL"
[INFO] [stdout]   120       │-);
[INFO] [stdout]           1 │+pub const ENTRY_MAIN : & str = "main" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn main_entry (input0 : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_MAIN , buffers : [Input0 :: vertex_buffer_layout (input0)] , constants : Default :: default () } } pub const SOURCE : & str = include_str ! ("bytemuck_input_layout_validation.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Inner { pub a : f32 } const _ : () = assert ! (std :: mem :: size_of :: < Inner > () == 4 , "size of Inner does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Inner , a) == 0 , "offset of Inner.a does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f32 } const _ : () = assert ! (std :: mem :: size_of :: < Input0 > () == 64 , "size of Input0 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , a) == 0 , "offset of Input0.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , b) == 8 , "offset of Input0.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , c) == 32 , "offset of Input0.c does not match WGSL") ; impl Input0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 3] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Uint32 , offset : std :: mem :: offset_of ! (Input0 , a) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Sint32 , offset : std :: mem :: offset_of ! (Input0 , b) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32 , offset : std :: mem :: offset_of ! (Input0 , c) as u64 , shader_location : 2 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < Input0 > () as u64 , step_mode , attributes : & Input0 :: VERTEX_ATTRIBUTES } } } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Outer { pub inner : Inner } const _ : () = assert ! (std :: mem :: size_of :: < Outer > () == 4 , "size of Outer does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Outer , inner) == 0 , "offset of Outer.inner does not match WGSL") ;
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'structs::tests::write_all_structs_bytemuck_input_layout_validation' (37) panicked at src/structs.rs:538:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_all_structs_bytemuck_input_layout_validation.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df71f109 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df71f109 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_input_layout_validation::{{closure}}::h900b8c419b2236bf
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5df2df75160f - insta::settings::Settings::bind::h989c1a10efa9d4a2
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df71ec9e - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_input_layout_validation::hfc11dda55da023bf
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5df2df71f1f7 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_input_layout_validation::{{closure}}::hbcb1e1699c9cdcb9
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:522:60
[INFO] [stdout]   25:     0x5df2df707e46 - core::ops::function::FnOnce::call_once::hab45d7a10047bc81
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- bindgroup::tests::bind_groups_module_fragment stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/bind_groups_module_fragment.snap
[INFO] [stdout] Snapshot: bind_groups_module_fragment
[INFO] [stdout] Source: src/bindgroup.rs:656
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod bind_groups {
[INFO] [stdout]     2       │-    #[derive(Debug)]
[INFO] [stdout]     3       │-    pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     4       │-    #[derive(Debug)]
[INFO] [stdout]     5       │-    pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     6       │-        pub transforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]     7       │-    }
[INFO] [stdout]     8       │-    const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]     9       │-        label: Some("LayoutDescriptor0"),
[INFO] [stdout]    10       │-        entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    11       │-            binding: 0,
[INFO] [stdout]    12       │-            visibility: wgpu::ShaderStages::FRAGMENT,
[INFO] [stdout]    13       │-            ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    14       │-                ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]    15       │-                has_dynamic_offset: false,
[INFO] [stdout]    16       │-                min_binding_size: None,
[INFO] [stdout]    17       │-            },
[INFO] [stdout]    18       │-            count: None,
[INFO] [stdout]    19       │-        }],
[INFO] [stdout]    20       │-    };
[INFO] [stdout]    21       │-    impl BindGroup0 {
[INFO] [stdout]    22       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    23       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]    24       │-        }
[INFO] [stdout]    25       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]    26       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]    27       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]    28       │-                layout: &bind_group_layout,
[INFO] [stdout]    29       │-                entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]    30       │-                    binding: 0,
[INFO] [stdout]    31       │-                    resource: wgpu::BindingResource::Buffer(bindings.transforms),
[INFO] [stdout]    32       │-                }],
[INFO] [stdout]    33       │-                label: Some("BindGroup0"),
[INFO] [stdout]    34       │-            });
[INFO] [stdout]    35       │-            Self(bind_group)
[INFO] [stdout]    36       │-        }
[INFO] [stdout]    37       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    38       │-            pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]    39       │-        }
[INFO] [stdout]    40       │-    }
[INFO] [stdout]    41       │-    #[derive(Debug, Copy, Clone)]
[INFO] [stdout]    42       │-    pub struct BindGroups<'a> {
[INFO] [stdout]    43       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]    44       │-    }
[INFO] [stdout]    45       │-    impl BindGroups<'_> {
[INFO] [stdout]    46       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    47       │-            self.bind_group0.set(pass);
[INFO] [stdout]    48       │-        }
[INFO] [stdout]    49       │-    }
[INFO] [stdout]    50       │-    pub trait SetBindGroup {
[INFO] [stdout]    51       │-        fn set_bind_group(
[INFO] [stdout]    52       │-            &mut self,
[INFO] [stdout]    53       │-            index: u32,
[INFO] [stdout]    54       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    55       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    56       │-        );
[INFO] [stdout]    57       │-    }
[INFO] [stdout]    58       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]    59       │-        fn set_bind_group(
[INFO] [stdout]    60       │-            &mut self,
[INFO] [stdout]    61       │-            index: u32,
[INFO] [stdout]    62       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    63       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    64       │-        ) {
[INFO] [stdout]    65       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    66       │-        }
[INFO] [stdout]    67       │-    }
[INFO] [stdout]    68       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]    69       │-        fn set_bind_group(
[INFO] [stdout]    70       │-            &mut self,
[INFO] [stdout]    71       │-            index: u32,
[INFO] [stdout]    72       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    73       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    74       │-        ) {
[INFO] [stdout]    75       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    76       │-        }
[INFO] [stdout]    77       │-    }
[INFO] [stdout]    78       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]    79       │-        fn set_bind_group(
[INFO] [stdout]    80       │-            &mut self,
[INFO] [stdout]    81       │-            index: u32,
[INFO] [stdout]    82       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    83       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    84       │-        ) {
[INFO] [stdout]    85       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    86       │-        }
[INFO] [stdout]    87       │-    }
[INFO] [stdout]    88       │-}
[INFO] [stdout]    89       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]    90       │-    pass: &mut P,
[INFO] [stdout]    91       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]    92       │-) {
[INFO] [stdout]    93       │-    bind_group0.set(pass);
[INFO] [stdout]    94       │-}
[INFO] [stdout]           1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub transforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . transforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'bindgroup::tests::bind_groups_module_fragment' (29) panicked at src/bindgroup.rs:656:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/bind_groups_module_fragment.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df7671ed - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df7671ed - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_fragment::{{closure}}::h016abd2cc0a15829
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5df2df751344 - insta::settings::Settings::bind::h8ecb4cd0f242f4fd
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df766cfb - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_fragment::hd64df7b074644dac
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5df2df7672e7 - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_fragment::{{closure}}::h78244eec53712175
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bindgroup.rs:653:37
[INFO] [stdout]   25:     0x5df2df707e06 - core::ops::function::FnOnce::call_once::ha8a8c8b11d2371fe
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- bindgroup::tests::bind_groups_module_vertex stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/bind_groups_module_vertex.snap
[INFO] [stdout] Snapshot: bind_groups_module_vertex
[INFO] [stdout] Source: src/bindgroup.rs:649
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod bind_groups {
[INFO] [stdout]     2       │-    #[derive(Debug)]
[INFO] [stdout]     3       │-    pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     4       │-    #[derive(Debug)]
[INFO] [stdout]     5       │-    pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     6       │-        pub transforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]     7       │-    }
[INFO] [stdout]     8       │-    const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]     9       │-        label: Some("LayoutDescriptor0"),
[INFO] [stdout]    10       │-        entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    11       │-            binding: 0,
[INFO] [stdout]    12       │-            visibility: wgpu::ShaderStages::VERTEX,
[INFO] [stdout]    13       │-            ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    14       │-                ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]    15       │-                has_dynamic_offset: false,
[INFO] [stdout]    16       │-                min_binding_size: None,
[INFO] [stdout]    17       │-            },
[INFO] [stdout]    18       │-            count: None,
[INFO] [stdout]    19       │-        }],
[INFO] [stdout]    20       │-    };
[INFO] [stdout]    21       │-    impl BindGroup0 {
[INFO] [stdout]    22       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    23       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]    24       │-        }
[INFO] [stdout]    25       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]    26       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]    27       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]    28       │-                layout: &bind_group_layout,
[INFO] [stdout]    29       │-                entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]    30       │-                    binding: 0,
[INFO] [stdout]    31       │-                    resource: wgpu::BindingResource::Buffer(bindings.transforms),
[INFO] [stdout]    32       │-                }],
[INFO] [stdout]    33       │-                label: Some("BindGroup0"),
[INFO] [stdout]    34       │-            });
[INFO] [stdout]    35       │-            Self(bind_group)
[INFO] [stdout]    36       │-        }
[INFO] [stdout]    37       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    38       │-            pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]    39       │-        }
[INFO] [stdout]    40       │-    }
[INFO] [stdout]    41       │-    #[derive(Debug, Copy, Clone)]
[INFO] [stdout]    42       │-    pub struct BindGroups<'a> {
[INFO] [stdout]    43       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]    44       │-    }
[INFO] [stdout]    45       │-    impl BindGroups<'_> {
[INFO] [stdout]    46       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    47       │-            self.bind_group0.set(pass);
[INFO] [stdout]    48       │-        }
[INFO] [stdout]    49       │-    }
[INFO] [stdout]    50       │-    pub trait SetBindGroup {
[INFO] [stdout]    51       │-        fn set_bind_group(
[INFO] [stdout]    52       │-            &mut self,
[INFO] [stdout]    53       │-            index: u32,
[INFO] [stdout]    54       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    55       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    56       │-        );
[INFO] [stdout]    57       │-    }
[INFO] [stdout]    58       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]    59       │-        fn set_bind_group(
[INFO] [stdout]    60       │-            &mut self,
[INFO] [stdout]    61       │-            index: u32,
[INFO] [stdout]    62       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    63       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    64       │-        ) {
[INFO] [stdout]    65       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    66       │-        }
[INFO] [stdout]    67       │-    }
[INFO] [stdout]    68       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]    69       │-        fn set_bind_group(
[INFO] [stdout]    70       │-            &mut self,
[INFO] [stdout]    71       │-            index: u32,
[INFO] [stdout]    72       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    73       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    74       │-        ) {
[INFO] [stdout]    75       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    76       │-        }
[INFO] [stdout]    77       │-    }
[INFO] [stdout]    78       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]    79       │-        fn set_bind_group(
[INFO] [stdout]    80       │-            &mut self,
[INFO] [stdout]    81       │-            index: u32,
[INFO] [stdout]    82       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    83       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    84       │-        ) {
[INFO] [stdout]    85       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    86       │-        }
[INFO] [stdout]    87       │-    }
[INFO] [stdout]    88       │-}
[INFO] [stdout]    89       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]    90       │-    pass: &mut P,
[INFO] [stdout]    91       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]    92       │-) {
[INFO] [stdout]    93       │-    bind_group0.set(pass);
[INFO] [stdout]    94       │-}
[INFO] [stdout]           1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub transforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: VERTEX , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . transforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'bindgroup::tests::bind_groups_module_vertex' (30) panicked at src/bindgroup.rs:649:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/bind_groups_module_vertex.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df765ced - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df765ced - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex::{{closure}}::hd29d41878deb689e
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5df2df751124 - insta::settings::Settings::bind::h52b2dc4b5cf6acf8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df7657fb - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex::h1274be2265578330
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5df2df765de7 - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex::{{closure}}::hf5f334e5d5f9ff35
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bindgroup.rs:646:35
[INFO] [stdout]   25:     0x5df2df708166 - core::ops::function::FnOnce::call_once::hec150f9bd3beae3d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- bindgroup::tests::bind_groups_module_vertex_fragment stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/bind_groups_module_vertex_fragment.snap
[INFO] [stdout] Snapshot: bind_groups_module_vertex_fragment
[INFO] [stdout] Source: src/bindgroup.rs:642
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod bind_groups {
[INFO] [stdout]     2       │-    #[derive(Debug)]
[INFO] [stdout]     3       │-    pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     4       │-    #[derive(Debug)]
[INFO] [stdout]     5       │-    pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     6       │-        pub color_texture1: &'a wgpu::TextureView,
[INFO] [stdout]     7       │-        pub color_texture2: &'a wgpu::TextureView,
[INFO] [stdout]     8       │-        pub color_texture3: &'a wgpu::TextureView,
[INFO] [stdout]     9       │-        pub depth_texture: &'a wgpu::TextureView,
[INFO] [stdout]    10       │-        pub color_sampler: &'a wgpu::Sampler,
[INFO] [stdout]    11       │-        pub comparison_sampler: &'a wgpu::Sampler,
[INFO] [stdout]    12       │-        pub storage_tex_read: &'a wgpu::TextureView,
[INFO] [stdout]    13       │-        pub storage_tex_write: &'a wgpu::TextureView,
[INFO] [stdout]    14       │-        pub storage_tex_read_write: &'a wgpu::TextureView,
[INFO] [stdout]    15       │-        pub color_texture_msaa: &'a wgpu::TextureView,
[INFO] [stdout]    16       │-        pub depth_texture_msaa: &'a wgpu::TextureView,
[INFO] [stdout]    17       │-        pub color_texture_array_2d: &'a wgpu::TextureView,
[INFO] [stdout]    18       │-        pub color_texture_array_cube: &'a wgpu::TextureView,
[INFO] [stdout]    19       │-        pub texture_binding_array: &'a [&'a wgpu::TextureView; 2],
[INFO] [stdout]    20       │-        pub sampler_binding_array: &'a [&'a wgpu::Sampler; 3],
[INFO] [stdout]    21       │-    }
[INFO] [stdout]    22       │-    const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]    23       │-        label: Some("LayoutDescriptor0"),
[INFO] [stdout]    24       │-        entries: &[
[INFO] [stdout]    25       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    26       │-                binding: 0,
[INFO] [stdout]    27       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]    28       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]    29       │-                    sample_type: wgpu::TextureSampleType::Uint,
[INFO] [stdout]    30       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]    31       │-                    multisampled: false,
[INFO] [stdout]    32       │-                },
[INFO] [stdout]    33       │-                count: None,
[INFO] [stdout]    34       │-            },
[INFO] [stdout]    35       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    36       │-                binding: 1,
[INFO] [stdout]    37       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]    38       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]    39       │-                    sample_type: wgpu::TextureSampleType::Sint,
[INFO] [stdout]    40       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]    41       │-                    multisampled: false,
[INFO] [stdout]    42       │-                },
[INFO] [stdout]    43       │-                count: None,
[INFO] [stdout]    44       │-            },
[INFO] [stdout]    45       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    46       │-                binding: 2,
[INFO] [stdout]    47       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]    48       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]    49       │-                    sample_type: wgpu::TextureSampleType::Float { filterable: true },
[INFO] [stdout]    50       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]    51       │-                    multisampled: false,
[INFO] [stdout]    52       │-                },
[INFO] [stdout]    53       │-                count: None,
[INFO] [stdout]    54       │-            },
[INFO] [stdout]    55       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    56       │-                binding: 3,
[INFO] [stdout]    57       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]    58       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]    59       │-                    sample_type: wgpu::TextureSampleType::Depth,
[INFO] [stdout]    60       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]    61       │-                    multisampled: false,
[INFO] [stdout]    62       │-                },
[INFO] [stdout]    63       │-                count: None,
[INFO] [stdout]    64       │-            },
[INFO] [stdout]    65       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    66       │-                binding: 4,
[INFO] [stdout]    67       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]    68       │-                ty: wgpu::BindingType::Sampler(wgpu::SamplerBindingType::Filtering),
[INFO] [stdout]    69       │-                count: None,
[INFO] [stdout]    70       │-            },
[INFO] [stdout]    71       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    72       │-                binding: 5,
[INFO] [stdout]    73       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]    74       │-                ty: wgpu::BindingType::Sampler(wgpu::SamplerBindingType::Comparison),
[INFO] [stdout]    75       │-                count: None,
[INFO] [stdout]    76       │-            },
[INFO] [stdout]    77       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    78       │-                binding: 6,
[INFO] [stdout]    79       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]    80       │-                ty: wgpu::BindingType::StorageTexture {
[INFO] [stdout]    81       │-                    access: wgpu::StorageTextureAccess::ReadOnly,
[INFO] [stdout]    82       │-                    format: wgpu::TextureFormat::R32Float,
[INFO] [stdout]    83       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]    84       │-                },
[INFO] [stdout]    85       │-                count: None,
[INFO] [stdout]    86       │-            },
[INFO] [stdout]    87       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    88       │-                binding: 7,
[INFO] [stdout]    89       │-                visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]    90       │-                ty: wgpu::BindingType::StorageTexture {
[INFO] [stdout]    91       │-                    access: wgpu::StorageTextureAccess::WriteOnly,
[INFO] [stdout]    92       │-                    format: wgpu::TextureFormat::Rg32Sint,
[INFO] [stdout]    93       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]    94       │-                },
[INFO] [stdout]    95       │-                count: None,
[INFO] [stdout]    96       │-            },
[INFO] [stdout]    97       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    98       │-                binding: 8,
[INFO] [stdout]    99       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   100       │-                ty: wgpu::BindingType::StorageTexture {
[INFO] [stdout]   101       │-                    access: wgpu::StorageTextureAccess::ReadWrite,
[INFO] [stdout]   102       │-                    format: wgpu::TextureFormat::Rgba8Uint,
[INFO] [stdout]   103       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]   104       │-                },
[INFO] [stdout]   105       │-                count: None,
[INFO] [stdout]   106       │-            },
[INFO] [stdout]   107       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   108       │-                binding: 9,
[INFO] [stdout]   109       │-                visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]   110       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]   111       │-                    sample_type: wgpu::TextureSampleType::Float { filterable: true },
[INFO] [stdout]   112       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]   113       │-                    multisampled: true,
[INFO] [stdout]   114       │-                },
[INFO] [stdout]   115       │-                count: None,
[INFO] [stdout]   116       │-            },
[INFO] [stdout]   117       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   118       │-                binding: 10,
[INFO] [stdout]   119       │-                visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]   120       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]   121       │-                    sample_type: wgpu::TextureSampleType::Depth,
[INFO] [stdout]   122       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]   123       │-                    multisampled: true,
[INFO] [stdout]   124       │-                },
[INFO] [stdout]   125       │-                count: None,
[INFO] [stdout]   126       │-            },
[INFO] [stdout]   127       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   128       │-                binding: 11,
[INFO] [stdout]   129       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   130       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]   131       │-                    sample_type: wgpu::TextureSampleType::Float { filterable: true },
[INFO] [stdout]   132       │-                    view_dimension: wgpu::TextureViewDimension::D2Array,
[INFO] [stdout]   133       │-                    multisampled: false,
[INFO] [stdout]   134       │-                },
[INFO] [stdout]   135       │-                count: None,
[INFO] [stdout]   136       │-            },
[INFO] [stdout]   137       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   138       │-                binding: 12,
[INFO] [stdout]   139       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   140       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]   141       │-                    sample_type: wgpu::TextureSampleType::Float { filterable: true },
[INFO] [stdout]   142       │-                    view_dimension: wgpu::TextureViewDimension::CubeArray,
[INFO] [stdout]   143       │-                    multisampled: false,
[INFO] [stdout]   144       │-                },
[INFO] [stdout]   145       │-                count: None,
[INFO] [stdout]   146       │-            },
[INFO] [stdout]   147       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   148       │-                binding: 13,
[INFO] [stdout]   149       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   150       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]   151       │-                    sample_type: wgpu::TextureSampleType::Float { filterable: true },
[INFO] [stdout]   152       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]   153       │-                    multisampled: false,
[INFO] [stdout]   154       │-                },
[INFO] [stdout]   155       │-                count: Some(std::num::NonZeroU32::new(2).unwrap()),
[INFO] [stdout]   156       │-            },
[INFO] [stdout]   157       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   158       │-                binding: 14,
[INFO] [stdout]   159       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   160       │-                ty: wgpu::BindingType::Sampler(wgpu::SamplerBindingType::Filtering),
[INFO] [stdout]   161       │-                count: Some(std::num::NonZeroU32::new(3).unwrap()),
[INFO] [stdout]   162       │-            },
[INFO] [stdout]   163       │-        ],
[INFO] [stdout]   164       │-    };
[INFO] [stdout]   165       │-    impl BindGroup0 {
[INFO] [stdout]   166       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]   167       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]   168       │-        }
[INFO] [stdout]   169       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]   170       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]   171       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]   172       │-                layout: &bind_group_layout,
[INFO] [stdout]   173       │-                entries: &[
[INFO] [stdout]   174       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   175       │-                        binding: 0,
[INFO] [stdout]   176       │-                        resource: wgpu::BindingResource::TextureView(bindings.color_texture1),
[INFO] [stdout]   177       │-                    },
[INFO] [stdout]   178       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   179       │-                        binding: 1,
[INFO] [stdout]   180       │-                        resource: wgpu::BindingResource::TextureView(bindings.color_texture2),
[INFO] [stdout]   181       │-                    },
[INFO] [stdout]   182       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   183       │-                        binding: 2,
[INFO] [stdout]   184       │-                        resource: wgpu::BindingResource::TextureView(bindings.color_texture3),
[INFO] [stdout]   185       │-                    },
[INFO] [stdout]   186       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   187       │-                        binding: 3,
[INFO] [stdout]   188       │-                        resource: wgpu::BindingResource::TextureView(bindings.depth_texture),
[INFO] [stdout]   189       │-                    },
[INFO] [stdout]   190       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   191       │-                        binding: 4,
[INFO] [stdout]   192       │-                        resource: wgpu::BindingResource::Sampler(bindings.color_sampler),
[INFO] [stdout]   193       │-                    },
[INFO] [stdout]   194       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   195       │-                        binding: 5,
[INFO] [stdout]   196       │-                        resource: wgpu::BindingResource::Sampler(bindings.comparison_sampler),
[INFO] [stdout]   197       │-                    },
[INFO] [stdout]   198       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   199       │-                        binding: 6,
[INFO] [stdout]   200       │-                        resource: wgpu::BindingResource::TextureView(bindings.storage_tex_read),
[INFO] [stdout]   201       │-                    },
[INFO] [stdout]   202       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   203       │-                        binding: 7,
[INFO] [stdout]   204       │-                        resource: wgpu::BindingResource::TextureView(bindings.storage_tex_write),
[INFO] [stdout]   205       │-                    },
[INFO] [stdout]   206       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   207       │-                        binding: 8,
[INFO] [stdout]   208       │-                        resource: wgpu::BindingResource::TextureView(
[INFO] [stdout]   209       │-                            bindings.storage_tex_read_write,
[INFO] [stdout]   210       │-                        ),
[INFO] [stdout]   211       │-                    },
[INFO] [stdout]   212       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   213       │-                        binding: 9,
[INFO] [stdout]   214       │-                        resource: wgpu::BindingResource::TextureView(bindings.color_texture_msaa),
[INFO] [stdout]   215       │-                    },
[INFO] [stdout]   216       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   217       │-                        binding: 10,
[INFO] [stdout]   218       │-                        resource: wgpu::BindingResource::TextureView(bindings.depth_texture_msaa),
[INFO] [stdout]   219       │-                    },
[INFO] [stdout]   220       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   221       │-                        binding: 11,
[INFO] [stdout]   222       │-                        resource: wgpu::BindingResource::TextureView(
[INFO] [stdout]   223       │-                            bindings.color_texture_array_2d,
[INFO] [stdout]   224       │-                        ),
[INFO] [stdout]   225       │-                    },
[INFO] [stdout]   226       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   227       │-                        binding: 12,
[INFO] [stdout]   228       │-                        resource: wgpu::BindingResource::TextureView(
[INFO] [stdout]   229       │-                            bindings.color_texture_array_cube,
[INFO] [stdout]   230       │-                        ),
[INFO] [stdout]   231       │-                    },
[INFO] [stdout]   232       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   233       │-                        binding: 13,
[INFO] [stdout]   234       │-                        resource: wgpu::BindingResource::TextureViewArray(
[INFO] [stdout]   235       │-                            bindings.texture_binding_array,
[INFO] [stdout]   236       │-                        ),
[INFO] [stdout]   237       │-                    },
[INFO] [stdout]   238       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   239       │-                        binding: 14,
[INFO] [stdout]   240       │-                        resource: wgpu::BindingResource::SamplerArray(
[INFO] [stdout]   241       │-                            bindings.sampler_binding_array,
[INFO] [stdout]   242       │-                        ),
[INFO] [stdout]   243       │-                    },
[INFO] [stdout]   244       │-                ],
[INFO] [stdout]   245       │-                label: Some("BindGroup0"),
[INFO] [stdout]   246       │-            });
[INFO] [stdout]   247       │-            Self(bind_group)
[INFO] [stdout]   248       │-        }
[INFO] [stdout]   249       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   250       │-            pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]   251       │-        }
[INFO] [stdout]   252       │-    }
[INFO] [stdout]   253       │-    #[derive(Debug)]
[INFO] [stdout]   254       │-    pub struct BindGroup1(wgpu::BindGroup);
[INFO] [stdout]   255       │-    #[derive(Debug)]
[INFO] [stdout]   256       │-    pub struct BindGroupLayout1<'a> {
[INFO] [stdout]   257       │-        pub transforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]   258       │-        pub scalar: wgpu::BufferBinding<'a>,
[INFO] [stdout]   259       │-        pub vector: wgpu::BufferBinding<'a>,
[INFO] [stdout]   260       │-        pub matrix: wgpu::BufferBinding<'a>,
[INFO] [stdout]   261       │-        pub transforms_array: &'a [wgpu::BufferBinding<'a>; 2],
[INFO] [stdout]   262       │-        pub scalar_array: &'a [wgpu::BufferBinding<'a>; 3],
[INFO] [stdout]   263       │-        pub vector_array: &'a [wgpu::BufferBinding<'a>; 4],
[INFO] [stdout]   264       │-        pub matrix_array: &'a [wgpu::BufferBinding<'a>; 5],
[INFO] [stdout]   265       │-    }
[INFO] [stdout]   266       │-    const LAYOUT_DESCRIPTOR1: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]   267       │-        label: Some("LayoutDescriptor1"),
[INFO] [stdout]   268       │-        entries: &[
[INFO] [stdout]   269       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   270       │-                binding: 0,
[INFO] [stdout]   271       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   272       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   273       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   274       │-                    has_dynamic_offset: false,
[INFO] [stdout]   275       │-                    min_binding_size: None,
[INFO] [stdout]   276       │-                },
[INFO] [stdout]   277       │-                count: None,
[INFO] [stdout]   278       │-            },
[INFO] [stdout]   279       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   280       │-                binding: 1,
[INFO] [stdout]   281       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   282       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   283       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   284       │-                    has_dynamic_offset: false,
[INFO] [stdout]   285       │-                    min_binding_size: None,
[INFO] [stdout]   286       │-                },
[INFO] [stdout]   287       │-                count: None,
[INFO] [stdout]   288       │-            },
[INFO] [stdout]   289       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   290       │-                binding: 2,
[INFO] [stdout]   291       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   292       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   293       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   294       │-                    has_dynamic_offset: false,
[INFO] [stdout]   295       │-                    min_binding_size: None,
[INFO] [stdout]   296       │-                },
[INFO] [stdout]   297       │-                count: None,
[INFO] [stdout]   298       │-            },
[INFO] [stdout]   299       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   300       │-                binding: 3,
[INFO] [stdout]   301       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   302       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   303       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   304       │-                    has_dynamic_offset: false,
[INFO] [stdout]   305       │-                    min_binding_size: None,
[INFO] [stdout]   306       │-                },
[INFO] [stdout]   307       │-                count: None,
[INFO] [stdout]   308       │-            },
[INFO] [stdout]   309       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   310       │-                binding: 4,
[INFO] [stdout]   311       │-                visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]   312       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   313       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   314       │-                    has_dynamic_offset: false,
[INFO] [stdout]   315       │-                    min_binding_size: None,
[INFO] [stdout]   316       │-                },
[INFO] [stdout]   317       │-                count: Some(std::num::NonZeroU32::new(2).unwrap()),
[INFO] [stdout]   318       │-            },
[INFO] [stdout]   319       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   320       │-                binding: 5,
[INFO] [stdout]   321       │-                visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]   322       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   323       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   324       │-                    has_dynamic_offset: false,
[INFO] [stdout]   325       │-                    min_binding_size: None,
[INFO] [stdout]   326       │-                },
[INFO] [stdout]   327       │-                count: Some(std::num::NonZeroU32::new(3).unwrap()),
[INFO] [stdout]   328       │-            },
[INFO] [stdout]   329       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   330       │-                binding: 6,
[INFO] [stdout]   331       │-                visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]   332       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   333       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   334       │-                    has_dynamic_offset: false,
[INFO] [stdout]   335       │-                    min_binding_size: None,
[INFO] [stdout]   336       │-                },
[INFO] [stdout]   337       │-                count: Some(std::num::NonZeroU32::new(4).unwrap()),
[INFO] [stdout]   338       │-            },
[INFO] [stdout]   339       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   340       │-                binding: 7,
[INFO] [stdout]   341       │-                visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]   342       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   343       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   344       │-                    has_dynamic_offset: false,
[INFO] [stdout]   345       │-                    min_binding_size: None,
[INFO] [stdout]   346       │-                },
[INFO] [stdout]   347       │-                count: Some(std::num::NonZeroU32::new(5).unwrap()),
[INFO] [stdout]   348       │-            },
[INFO] [stdout]   349       │-        ],
[INFO] [stdout]   350       │-    };
[INFO] [stdout]   351       │-    impl BindGroup1 {
[INFO] [stdout]   352       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]   353       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR1)
[INFO] [stdout]   354       │-        }
[INFO] [stdout]   355       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout1) -> Self {
[INFO] [stdout]   356       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR1);
[INFO] [stdout]   357       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]   358       │-                layout: &bind_group_layout,
[INFO] [stdout]   359       │-                entries: &[
[INFO] [stdout]   360       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   361       │-                        binding: 0,
[INFO] [stdout]   362       │-                        resource: wgpu::BindingResource::Buffer(bindings.transforms),
[INFO] [stdout]   363       │-                    },
[INFO] [stdout]   364       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   365       │-                        binding: 1,
[INFO] [stdout]   366       │-                        resource: wgpu::BindingResource::Buffer(bindings.scalar),
[INFO] [stdout]   367       │-                    },
[INFO] [stdout]   368       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   369       │-                        binding: 2,
[INFO] [stdout]   370       │-                        resource: wgpu::BindingResource::Buffer(bindings.vector),
[INFO] [stdout]   371       │-                    },
[INFO] [stdout]   372       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   373       │-                        binding: 3,
[INFO] [stdout]   374       │-                        resource: wgpu::BindingResource::Buffer(bindings.matrix),
[INFO] [stdout]   375       │-                    },
[INFO] [stdout]   376       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   377       │-                        binding: 4,
[INFO] [stdout]   378       │-                        resource: wgpu::BindingResource::BufferArray(bindings.transforms_array),
[INFO] [stdout]   379       │-                    },
[INFO] [stdout]   380       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   381       │-                        binding: 5,
[INFO] [stdout]   382       │-                        resource: wgpu::BindingResource::BufferArray(bindings.scalar_array),
[INFO] [stdout]   383       │-                    },
[INFO] [stdout]   384       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   385       │-                        binding: 6,
[INFO] [stdout]   386       │-                        resource: wgpu::BindingResource::BufferArray(bindings.vector_array),
[INFO] [stdout]   387       │-                    },
[INFO] [stdout]   388       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   389       │-                        binding: 7,
[INFO] [stdout]   390       │-                        resource: wgpu::BindingResource::BufferArray(bindings.matrix_array),
[INFO] [stdout]   391       │-                    },
[INFO] [stdout]   392       │-                ],
[INFO] [stdout]   393       │-                label: Some("BindGroup1"),
[INFO] [stdout]   394       │-            });
[INFO] [stdout]   395       │-            Self(bind_group)
[INFO] [stdout]   396       │-        }
[INFO] [stdout]   397       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   398       │-            pass.set_bind_group(1, &self.0, &[]);
[INFO] [stdout]   399       │-        }
[INFO] [stdout]   400       │-    }
[INFO] [stdout]   401       │-    #[derive(Debug)]
[INFO] [stdout]   402       │-    pub struct BindGroup2(wgpu::BindGroup);
[INFO] [stdout]   403       │-    #[derive(Debug)]
[INFO] [stdout]   404       │-    pub struct BindGroupLayout2<'a> {
[INFO] [stdout]   405       │-        pub acc_struct: &'a wgpu::Tlas,
[INFO] [stdout]   406       │-    }
[INFO] [stdout]   407       │-    const LAYOUT_DESCRIPTOR2: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]   408       │-        label: Some("LayoutDescriptor2"),
[INFO] [stdout]   409       │-        entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   410       │-            binding: 0,
[INFO] [stdout]   411       │-            visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]   412       │-            ty: wgpu::BindingType::AccelerationStructure {
[INFO] [stdout]   413       │-                vertex_return: false,
[INFO] [stdout]   414       │-            },
[INFO] [stdout]   415       │-            count: None,
[INFO] [stdout]   416       │-        }],
[INFO] [stdout]   417       │-    };
[INFO] [stdout]   418       │-    impl BindGroup2 {
[INFO] [stdout]   419       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]   420       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR2)
[INFO] [stdout]   421       │-        }
[INFO] [stdout]   422       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout2) -> Self {
[INFO] [stdout]   423       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR2);
[INFO] [stdout]   424       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]   425       │-                layout: &bind_group_layout,
[INFO] [stdout]   426       │-                entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]   427       │-                    binding: 0,
[INFO] [stdout]   428       │-                    resource: wgpu::BindingResource::AccelerationStructure(bindings.acc_struct),
[INFO] [stdout]   429       │-                }],
[INFO] [stdout]   430       │-                label: Some("BindGroup2"),
[INFO] [stdout]   431       │-            });
[INFO] [stdout]   432       │-            Self(bind_group)
[INFO] [stdout]   433       │-        }
[INFO] [stdout]   434       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   435       │-            pass.set_bind_group(2, &self.0, &[]);
[INFO] [stdout]   436       │-        }
[INFO] [stdout]   437       │-    }
[INFO] [stdout]   438       │-    #[derive(Debug, Copy, Clone)]
[INFO] [stdout]   439       │-    pub struct BindGroups<'a> {
[INFO] [stdout]   440       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]   441       │-        pub bind_group1: &'a BindGroup1,
[INFO] [stdout]   442       │-        pub bind_group2: &'a BindGroup2,
[INFO] [stdout]   443       │-    }
[INFO] [stdout]   444       │-    impl BindGroups<'_> {
[INFO] [stdout]   445       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   446       │-            self.bind_group0.set(pass);
[INFO] [stdout]   447       │-            self.bind_group1.set(pass);
[INFO] [stdout]   448       │-            self.bind_group2.set(pass);
[INFO] [stdout]   449       │-        }
[INFO] [stdout]   450       │-    }
[INFO] [stdout]   451       │-    pub trait SetBindGroup {
[INFO] [stdout]   452       │-        fn set_bind_group(
[INFO] [stdout]   453       │-            &mut self,
[INFO] [stdout]   454       │-            index: u32,
[INFO] [stdout]   455       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   456       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   457       │-        );
[INFO] [stdout]   458       │-    }
[INFO] [stdout]   459       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]   460       │-        fn set_bind_group(
[INFO] [stdout]   461       │-            &mut self,
[INFO] [stdout]   462       │-            index: u32,
[INFO] [stdout]   463       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   464       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   465       │-        ) {
[INFO] [stdout]   466       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   467       │-        }
[INFO] [stdout]   468       │-    }
[INFO] [stdout]   469       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]   470       │-        fn set_bind_group(
[INFO] [stdout]   471       │-            &mut self,
[INFO] [stdout]   472       │-            index: u32,
[INFO] [stdout]   473       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   474       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   475       │-        ) {
[INFO] [stdout]   476       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   477       │-        }
[INFO] [stdout]   478       │-    }
[INFO] [stdout]   479       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]   480       │-        fn set_bind_group(
[INFO] [stdout]   481       │-            &mut self,
[INFO] [stdout]   482       │-            index: u32,
[INFO] [stdout]   483       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   484       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   485       │-        ) {
[INFO] [stdout]   486       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   487       │-        }
[INFO] [stdout]   488       │-    }
[INFO] [stdout]   489       │-}
[INFO] [stdout]   490       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]   491       │-    pass: &mut P,
[INFO] [stdout]   492       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]   493       │-    bind_group1: &bind_groups::BindGroup1,
[INFO] [stdout]   494       │-    bind_group2: &bind_groups::BindGroup2,
[INFO] [stdout]   495       │-) {
[INFO] [stdout]   496       │-    bind_group0.set(pass);
[INFO] [stdout]   497       │-    bind_group1.set(pass);
[INFO] [stdout]   498       │-    bind_group2.set(pass);
[INFO] [stdout]   499       │-}
[INFO] [stdout]           1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub color_texture1 : & 'a wgpu :: TextureView , pub color_texture2 : & 'a wgpu :: TextureView , pub color_texture3 : & 'a wgpu :: TextureView , pub depth_texture : & 'a wgpu :: TextureView , pub color_sampler : & 'a wgpu :: Sampler , pub comparison_sampler : & 'a wgpu :: Sampler , pub storage_tex_read : & 'a wgpu :: TextureView , pub storage_tex_write : & 'a wgpu :: TextureView , pub storage_tex_read_write : & 'a wgpu :: TextureView , pub color_texture_msaa : & 'a wgpu :: TextureView , pub depth_texture_msaa : & 'a wgpu :: TextureView , pub color_texture_array_2d : & 'a wgpu :: TextureView , pub color_texture_array_cube : & 'a wgpu :: TextureView , pub texture_binding_array : & 'a [& 'a wgpu :: TextureView ; 2] , pub sampler_binding_array : & 'a [& 'a wgpu :: Sampler ; 3] } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Uint , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 1 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Sint , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 2 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 3 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Depth , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 4 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Sampler (wgpu :: SamplerBindingType :: Filtering) , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 5 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Sampler (wgpu :: SamplerBindingType :: Comparison) , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 6 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: StorageTexture { access : wgpu :: StorageTextureAccess :: ReadOnly , format : wgpu :: TextureFormat :: R32Float , view_dimension : wgpu :: TextureViewDimension :: D2 , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 7 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: StorageTexture { access : wgpu :: StorageTextureAccess :: WriteOnly , format : wgpu :: TextureFormat :: Rg32Sint , view_dimension : wgpu :: TextureViewDimension :: D2 , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 8 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: StorageTexture { access : wgpu :: StorageTextureAccess :: ReadWrite , format : wgpu :: TextureFormat :: Rgba8Uint , view_dimension : wgpu :: TextureViewDimension :: D2 , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 9 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : true , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 10 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Depth , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : true , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 11 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: D2Array , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 12 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: CubeArray , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 13 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : Some (std :: num :: NonZeroU32 :: new (2) . unwrap ()) , } , wgpu :: BindGroupLayoutEntry { binding : 14 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Sampler (wgpu :: SamplerBindingType :: Filtering) , count : Some (std :: num :: NonZeroU32 :: new (3) . unwrap ()) , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture1) , } , wgpu :: BindGroupEntry { binding : 1 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture2) , } , wgpu :: BindGroupEntry { binding : 2 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture3) , } , wgpu :: BindGroupEntry { binding : 3 , resource : wgpu :: BindingResource :: TextureView (bindings . depth_texture) , } , wgpu :: BindGroupEntry { binding : 4 , resource : wgpu :: BindingResource :: Sampler (bindings . color_sampler) , } , wgpu :: BindGroupEntry { binding : 5 , resource : wgpu :: BindingResource :: Sampler (bindings . comparison_sampler) , } , wgpu :: BindGroupEntry { binding : 6 , resource : wgpu :: BindingResource :: TextureView (bindings . storage_tex_read) , } , wgpu :: BindGroupEntry { binding : 7 , resource : wgpu :: BindingResource :: TextureView (bindings . storage_tex_write) , } , wgpu :: BindGroupEntry { binding : 8 , resource : wgpu :: BindingResource :: TextureView (bindings . storage_tex_read_write) , } , wgpu :: BindGroupEntry { binding : 9 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture_msaa) , } , wgpu :: BindGroupEntry { binding : 10 , resource : wgpu :: BindingResource :: TextureView (bindings . depth_texture_msaa) , } , wgpu :: BindGroupEntry { binding : 11 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture_array_2d) , } , wgpu :: BindGroupEntry { binding : 12 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture_array_cube) , } , wgpu :: BindGroupEntry { binding : 13 , resource : wgpu :: BindingResource :: TextureViewArray (bindings . texture_binding_array) , } , wgpu :: BindGroupEntry { binding : 14 , resource : wgpu :: BindingResource :: SamplerArray (bindings . sampler_binding_array) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug)] pub struct BindGroup1 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout1 < 'a > { pub transforms : wgpu :: BufferBinding < 'a > , pub scalar : wgpu :: BufferBinding < 'a > , pub vector : wgpu :: BufferBinding < 'a > , pub matrix : wgpu :: BufferBinding < 'a > , pub transforms_array : & 'a [wgpu :: BufferBinding < 'a > ; 2] , pub scalar_array : & 'a [wgpu :: BufferBinding < 'a > ; 3] , pub vector_array : & 'a [wgpu :: BufferBinding < 'a > ; 4] , pub matrix_array : & 'a [wgpu :: BufferBinding < 'a > ; 5] } const LAYOUT_DESCRIPTOR1 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor1") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 1 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 2 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 3 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 4 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : Some (std :: num :: NonZeroU32 :: new (2) . unwrap ()) , } , wgpu :: BindGroupLayoutEntry { binding : 5 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : Some (std :: num :: NonZeroU32 :: new (3) . unwrap ()) , } , wgpu :: BindGroupLayoutEntry { binding : 6 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : Some (std :: num :: NonZeroU32 :: new (4) . unwrap ()) , } , wgpu :: BindGroupLayoutEntry { binding : 7 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : Some (std :: num :: NonZeroU32 :: new (5) . unwrap ()) , }] , } ; impl BindGroup1 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR1) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout1) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR1) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . transforms) , } , wgpu :: BindGroupEntry { binding : 1 , resource : wgpu :: BindingResource :: Buffer (bindings . scalar) , } , wgpu :: BindGroupEntry { binding : 2 , resource : wgpu :: BindingResource :: Buffer (bindings . vector) , } , wgpu :: BindGroupEntry { binding : 3 , resource : wgpu :: BindingResource :: Buffer (bindings . matrix) , } , wgpu :: BindGroupEntry { binding : 4 , resource : wgpu :: BindingResource :: BufferArray (bindings . transforms_array) , } , wgpu :: BindGroupEntry { binding : 5 , resource : wgpu :: BindingResource :: BufferArray (bindings . scalar_array) , } , wgpu :: BindGroupEntry { binding : 6 , resource : wgpu :: BindingResource :: BufferArray (bindings . vector_array) , } , wgpu :: BindGroupEntry { binding : 7 , resource : wgpu :: BindingResource :: BufferArray (bindings . matrix_array) , }] , label : Some ("BindGroup1") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (1 , & self . 0 , & []) ; } } # [derive (Debug)] pub struct BindGroup2 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout2 < 'a > { pub acc_struct : & 'a wgpu :: Tlas } const LAYOUT_DESCRIPTOR2 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor2") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: AccelerationStructure { vertex_return : false } , count : None , }] , } ; impl BindGroup2 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR2) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout2) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR2) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: AccelerationStructure (bindings . acc_struct) , }] , label : Some ("BindGroup2") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (2 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 , pub bind_group1 : & 'a BindGroup1 , pub bind_group2 : & 'a BindGroup2 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; self . bind_group1 . set (pass) ; self . bind_group2 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0 , bind_group1 : & bind_groups :: BindGroup1 , bind_group2 : & bind_groups :: BindGroup2) { bind_group0 . set (pass) ; bind_group1 . set (pass) ; bind_group2 . set (pass) ; }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'bindgroup::tests::bind_groups_module_vertex_fragment' (31) panicked at src/bindgroup.rs:642:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/bind_groups_module_vertex_fragment.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df767c6d - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df767c6d - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex_fragment::{{closure}}::h7d091c99dd9fefcf
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5df2df7511e4 - insta::settings::Settings::bind::h5587c030e45ec1bb
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df76777b - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex_fragment::hb3a93e5f8f82888f
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5df2df767d67 - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex_fragment::{{closure}}::hc475b47ab0aac079
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bindgroup.rs:639:44
[INFO] [stdout]   25:     0x5df2df707586 - core::ops::function::FnOnce::call_once::h07dd29a393876fcd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- structs::tests::write_all_structs_serde_encase_bytemuck stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_all_structs_serde_encase_bytemuck.snap
[INFO] [stdout] Snapshot: write_all_structs_serde_encase_bytemuck
[INFO] [stdout] Source: src/structs.rs:371
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod compute {
[INFO] [stdout]     2       │-    pub const MAIN_WORKGROUP_SIZE: [u32; 3] = [64, 1, 1];
[INFO] [stdout]     3       │-    pub fn create_main_pipeline(device: &wgpu::Device) -> wgpu::ComputePipeline {
[INFO] [stdout]     4       │-        let module = super::create_shader_module(device);
[INFO] [stdout]     5       │-        let layout = super::create_pipeline_layout(device);
[INFO] [stdout]     6       │-        device.create_compute_pipeline(&wgpu::ComputePipelineDescriptor {
[INFO] [stdout]     7       │-            label: Some("Compute Pipeline main"),
[INFO] [stdout]     8       │-            layout: Some(&layout),
[INFO] [stdout]     9       │-            module: &module,
[INFO] [stdout]    10       │-            entry_point: Some("main"),
[INFO] [stdout]    11       │-            compilation_options: Default::default(),
[INFO] [stdout]    12       │-            cache: Default::default(),
[INFO] [stdout]    13       │-        })
[INFO] [stdout]    14       │-    }
[INFO] [stdout]    15       │-}
[INFO] [stdout]    16       │-pub const ENTRY_MAIN: &str = "main";
[INFO] [stdout]    17       │-pub const SOURCE: &str = include_str!("serde_encase_bytemuck.wgsl");
[INFO] [stdout]    18       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]    19       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]    20       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]    21       │-        label: None,
[INFO] [stdout]    22       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]    23       │-    })
[INFO] [stdout]    24       │-}
[INFO] [stdout]    25       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]    26       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]    27       │-        label: None,
[INFO] [stdout]    28       │-        bind_group_layouts: &[],
[INFO] [stdout]    29       │-        immediate_size: 0,
[INFO] [stdout]    30       │-    })
[INFO] [stdout]    31       │-}
[INFO] [stdout]    32       │-#[repr(C)]
[INFO] [stdout]    33       │-#[derive(
[INFO] [stdout]    34       │-    Debug,
[INFO] [stdout]    35       │-    Copy,
[INFO] [stdout]    36       │-    Clone,
[INFO] [stdout]    37       │-    PartialEq,
[INFO] [stdout]    38       │-    bytemuck :: Pod,
[INFO] [stdout]    39       │-    bytemuck :: Zeroable,
[INFO] [stdout]    40       │-    encase :: ShaderType,
[INFO] [stdout]    41       │-    serde :: Serialize,
[INFO] [stdout]    42       │-    serde :: Deserialize,
[INFO] [stdout]    43       │-)]
[INFO] [stdout]    44       │-pub struct Input0 {
[INFO] [stdout]    45       │-    pub a: u32,
[INFO] [stdout]    46       │-    pub b: i32,
[INFO] [stdout]    47       │-    pub c: f32,
[INFO] [stdout]    48       │-}
[INFO] [stdout]    49       │-const _: () = assert!(
[INFO] [stdout]    50       │-    std::mem::size_of::<Input0>() == 12,
[INFO] [stdout]    51       │-    "size of Input0 does not match WGSL"
[INFO] [stdout]    52       │-);
[INFO] [stdout]    53       │-const _: () = assert!(
[INFO] [stdout]    54       │-    std::mem::offset_of!(Input0, a) == 0,
[INFO] [stdout]    55       │-    "offset of Input0.a does not match WGSL"
[INFO] [stdout]    56       │-);
[INFO] [stdout]    57       │-const _: () = assert!(
[INFO] [stdout]    58       │-    std::mem::offset_of!(Input0, b) == 4,
[INFO] [stdout]    59       │-    "offset of Input0.b does not match WGSL"
[INFO] [stdout]    60       │-);
[INFO] [stdout]    61       │-const _: () = assert!(
[INFO] [stdout]    62       │-    std::mem::offset_of!(Input0, c) == 8,
[INFO] [stdout]    63       │-    "offset of Input0.c does not match WGSL"
[INFO] [stdout]    64       │-);
[INFO] [stdout]    65       │-#[repr(C)]
[INFO] [stdout]    66       │-#[derive(
[INFO] [stdout]    67       │-    Debug,
[INFO] [stdout]    68       │-    Copy,
[INFO] [stdout]    69       │-    Clone,
[INFO] [stdout]    70       │-    PartialEq,
[INFO] [stdout]    71       │-    bytemuck :: Pod,
[INFO] [stdout]    72       │-    bytemuck :: Zeroable,
[INFO] [stdout]    73       │-    encase :: ShaderType,
[INFO] [stdout]    74       │-    serde :: Serialize,
[INFO] [stdout]    75       │-    serde :: Deserialize,
[INFO] [stdout]    76       │-)]
[INFO] [stdout]    77       │-pub struct Nested {
[INFO] [stdout]    78       │-    pub a: Input0,
[INFO] [stdout]    79       │-    pub b: f32,
[INFO] [stdout]    80       │-}
[INFO] [stdout]    81       │-const _: () = assert!(
[INFO] [stdout]    82       │-    std::mem::size_of::<Nested>() == 16,
[INFO] [stdout]    83       │-    "size of Nested does not match WGSL"
[INFO] [stdout]    84       │-);
[INFO] [stdout]    85       │-const _: () = assert!(
[INFO] [stdout]    86       │-    std::mem::offset_of!(Nested, a) == 0,
[INFO] [stdout]    87       │-    "offset of Nested.a does not match WGSL"
[INFO] [stdout]    88       │-);
[INFO] [stdout]    89       │-const _: () = assert!(
[INFO] [stdout]    90       │-    std::mem::offset_of!(Nested, b) == 12,
[INFO] [stdout]    91       │-    "offset of Nested.b does not match WGSL"
[INFO] [stdout]    92       │-);
[INFO] [stdout]           1 │+pub mod compute { pub const MAIN_WORKGROUP_SIZE : [u32 ; 3] = [64 , 1 , 1] ; pub fn create_main_pipeline (device : & wgpu :: Device) -> wgpu :: ComputePipeline { let module = super :: create_shader_module (device) ; let layout = super :: create_pipeline_layout (device) ; device . create_compute_pipeline (& wgpu :: ComputePipelineDescriptor { label : Some ("Compute Pipeline main") , layout : Some (& layout) , module : & module , entry_point : Some ("main") , compilation_options : Default :: default () , cache : Default :: default () , }) } } pub const ENTRY_MAIN : & str = "main" ; pub const SOURCE : & str = include_str ! ("serde_encase_bytemuck.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType , serde :: Serialize , serde :: Deserialize)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f32 } const _ : () = assert ! (std :: mem :: size_of :: < Input0 > () == 12 , "size of Input0 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , a) == 0 , "offset of Input0.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , b) == 4 , "offset of Input0.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , c) == 8 , "offset of Input0.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType , serde :: Serialize , serde :: Deserialize)] pub struct Nested { pub a : Input0 , pub b : f32 } const _ : () = assert ! (std :: mem :: size_of :: < Nested > () == 16 , "size of Nested does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Nested , a) == 0 , "offset of Nested.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Nested , b) == 12 , "offset of Nested.b does not match WGSL") ;
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'structs::tests::write_all_structs_serde_encase_bytemuck' (43) panicked at src/structs.rs:371:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_all_structs_serde_encase_bytemuck.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df71e1a9 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df71e1a9 - wgsl_to_wgpu::structs::tests::write_all_structs_serde_encase_bytemuck::{{closure}}::h362d4ec125ef0536
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5df2df751b6f - insta::settings::Settings::bind::hde987b3b0a5c6705
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df71dd3e - wgsl_to_wgpu::structs::tests::write_all_structs_serde_encase_bytemuck::h72c4d75ce644bd01
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5df2df71e297 - wgsl_to_wgpu::structs::tests::write_all_structs_serde_encase_bytemuck::{{closure}}::hf04add73cb310857
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:356:49
[INFO] [stdout]   25:     0x5df2df7078e6 - core::ops::function::FnOnce::call_once::h4a6396b89cdee1f2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::add_single_root_module stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/add_single_root_module.snap
[INFO] [stdout] Snapshot: add_single_root_module
[INFO] [stdout] Source: src/lib.rs:1094
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod bind_groups {
[INFO] [stdout]     2       │-    #[derive(Debug)]
[INFO] [stdout]     3       │-    pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     4       │-    #[derive(Debug)]
[INFO] [stdout]     5       │-    pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     6       │-        pub uniforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]     7       │-    }
[INFO] [stdout]     8       │-    const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]     9       │-        label: Some("LayoutDescriptor0"),
[INFO] [stdout]    10       │-        entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    11       │-            binding: 0,
[INFO] [stdout]    12       │-            visibility: wgpu::ShaderStages::FRAGMENT,
[INFO] [stdout]    13       │-            ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    14       │-                ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]    15       │-                has_dynamic_offset: false,
[INFO] [stdout]    16       │-                min_binding_size: None,
[INFO] [stdout]    17       │-            },
[INFO] [stdout]    18       │-            count: None,
[INFO] [stdout]    19       │-        }],
[INFO] [stdout]    20       │-    };
[INFO] [stdout]    21       │-    impl BindGroup0 {
[INFO] [stdout]    22       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    23       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]    24       │-        }
[INFO] [stdout]    25       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]    26       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]    27       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]    28       │-                layout: &bind_group_layout,
[INFO] [stdout]    29       │-                entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]    30       │-                    binding: 0,
[INFO] [stdout]    31       │-                    resource: wgpu::BindingResource::Buffer(bindings.uniforms),
[INFO] [stdout]    32       │-                }],
[INFO] [stdout]    33       │-                label: Some("BindGroup0"),
[INFO] [stdout]    34       │-            });
[INFO] [stdout]    35       │-            Self(bind_group)
[INFO] [stdout]    36       │-        }
[INFO] [stdout]    37       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    38       │-            pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]    39       │-        }
[INFO] [stdout]    40       │-    }
[INFO] [stdout]    41       │-    #[derive(Debug, Copy, Clone)]
[INFO] [stdout]    42       │-    pub struct BindGroups<'a> {
[INFO] [stdout]    43       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]    44       │-    }
[INFO] [stdout]    45       │-    impl BindGroups<'_> {
[INFO] [stdout]    46       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    47       │-            self.bind_group0.set(pass);
[INFO] [stdout]    48       │-        }
[INFO] [stdout]    49       │-    }
[INFO] [stdout]    50       │-    pub trait SetBindGroup {
[INFO] [stdout]    51       │-        fn set_bind_group(
[INFO] [stdout]    52       │-            &mut self,
[INFO] [stdout]    53       │-            index: u32,
[INFO] [stdout]    54       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    55       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    56       │-        );
[INFO] [stdout]    57       │-    }
[INFO] [stdout]    58       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]    59       │-        fn set_bind_group(
[INFO] [stdout]    60       │-            &mut self,
[INFO] [stdout]    61       │-            index: u32,
[INFO] [stdout]    62       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    63       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    64       │-        ) {
[INFO] [stdout]    65       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    66       │-        }
[INFO] [stdout]    67       │-    }
[INFO] [stdout]    68       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]    69       │-        fn set_bind_group(
[INFO] [stdout]    70       │-            &mut self,
[INFO] [stdout]    71       │-            index: u32,
[INFO] [stdout]    72       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    73       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    74       │-        ) {
[INFO] [stdout]    75       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    76       │-        }
[INFO] [stdout]    77       │-    }
[INFO] [stdout]    78       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]    79       │-        fn set_bind_group(
[INFO] [stdout]    80       │-            &mut self,
[INFO] [stdout]    81       │-            index: u32,
[INFO] [stdout]    82       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    83       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    84       │-        ) {
[INFO] [stdout]    85       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    86       │-        }
[INFO] [stdout]    87       │-    }
[INFO] [stdout]    88       │-}
[INFO] [stdout]    89       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]    90       │-    pass: &mut P,
[INFO] [stdout]    91       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]    92       │-) {
[INFO] [stdout]    93       │-    bind_group0.set(pass);
[INFO] [stdout]    94       │-}
[INFO] [stdout]    95       │-pub const ENTRY_VERT: &str = "vert";
[INFO] [stdout]    96       │-pub const ENTRY_FRAG: &str = "frag";
[INFO] [stdout]    97       │-#[derive(Debug)]
[INFO] [stdout]    98       │-pub struct VertexEntry<const N: usize> {
[INFO] [stdout]    99       │-    pub entry_point: &'static str,
[INFO] [stdout]   100       │-    pub buffers: [wgpu::VertexBufferLayout<'static>; N],
[INFO] [stdout]   101       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   102       │-}
[INFO] [stdout]   103       │-pub fn vertex_state<'a, const N: usize>(
[INFO] [stdout]   104       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]   105       │-    entry: &'a VertexEntry<N>,
[INFO] [stdout]   106       │-) -> wgpu::VertexState<'a> {
[INFO] [stdout]   107       │-    wgpu::VertexState {
[INFO] [stdout]   108       │-        module,
[INFO] [stdout]   109       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]   110       │-        buffers: &entry.buffers,
[INFO] [stdout]   111       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   112       │-            constants: &entry.constants,
[INFO] [stdout]   113       │-            ..Default::default()
[INFO] [stdout]   114       │-        },
[INFO] [stdout]   115       │-    }
[INFO] [stdout]   116       │-}
[INFO] [stdout]   117       │-pub fn vert_entry(vertex_input: wgpu::VertexStepMode) -> VertexEntry<1> {
[INFO] [stdout]   118       │-    VertexEntry {
[INFO] [stdout]   119       │-        entry_point: ENTRY_VERT,
[INFO] [stdout]   120       │-        buffers: [VertexInput::vertex_buffer_layout(vertex_input)],
[INFO] [stdout]   121       │-        constants: Default::default(),
[INFO] [stdout]   122       │-    }
[INFO] [stdout]   123       │-}
[INFO] [stdout]   124       │-#[derive(Debug)]
[INFO] [stdout]   125       │-pub struct FragmentEntry<const N: usize> {
[INFO] [stdout]   126       │-    pub entry_point: &'static str,
[INFO] [stdout]   127       │-    pub targets: [Option<wgpu::ColorTargetState>; N],
[INFO] [stdout]   128       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   129       │-}
[INFO] [stdout]   130       │-pub fn fragment_state<'a, const N: usize>(
[INFO] [stdout]   131       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]   132       │-    entry: &'a FragmentEntry<N>,
[INFO] [stdout]   133       │-) -> wgpu::FragmentState<'a> {
[INFO] [stdout]   134       │-    wgpu::FragmentState {
[INFO] [stdout]   135       │-        module,
[INFO] [stdout]   136       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]   137       │-        targets: &entry.targets,
[INFO] [stdout]   138       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   139       │-            constants: &entry.constants,
[INFO] [stdout]   140       │-            ..Default::default()
[INFO] [stdout]   141       │-        },
[INFO] [stdout]   142       │-    }
[INFO] [stdout]   143       │-}
[INFO] [stdout]   144       │-pub fn frag_entry(targets: [Option<wgpu::ColorTargetState>; 1]) -> FragmentEntry<1> {
[INFO] [stdout]   145       │-    FragmentEntry {
[INFO] [stdout]   146       │-        entry_point: ENTRY_FRAG,
[INFO] [stdout]   147       │-        targets,
[INFO] [stdout]   148       │-        constants: Default::default(),
[INFO] [stdout]   149       │-    }
[INFO] [stdout]   150       │-}
[INFO] [stdout]   151       │-pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ;
[INFO] [stdout]   152       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]   153       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]   154       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]   155       │-        label: None,
[INFO] [stdout]   156       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]   157       │-    })
[INFO] [stdout]   158       │-}
[INFO] [stdout]   159       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]   160       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]   161       │-        label: None,
[INFO] [stdout]   162       │-        bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)],
[INFO] [stdout]   163       │-        immediate_size: 0,
[INFO] [stdout]   164       │-    })
[INFO] [stdout]   165       │-}
[INFO] [stdout]   166       │-#[repr(C)]
[INFO] [stdout]   167       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   168       │-pub struct Root {
[INFO] [stdout]   169       │-    pub c: [f32; 4],
[INFO] [stdout]   170       │-}
[INFO] [stdout]   171       │-pub mod shared {
[INFO] [stdout]   172       │-    #[repr(C)]
[INFO] [stdout]   173       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   174       │-    pub struct Shared {
[INFO] [stdout]   175       │-        pub d: [f32; 4],
[INFO] [stdout]   176       │-    }
[INFO] [stdout]   177       │-    pub const TEST: f32 = 1f32;
[INFO] [stdout]   178       │-    #[repr(C)]
[INFO] [stdout]   179       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   180       │-    pub struct VertexInput {
[INFO] [stdout]   181       │-        pub position: [f32; 3],
[INFO] [stdout]   182       │-    }
[INFO] [stdout]   183       │-    impl VertexInput {
[INFO] [stdout]   184       │-        pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 1] = [wgpu::VertexAttribute {
[INFO] [stdout]   185       │-            format: wgpu::VertexFormat::Float32x3,
[INFO] [stdout]   186       │-            offset: std::mem::offset_of!(VertexInput, position) as u64,
[INFO] [stdout]   187       │-            shader_location: 0,
[INFO] [stdout]   188       │-        }];
[INFO] [stdout]   189       │-        pub const fn vertex_buffer_layout(
[INFO] [stdout]   190       │-            step_mode: wgpu::VertexStepMode,
[INFO] [stdout]   191       │-        ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]   192       │-            wgpu::VertexBufferLayout {
[INFO] [stdout]   193       │-                array_stride: std::mem::size_of::<VertexInput>() as u64,
[INFO] [stdout]   194       │-                step_mode,
[INFO] [stdout]   195       │-                attributes: &VertexInput::VERTEX_ATTRIBUTES,
[INFO] [stdout]   196       │-            }
[INFO] [stdout]   197       │-        }
[INFO] [stdout]   198       │-    }
[INFO] [stdout]   199       │-}
[INFO] [stdout]   200       │-pub mod uniforms {
[INFO] [stdout]   201       │-    #[repr(C)]
[INFO] [stdout]   202       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   203       │-    pub struct Uniforms {
[INFO] [stdout]   204       │-        pub a: [f32; 4],
[INFO] [stdout]   205       │-        pub b: nested::Nested,
[INFO] [stdout]   206       │-    }
[INFO] [stdout]   207       │-    pub mod nested {
[INFO] [stdout]   208       │-        #[repr(C)]
[INFO] [stdout]   209       │-        #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   210       │-        pub struct Nested {
[INFO] [stdout]   211       │-            pub a: [f32; 4],
[INFO] [stdout]   212       │-            pub b: super::super::Root,
[INFO] [stdout]   213       │-            pub c: super::super::shared::Shared,
[INFO] [stdout]   214       │-        }
[INFO] [stdout]   215       │-    }
[INFO] [stdout]   216       │-}
[INFO] [stdout]           1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub uniforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . uniforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; } pub const ENTRY_VERT : & str = "vert" ; pub const ENTRY_FRAG : & str = "frag" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn vert_entry (vertex_input : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_VERT , buffers : [VertexInput :: vertex_buffer_layout (vertex_input)] , constants : Default :: default () } } # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn frag_entry (targets : [Option < wgpu :: ColorTargetState > ; 1] ,) -> FragmentEntry < 1 > { FragmentEntry { entry_point : ENTRY_FRAG , targets , constants : Default :: default () } } pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Root { pub c : [f32 ; 4] } pub mod shared { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Shared { pub d : [f32 ; 4] } pub const TEST : f32 = 1f32 ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct VertexInput { pub position : [f32 ; 3] } impl VertexInput { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 1] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x3 , offset : std :: mem :: offset_of ! (VertexInput , position) as u64 , shader_location : 0 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput > () as u64 , step_mode , attributes : & VertexInput :: VERTEX_ATTRIBUTES } } } } pub mod uniforms { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Uniforms { pub a : [f32 ; 4] , pub b : nested :: Nested } pub mod nested { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Nested { pub a : [f32 ; 4] , pub b : super :: super :: Root , pub c : super :: super :: shared :: Shared } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::add_single_root_module' (319) panicked at src/lib.rs:1094:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/add_single_root_module.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df75c089 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df75c089 - wgsl_to_wgpu::test::add_single_root_module::{{closure}}::h45e99d9cfa7e18d8
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5df2df751acf - insta::settings::Settings::bind::hdc290df10bbd0bcf
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df75bbeb - wgsl_to_wgpu::test::add_single_root_module::ha1ab37cb1d4b5891
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5df2df75bc97 - wgsl_to_wgpu::test::add_single_root_module::{{closure}}::h15c50dc9275fd859
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1078:32
[INFO] [stdout]   25:     0x5df2df7079b6 - core::ops::function::FnOnce::call_once::h5f2440be9bb7ec4a
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::create_shader_modules_source_rustfmt stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/create_shader_modules_source_rustfmt.snap
[INFO] [stdout] Snapshot: create_shader_modules_source_rustfmt
[INFO] [stdout] Source: src/lib.rs:824
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub const ENTRY_MAIN: &str = "main";
[INFO] [stdout]     2       │-#[derive(Debug)]
[INFO] [stdout]     3       │-pub struct FragmentEntry<const N: usize> {
[INFO] [stdout]     4       │-    pub entry_point: &'static str,
[INFO] [stdout]     5       │-    pub targets: [Option<wgpu::ColorTargetState>; N],
[INFO] [stdout]     6       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]     7       │-}
[INFO] [stdout]     8       │-pub fn fragment_state<'a, const N: usize>(
[INFO] [stdout]     9       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]    10       │-    entry: &'a FragmentEntry<N>,
[INFO] [stdout]    11       │-) -> wgpu::FragmentState<'a> {
[INFO] [stdout]    12       │-    wgpu::FragmentState {
[INFO] [stdout]    13       │-        module,
[INFO] [stdout]    14       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]    15       │-        targets: &entry.targets,
[INFO] [stdout]    16       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]    17       │-            constants: &entry.constants,
[INFO] [stdout]    18       │-            ..Default::default()
[INFO] [stdout]    19       │-        },
[INFO] [stdout]    20       │-    }
[INFO] [stdout]    21       │-}
[INFO] [stdout]    22       │-pub fn main_entry(targets: [Option<wgpu::ColorTargetState>; 0]) -> FragmentEntry<0> {
[INFO] [stdout]    23       │-    FragmentEntry {
[INFO] [stdout]    24       │-        entry_point: ENTRY_MAIN,
[INFO] [stdout]    25       │-        targets,
[INFO] [stdout]    26       │-        constants: Default::default(),
[INFO] [stdout]    27       │-    }
[INFO] [stdout]    28       │-}
[INFO] [stdout]    29       │-pub const SOURCE: &str = "@fragment fn main() {}";
[INFO] [stdout]    30       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]    31       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]    32       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]    33       │-        label: None,
[INFO] [stdout]    34       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]    35       │-    })
[INFO] [stdout]    36       │-}
[INFO] [stdout]    37       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]    38       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]    39       │-        label: None,
[INFO] [stdout]    40       │-        bind_group_layouts: &[],
[INFO] [stdout]    41       │-        immediate_size: 0,
[INFO] [stdout]    42       │-    })
[INFO] [stdout]    43       │-}
[INFO] [stdout]           1 │+pub const ENTRY_MAIN : & str = "main" ; # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn main_entry (targets : [Option < wgpu :: ColorTargetState > ; 0] ,) -> FragmentEntry < 0 > { FragmentEntry { entry_point : ENTRY_MAIN , targets , constants : Default :: default () } } pub const SOURCE : & str = "@fragment fn main() {}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , immediate_size : 0 , }) }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::create_shader_modules_source_rustfmt' (926) panicked at src/lib.rs:824:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/create_shader_modules_source_rustfmt.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df7603b9 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df7603b9 - wgsl_to_wgpu::test::create_shader_modules_source_rustfmt::{{closure}}::h58bae6be216b3bdc
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5df2df75106f - insta::settings::Settings::bind::h52a18e7b69a246bb
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df75ff52 - wgsl_to_wgpu::test::create_shader_modules_source_rustfmt::h13f05ac2a09bbb2d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5df2df7604a7 - wgsl_to_wgpu::test::create_shader_modules_source_rustfmt::{{closure}}::h88bdf5b5dec964cc
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:813:46
[INFO] [stdout]   25:     0x5df2df7075c6 - core::ops::function::FnOnce::call_once::h09a4c5ed99fdce1c
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- structs::tests::write_all_structs_bytemuck_f64_vec stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'structs::tests::write_all_structs_bytemuck_f64_vec' (36) panicked at src/structs.rs:507:9:
[INFO] [stdout] assertion failed: `(left == right)`
[INFO] [stdout] 
[INFO] [stdout] [1mDiff[0m [31m< left[0m / [32mright >[0m :
[INFO] [stdout] [31m<# [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f64 [0m[1;48;5;52;31m, [0m[31m}[0m
[INFO] [stdout] [32m># [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f64 }[0m
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2df71cd67 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_f64_vec::h51e048b198a6d98f
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:681:13
[INFO] [stdout]   20:     0x5df2df71cde7 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_f64_vec::{{closure}}::h38f1c2bf46eb21ee
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:476:44
[INFO] [stdout]   21:     0x5df2df707c36 - core::ops::function::FnOnce::call_once::h8a9028343b413444
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   33:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   34:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   39:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   41:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   42:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   43:     0x710669a9ba64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::mesh_shader stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/mesh_shader.snap
[INFO] [stdout] Snapshot: mesh_shader
[INFO] [stdout] Source: src/lib.rs:1175
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub const ENTRY_TS_MAIN: &str = "ts_main";
[INFO] [stdout]     2       │-pub const ENTRY_MS_MAIN: &str = "ms_main";
[INFO] [stdout]     3       │-pub const ENTRY_FS_MAIN: &str = "fs_main";
[INFO] [stdout]     4       │-#[derive(Debug)]
[INFO] [stdout]     5       │-pub struct FragmentEntry<const N: usize> {
[INFO] [stdout]     6       │-    pub entry_point: &'static str,
[INFO] [stdout]     7       │-    pub targets: [Option<wgpu::ColorTargetState>; N],
[INFO] [stdout]     8       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]     9       │-}
[INFO] [stdout]    10       │-pub fn fragment_state<'a, const N: usize>(
[INFO] [stdout]    11       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]    12       │-    entry: &'a FragmentEntry<N>,
[INFO] [stdout]    13       │-) -> wgpu::FragmentState<'a> {
[INFO] [stdout]    14       │-    wgpu::FragmentState {
[INFO] [stdout]    15       │-        module,
[INFO] [stdout]    16       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]    17       │-        targets: &entry.targets,
[INFO] [stdout]    18       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]    19       │-            constants: &entry.constants,
[INFO] [stdout]    20       │-            ..Default::default()
[INFO] [stdout]    21       │-        },
[INFO] [stdout]    22       │-    }
[INFO] [stdout]    23       │-}
[INFO] [stdout]    24       │-pub fn fs_main_entry(targets: [Option<wgpu::ColorTargetState>; 1]) -> FragmentEntry<1> {
[INFO] [stdout]    25       │-    FragmentEntry {
[INFO] [stdout]    26       │-        entry_point: ENTRY_FS_MAIN,
[INFO] [stdout]    27       │-        targets,
[INFO] [stdout]    28       │-        constants: Default::default(),
[INFO] [stdout]    29       │-    }
[INFO] [stdout]    30       │-}
[INFO] [stdout]    31       │-pub const SOURCE : & str = "enable wgpu_mesh_shader;\n\nconst positions = array(\n    vec4(0.0, 1.0, 0.0, 1.0),\n    vec4(-1.0, -1.0, 0.0, 1.0),\n    vec4(1.0, -1.0, 0.0, 1.0)\n);\nconst colors = array(\n    vec4(0.0, 1.0, 0.0, 1.0),\n    vec4(0.0, 0.0, 1.0, 1.0),\n    vec4(1.0, 0.0, 0.0, 1.0)\n);\n\nstruct TaskPayload {\n    colorMask: vec4<f32>,\n    visible: bool,\n}\nstruct VertexOutput {\n    @builtin(position) position: vec4<f32>,\n    @location(0) color: vec4<f32>,\n}\nstruct PrimitiveOutput {\n    @builtin(triangle_indices) indices: vec3<u32>,\n    @builtin(cull_primitive) cull: bool,\n    @per_primitive @location(1) colorMask: vec4<f32>,\n}\nstruct PrimitiveInput {\n    @per_primitive @location(1) colorMask: vec4<f32>,\n}\n\nvar<task_payload> taskPayload: TaskPayload;\nvar<workgroup> workgroupData: f32;\n\n@task\n@payload(taskPayload)\n@workgroup_size(1)\nfn ts_main() -> @builtin(mesh_task_size) vec3<u32> {\n    workgroupData = 1.0;\n    taskPayload.colorMask = vec4(1.0, 1.0, 0.0, 1.0);\n    taskPayload.visible = true;\n    return vec3(1, 1, 1);\n}\n\nstruct MeshOutput {\n    @builtin(vertices) vertices: array<VertexOutput, 3>,\n    @builtin(primitives) primitives: array<PrimitiveOutput, 1>,\n    @builtin(vertex_count) vertex_count: u32,\n    @builtin(primitive_count) primitive_count: u32,\n}\n\nvar<workgroup> mesh_output: MeshOutput;\n\n@mesh(mesh_output)\n@payload(taskPayload)\n@workgroup_size(1)\nfn ms_main() {\n    mesh_output.vertex_count = 3;\n    mesh_output.primitive_count = 1;\n    workgroupData = 2.0;\n\n    mesh_output.vertices[0].position = positions[0];\n    mesh_output.vertices[0].color = colors[0] * taskPayload.colorMask;\n\n    mesh_output.vertices[1].position = positions[1];\n    mesh_output.vertices[1].color = colors[1] * taskPayload.colorMask;\n\n    mesh_output.vertices[2].position = positions[2];\n    mesh_output.vertices[2].color = colors[2] * taskPayload.colorMask;\n\n    mesh_output.primitives[0].indices = vec3<u32>(0, 1, 2);\n    mesh_output.primitives[0].cull = !taskPayload.visible;\n    mesh_output.primitives[0].colorMask = vec4<f32>(1.0, 0.0, 1.0, 1.0);\n}\n\n@fragment\nfn fs_main(vertex: VertexOutput, primitive: PrimitiveInput) -> @location(0) vec4<f32> {\n    return vertex.color * primitive.colorMask;\n}\n" ;
[INFO] [stdout]    32       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]    33       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]    34       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]    35       │-        label: None,
[INFO] [stdout]    36       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]    37       │-    })
[INFO] [stdout]    38       │-}
[INFO] [stdout]    39       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]    40       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]    41       │-        label: None,
[INFO] [stdout]    42       │-        bind_group_layouts: &[],
[INFO] [stdout]    43       │-        immediate_size: 0,
[INFO] [stdout]    44       │-    })
[INFO] [stdout]    45       │-}
[INFO] [stdout]    46       │-#[repr(C)]
[INFO] [stdout]    47       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]    48       │-pub struct MeshOutput {}
[INFO] [stdout]    49       │-#[repr(C)]
[INFO] [stdout]    50       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]    51       │-pub struct PrimitiveInput {
[INFO] [stdout]    52       │-    pub colorMask: [f32; 4],
[INFO] [stdout]    53       │-}
[INFO] [stdout]    54       │-#[repr(C)]
[INFO] [stdout]    55       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]    56       │-pub struct PrimitiveOutput {
[INFO] [stdout]    57       │-    pub colorMask: [f32; 4],
[INFO] [stdout]    58       │-}
[INFO] [stdout]    59       │-#[repr(C)]
[INFO] [stdout]    60       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]    61       │-pub struct TaskPayload {
[INFO] [stdout]    62       │-    pub colorMask: [f32; 4],
[INFO] [stdout]    63       │-    pub visible: bool,
[INFO] [stdout]    64       │-}
[INFO] [stdout]    65       │-#[repr(C)]
[INFO] [stdout]    66       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]    67       │-pub struct VertexOutput {
[INFO] [stdout]    68       │-    pub color: [f32; 4],
[INFO] [stdout]    69       │-}
[INFO] [stdout]           1 │+pub const ENTRY_TS_MAIN : & str = "ts_main" ; pub const ENTRY_MS_MAIN : & str = "ms_main" ; pub const ENTRY_FS_MAIN : & str = "fs_main" ; # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn fs_main_entry (targets : [Option < wgpu :: ColorTargetState > ; 1] ,) -> FragmentEntry < 1 > { FragmentEntry { entry_point : ENTRY_FS_MAIN , targets , constants : Default :: default () } } pub const SOURCE : & str = "enable wgpu_mesh_shader;\n\nconst positions = array(\n    vec4(0.0, 1.0, 0.0, 1.0),\n    vec4(-1.0, -1.0, 0.0, 1.0),\n    vec4(1.0, -1.0, 0.0, 1.0)\n);\nconst colors = array(\n    vec4(0.0, 1.0, 0.0, 1.0),\n    vec4(0.0, 0.0, 1.0, 1.0),\n    vec4(1.0, 0.0, 0.0, 1.0)\n);\n\nstruct TaskPayload {\n    colorMask: vec4<f32>,\n    visible: bool,\n}\nstruct VertexOutput {\n    @builtin(position) position: vec4<f32>,\n    @location(0) color: vec4<f32>,\n}\nstruct PrimitiveOutput {\n    @builtin(triangle_indices) indices: vec3<u32>,\n    @builtin(cull_primitive) cull: bool,\n    @per_primitive @location(1) colorMask: vec4<f32>,\n}\nstruct PrimitiveInput {\n    @per_primitive @location(1) colorMask: vec4<f32>,\n}\n\nvar<task_payload> taskPayload: TaskPayload;\nvar<workgroup> workgroupData: f32;\n\n@task\n@payload(taskPayload)\n@workgroup_size(1)\nfn ts_main() -> @builtin(mesh_task_size) vec3<u32> {\n    workgroupData = 1.0;\n    taskPayload.colorMask = vec4(1.0, 1.0, 0.0, 1.0);\n    taskPayload.visible = true;\n    return vec3(1, 1, 1);\n}\n\nstruct MeshOutput {\n    @builtin(vertices) vertices: array<VertexOutput, 3>,\n    @builtin(primitives) primitives: array<PrimitiveOutput, 1>,\n    @builtin(vertex_count) vertex_count: u32,\n    @builtin(primitive_count) primitive_count: u32,\n}\n\nvar<workgroup> mesh_output: MeshOutput;\n\n@mesh(mesh_output)\n@payload(taskPayload)\n@workgroup_size(1)\nfn ms_main() {\n    mesh_output.vertex_count = 3;\n    mesh_output.primitive_count = 1;\n    workgroupData = 2.0;\n\n    mesh_output.vertices[0].position = positions[0];\n    mesh_output.vertices[0].color = colors[0] * taskPayload.colorMask;\n\n    mesh_output.vertices[1].position = positions[1];\n    mesh_output.vertices[1].color = colors[1] * taskPayload.colorMask;\n\n    mesh_output.vertices[2].position = positions[2];\n    mesh_output.vertices[2].color = colors[2] * taskPayload.colorMask;\n\n    mesh_output.primitives[0].indices = vec3<u32>(0, 1, 2);\n    mesh_output.primitives[0].cull = !taskPayload.visible;\n    mesh_output.primitives[0].colorMask = vec4<f32>(1.0, 0.0, 1.0, 1.0);\n}\n\n@fragment\nfn fs_main(vertex: VertexOutput, primitive: PrimitiveInput) -> @location(0) vec4<f32> {\n    return vertex.color * primitive.colorMask;\n}\n" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct MeshOutput { } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct PrimitiveInput { pub colorMask : [f32 ; 4] } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct PrimitiveOutput { pub colorMask : [f32 ; 4] } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct TaskPayload { pub colorMask : [f32 ; 4] , pub visible : bool } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct VertexOutput { pub color : [f32 ; 4] }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::mesh_shader' (4639) panicked at src/lib.rs:1175:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/mesh_shader.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df75a389 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df75a389 - wgsl_to_wgpu::test::mesh_shader::{{closure}}::h011393dc3e4d19e5
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5df2df751a2f - insta::settings::Settings::bind::hbb06417a7ea04e53
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df759f27 - wgsl_to_wgpu::test::mesh_shader::h02890723fa6c6b79
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5df2df75a477 - wgsl_to_wgpu::test::mesh_shader::{{closure}}::h96894b60e41dee28
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1164:21
[INFO] [stdout]   25:     0x5df2df7081e6 - core::ops::function::FnOnce::call_once::hef68b2b5ebaa4024
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- structs::tests::write_all_structs_bytemuck_skip_input_layout_validation stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'structs::tests::write_all_structs_bytemuck_skip_input_layout_validation' (38) panicked at src/structs.rs:461:9:
[INFO] [stdout] assertion failed: `(left == right)`
[INFO] [stdout] 
[INFO] [stdout] [1mDiff[0m [31m< left[0m / [32mright >[0m :
[INFO] [stdout] [31m<# [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f32 [0m[1;48;5;52;31m, [0m[31m}[0m
[INFO] [stdout] [32m># [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f32 }[0m
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2df71fd07 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_skip_input_layout_validation::h2478a00eb468cfa6
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:681:13
[INFO] [stdout]   20:     0x5df2df71fd87 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_skip_input_layout_validation::{{closure}}::h8e01cf59eb33ebca
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:430:65
[INFO] [stdout]   21:     0x5df2df7082a6 - core::ops::function::FnOnce::call_once::hf9ff871828047890
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   33:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   34:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   39:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   41:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   42:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   43:     0x710669a9ba64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::single_root_module stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/single_root_module.snap
[INFO] [stdout] Snapshot: single_root_module
[INFO] [stdout] Source: src/lib.rs:1074
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod bind_groups {
[INFO] [stdout]     2       │-    #[derive(Debug)]
[INFO] [stdout]     3       │-    pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     4       │-    #[derive(Debug)]
[INFO] [stdout]     5       │-    pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     6       │-        pub uniforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]     7       │-    }
[INFO] [stdout]     8       │-    const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]     9       │-        label: Some("LayoutDescriptor0"),
[INFO] [stdout]    10       │-        entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    11       │-            binding: 0,
[INFO] [stdout]    12       │-            visibility: wgpu::ShaderStages::FRAGMENT,
[INFO] [stdout]    13       │-            ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    14       │-                ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]    15       │-                has_dynamic_offset: false,
[INFO] [stdout]    16       │-                min_binding_size: None,
[INFO] [stdout]    17       │-            },
[INFO] [stdout]    18       │-            count: None,
[INFO] [stdout]    19       │-        }],
[INFO] [stdout]    20       │-    };
[INFO] [stdout]    21       │-    impl BindGroup0 {
[INFO] [stdout]    22       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    23       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]    24       │-        }
[INFO] [stdout]    25       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]    26       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]    27       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]    28       │-                layout: &bind_group_layout,
[INFO] [stdout]    29       │-                entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]    30       │-                    binding: 0,
[INFO] [stdout]    31       │-                    resource: wgpu::BindingResource::Buffer(bindings.uniforms),
[INFO] [stdout]    32       │-                }],
[INFO] [stdout]    33       │-                label: Some("BindGroup0"),
[INFO] [stdout]    34       │-            });
[INFO] [stdout]    35       │-            Self(bind_group)
[INFO] [stdout]    36       │-        }
[INFO] [stdout]    37       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    38       │-            pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]    39       │-        }
[INFO] [stdout]    40       │-    }
[INFO] [stdout]    41       │-    #[derive(Debug, Copy, Clone)]
[INFO] [stdout]    42       │-    pub struct BindGroups<'a> {
[INFO] [stdout]    43       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]    44       │-    }
[INFO] [stdout]    45       │-    impl BindGroups<'_> {
[INFO] [stdout]    46       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    47       │-            self.bind_group0.set(pass);
[INFO] [stdout]    48       │-        }
[INFO] [stdout]    49       │-    }
[INFO] [stdout]    50       │-    pub trait SetBindGroup {
[INFO] [stdout]    51       │-        fn set_bind_group(
[INFO] [stdout]    52       │-            &mut self,
[INFO] [stdout]    53       │-            index: u32,
[INFO] [stdout]    54       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    55       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    56       │-        );
[INFO] [stdout]    57       │-    }
[INFO] [stdout]    58       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]    59       │-        fn set_bind_group(
[INFO] [stdout]    60       │-            &mut self,
[INFO] [stdout]    61       │-            index: u32,
[INFO] [stdout]    62       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    63       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    64       │-        ) {
[INFO] [stdout]    65       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    66       │-        }
[INFO] [stdout]    67       │-    }
[INFO] [stdout]    68       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]    69       │-        fn set_bind_group(
[INFO] [stdout]    70       │-            &mut self,
[INFO] [stdout]    71       │-            index: u32,
[INFO] [stdout]    72       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    73       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    74       │-        ) {
[INFO] [stdout]    75       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    76       │-        }
[INFO] [stdout]    77       │-    }
[INFO] [stdout]    78       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]    79       │-        fn set_bind_group(
[INFO] [stdout]    80       │-            &mut self,
[INFO] [stdout]    81       │-            index: u32,
[INFO] [stdout]    82       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    83       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    84       │-        ) {
[INFO] [stdout]    85       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    86       │-        }
[INFO] [stdout]    87       │-    }
[INFO] [stdout]    88       │-}
[INFO] [stdout]    89       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]    90       │-    pass: &mut P,
[INFO] [stdout]    91       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]    92       │-) {
[INFO] [stdout]    93       │-    bind_group0.set(pass);
[INFO] [stdout]    94       │-}
[INFO] [stdout]    95       │-pub const ENTRY_VERT: &str = "vert";
[INFO] [stdout]    96       │-pub const ENTRY_FRAG: &str = "frag";
[INFO] [stdout]    97       │-#[derive(Debug)]
[INFO] [stdout]    98       │-pub struct VertexEntry<const N: usize> {
[INFO] [stdout]    99       │-    pub entry_point: &'static str,
[INFO] [stdout]   100       │-    pub buffers: [wgpu::VertexBufferLayout<'static>; N],
[INFO] [stdout]   101       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   102       │-}
[INFO] [stdout]   103       │-pub fn vertex_state<'a, const N: usize>(
[INFO] [stdout]   104       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]   105       │-    entry: &'a VertexEntry<N>,
[INFO] [stdout]   106       │-) -> wgpu::VertexState<'a> {
[INFO] [stdout]   107       │-    wgpu::VertexState {
[INFO] [stdout]   108       │-        module,
[INFO] [stdout]   109       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]   110       │-        buffers: &entry.buffers,
[INFO] [stdout]   111       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   112       │-            constants: &entry.constants,
[INFO] [stdout]   113       │-            ..Default::default()
[INFO] [stdout]   114       │-        },
[INFO] [stdout]   115       │-    }
[INFO] [stdout]   116       │-}
[INFO] [stdout]   117       │-pub fn vert_entry(vertex_input: wgpu::VertexStepMode) -> VertexEntry<1> {
[INFO] [stdout]   118       │-    VertexEntry {
[INFO] [stdout]   119       │-        entry_point: ENTRY_VERT,
[INFO] [stdout]   120       │-        buffers: [VertexInput::vertex_buffer_layout(vertex_input)],
[INFO] [stdout]   121       │-        constants: Default::default(),
[INFO] [stdout]   122       │-    }
[INFO] [stdout]   123       │-}
[INFO] [stdout]   124       │-#[derive(Debug)]
[INFO] [stdout]   125       │-pub struct FragmentEntry<const N: usize> {
[INFO] [stdout]   126       │-    pub entry_point: &'static str,
[INFO] [stdout]   127       │-    pub targets: [Option<wgpu::ColorTargetState>; N],
[INFO] [stdout]   128       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   129       │-}
[INFO] [stdout]   130       │-pub fn fragment_state<'a, const N: usize>(
[INFO] [stdout]   131       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]   132       │-    entry: &'a FragmentEntry<N>,
[INFO] [stdout]   133       │-) -> wgpu::FragmentState<'a> {
[INFO] [stdout]   134       │-    wgpu::FragmentState {
[INFO] [stdout]   135       │-        module,
[INFO] [stdout]   136       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]   137       │-        targets: &entry.targets,
[INFO] [stdout]   138       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   139       │-            constants: &entry.constants,
[INFO] [stdout]   140       │-            ..Default::default()
[INFO] [stdout]   141       │-        },
[INFO] [stdout]   142       │-    }
[INFO] [stdout]   143       │-}
[INFO] [stdout]   144       │-pub fn frag_entry(targets: [Option<wgpu::ColorTargetState>; 1]) -> FragmentEntry<1> {
[INFO] [stdout]   145       │-    FragmentEntry {
[INFO] [stdout]   146       │-        entry_point: ENTRY_FRAG,
[INFO] [stdout]   147       │-        targets,
[INFO] [stdout]   148       │-        constants: Default::default(),
[INFO] [stdout]   149       │-    }
[INFO] [stdout]   150       │-}
[INFO] [stdout]   151       │-pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ;
[INFO] [stdout]   152       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]   153       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]   154       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]   155       │-        label: None,
[INFO] [stdout]   156       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]   157       │-    })
[INFO] [stdout]   158       │-}
[INFO] [stdout]   159       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]   160       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]   161       │-        label: None,
[INFO] [stdout]   162       │-        bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)],
[INFO] [stdout]   163       │-        immediate_size: 0,
[INFO] [stdout]   164       │-    })
[INFO] [stdout]   165       │-}
[INFO] [stdout]   166       │-#[repr(C)]
[INFO] [stdout]   167       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   168       │-pub struct Root {
[INFO] [stdout]   169       │-    pub c: [f32; 4],
[INFO] [stdout]   170       │-}
[INFO] [stdout]   171       │-pub mod shared {
[INFO] [stdout]   172       │-    #[repr(C)]
[INFO] [stdout]   173       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   174       │-    pub struct Shared {
[INFO] [stdout]   175       │-        pub d: [f32; 4],
[INFO] [stdout]   176       │-    }
[INFO] [stdout]   177       │-    pub const TEST: f32 = 1f32;
[INFO] [stdout]   178       │-    #[repr(C)]
[INFO] [stdout]   179       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   180       │-    pub struct VertexInput {
[INFO] [stdout]   181       │-        pub position: [f32; 3],
[INFO] [stdout]   182       │-    }
[INFO] [stdout]   183       │-    impl VertexInput {
[INFO] [stdout]   184       │-        pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 1] = [wgpu::VertexAttribute {
[INFO] [stdout]   185       │-            format: wgpu::VertexFormat::Float32x3,
[INFO] [stdout]   186       │-            offset: std::mem::offset_of!(VertexInput, position) as u64,
[INFO] [stdout]   187       │-            shader_location: 0,
[INFO] [stdout]   188       │-        }];
[INFO] [stdout]   189       │-        pub const fn vertex_buffer_layout(
[INFO] [stdout]   190       │-            step_mode: wgpu::VertexStepMode,
[INFO] [stdout]   191       │-        ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]   192       │-            wgpu::VertexBufferLayout {
[INFO] [stdout]   193       │-                array_stride: std::mem::size_of::<VertexInput>() as u64,
[INFO] [stdout]   194       │-                step_mode,
[INFO] [stdout]   195       │-                attributes: &VertexInput::VERTEX_ATTRIBUTES,
[INFO] [stdout]   196       │-            }
[INFO] [stdout]   197       │-        }
[INFO] [stdout]   198       │-    }
[INFO] [stdout]   199       │-}
[INFO] [stdout]   200       │-pub mod uniforms {
[INFO] [stdout]   201       │-    #[repr(C)]
[INFO] [stdout]   202       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   203       │-    pub struct Uniforms {
[INFO] [stdout]   204       │-        pub a: [f32; 4],
[INFO] [stdout]   205       │-        pub b: nested::Nested,
[INFO] [stdout]   206       │-    }
[INFO] [stdout]   207       │-    pub mod nested {
[INFO] [stdout]   208       │-        #[repr(C)]
[INFO] [stdout]   209       │-        #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   210       │-        pub struct Nested {
[INFO] [stdout]   211       │-            pub a: [f32; 4],
[INFO] [stdout]   212       │-            pub b: super::super::Root,
[INFO] [stdout]   213       │-            pub c: super::super::shared::Shared,
[INFO] [stdout]   214       │-        }
[INFO] [stdout]   215       │-    }
[INFO] [stdout]   216       │-}
[INFO] [stdout]           1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub uniforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . uniforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; } pub const ENTRY_VERT : & str = "vert" ; pub const ENTRY_FRAG : & str = "frag" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn vert_entry (vertex_input : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_VERT , buffers : [VertexInput :: vertex_buffer_layout (vertex_input)] , constants : Default :: default () } } # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn frag_entry (targets : [Option < wgpu :: ColorTargetState > ; 1] ,) -> FragmentEntry < 1 > { FragmentEntry { entry_point : ENTRY_FRAG , targets , constants : Default :: default () } } pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Root { pub c : [f32 ; 4] } pub mod shared { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Shared { pub d : [f32 ; 4] } pub const TEST : f32 = 1f32 ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct VertexInput { pub position : [f32 ; 3] } impl VertexInput { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 1] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x3 , offset : std :: mem :: offset_of ! (VertexInput , position) as u64 , shader_location : 0 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput > () as u64 , step_mode , attributes : & VertexInput :: VERTEX_ATTRIBUTES } } } } pub mod uniforms { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Uniforms { pub a : [f32 ; 4] , pub b : nested :: Nested } pub mod nested { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Nested { pub a : [f32 ; 4] , pub b : super :: super :: Root , pub c : super :: super :: shared :: Shared } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::single_root_module' (4998) panicked at src/lib.rs:1074:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/single_root_module.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df75b4e9 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df75b4e9 - wgsl_to_wgpu::test::single_root_module::{{closure}}::h1fb90e76387571af
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5df2df75128f - insta::settings::Settings::bind::h8c28788340369fda
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df75b087 - wgsl_to_wgpu::test::single_root_module::h4c3d39bbc7f445d7
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5df2df75b5d7 - wgsl_to_wgpu::test::single_root_module::{{closure}}::h3ae5120b2d6703b4
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1063:28
[INFO] [stdout]   25:     0x5df2df707776 - core::ops::function::FnOnce::call_once::h2bdbca4c8873ef9c
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- structs::tests::write_runtime_sized_array stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'structs::tests::write_runtime_sized_array' (45) panicked at src/structs.rs:562:9:
[INFO] [stdout] assertion failed: `(left == right)`
[INFO] [stdout] 
[INFO] [stdout] [1mDiff[0m [31m< left[0m / [32mright >[0m :
[INFO] [stdout] [31m<# [derive (Debug , Clone , PartialEq , encase :: ShaderType)] pub struct RtsStruct { pub other_data : i32 , # [shader (size (runtime))] pub the_array : Vec < u32 > [0m[1;48;5;52;31m, [0m[31m}[0m
[INFO] [stdout] [32m># [derive (Debug , Clone , PartialEq , encase :: ShaderType)] pub struct RtsStruct { pub other_data : i32 , # [shader (size (runtime))] pub the_array : Vec < u32 > }[0m
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2df71b249 - wgsl_to_wgpu::structs::tests::write_runtime_sized_array::hc1d6afcfa8e6bf7c
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:681:13
[INFO] [stdout]   20:     0x5df2df71b2c7 - wgsl_to_wgpu::structs::tests::write_runtime_sized_array::{{closure}}::h888ee97e009b2441
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:542:35
[INFO] [stdout]   21:     0x5df2df707cc6 - core::ops::function::FnOnce::call_once::h96950f8b85715b90
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   33:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   34:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   39:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   41:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   42:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   43:     0x710669a9ba64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::shader_stage_collection stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/shader_stage_collection.snap
[INFO] [stdout] Snapshot: shader_stage_collection
[INFO] [stdout] Source: src/lib.rs:1160
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod bind_groups {
[INFO] [stdout]     2       │-    #[derive(Debug)]
[INFO] [stdout]     3       │-    pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     4       │-    #[derive(Debug)]
[INFO] [stdout]     5       │-    pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     6       │-        pub counter: wgpu::BufferBinding<'a>,
[INFO] [stdout]     7       │-    }
[INFO] [stdout]     8       │-    const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]     9       │-        label: Some("LayoutDescriptor0"),
[INFO] [stdout]    10       │-        entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    11       │-            binding: 0,
[INFO] [stdout]    12       │-            visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]    13       │-            ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    14       │-                ty: wgpu::BufferBindingType::Storage { read_only: false },
[INFO] [stdout]    15       │-                has_dynamic_offset: false,
[INFO] [stdout]    16       │-                min_binding_size: None,
[INFO] [stdout]    17       │-            },
[INFO] [stdout]    18       │-            count: None,
[INFO] [stdout]    19       │-        }],
[INFO] [stdout]    20       │-    };
[INFO] [stdout]    21       │-    impl BindGroup0 {
[INFO] [stdout]    22       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    23       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]    24       │-        }
[INFO] [stdout]    25       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]    26       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]    27       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]    28       │-                layout: &bind_group_layout,
[INFO] [stdout]    29       │-                entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]    30       │-                    binding: 0,
[INFO] [stdout]    31       │-                    resource: wgpu::BindingResource::Buffer(bindings.counter),
[INFO] [stdout]    32       │-                }],
[INFO] [stdout]    33       │-                label: Some("BindGroup0"),
[INFO] [stdout]    34       │-            });
[INFO] [stdout]    35       │-            Self(bind_group)
[INFO] [stdout]    36       │-        }
[INFO] [stdout]    37       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    38       │-            pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]    39       │-        }
[INFO] [stdout]    40       │-    }
[INFO] [stdout]    41       │-    #[derive(Debug, Copy, Clone)]
[INFO] [stdout]    42       │-    pub struct BindGroups<'a> {
[INFO] [stdout]    43       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]    44       │-    }
[INFO] [stdout]    45       │-    impl BindGroups<'_> {
[INFO] [stdout]    46       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    47       │-            self.bind_group0.set(pass);
[INFO] [stdout]    48       │-        }
[INFO] [stdout]    49       │-    }
[INFO] [stdout]    50       │-    pub trait SetBindGroup {
[INFO] [stdout]    51       │-        fn set_bind_group(
[INFO] [stdout]    52       │-            &mut self,
[INFO] [stdout]    53       │-            index: u32,
[INFO] [stdout]    54       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    55       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    56       │-        );
[INFO] [stdout]    57       │-    }
[INFO] [stdout]    58       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]    59       │-        fn set_bind_group(
[INFO] [stdout]    60       │-            &mut self,
[INFO] [stdout]    61       │-            index: u32,
[INFO] [stdout]    62       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    63       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    64       │-        ) {
[INFO] [stdout]    65       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    66       │-        }
[INFO] [stdout]    67       │-    }
[INFO] [stdout]    68       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]    69       │-        fn set_bind_group(
[INFO] [stdout]    70       │-            &mut self,
[INFO] [stdout]    71       │-            index: u32,
[INFO] [stdout]    72       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    73       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    74       │-        ) {
[INFO] [stdout]    75       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    76       │-        }
[INFO] [stdout]    77       │-    }
[INFO] [stdout]    78       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]    79       │-        fn set_bind_group(
[INFO] [stdout]    80       │-            &mut self,
[INFO] [stdout]    81       │-            index: u32,
[INFO] [stdout]    82       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    83       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    84       │-        ) {
[INFO] [stdout]    85       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    86       │-        }
[INFO] [stdout]    87       │-    }
[INFO] [stdout]    88       │-}
[INFO] [stdout]    89       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]    90       │-    pass: &mut P,
[INFO] [stdout]    91       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]    92       │-) {
[INFO] [stdout]    93       │-    bind_group0.set(pass);
[INFO] [stdout]    94       │-}
[INFO] [stdout]    95       │-pub mod compute {
[INFO] [stdout]    96       │-    pub const MAIN_WORKGROUP_SIZE: [u32; 3] = [1, 1, 1];
[INFO] [stdout]    97       │-    pub fn create_main_pipeline(device: &wgpu::Device) -> wgpu::ComputePipeline {
[INFO] [stdout]    98       │-        let module = super::create_shader_module(device);
[INFO] [stdout]    99       │-        let layout = super::create_pipeline_layout(device);
[INFO] [stdout]   100       │-        device.create_compute_pipeline(&wgpu::ComputePipelineDescriptor {
[INFO] [stdout]   101       │-            label: Some("Compute Pipeline main"),
[INFO] [stdout]   102       │-            layout: Some(&layout),
[INFO] [stdout]   103       │-            module: &module,
[INFO] [stdout]   104       │-            entry_point: Some("main"),
[INFO] [stdout]   105       │-            compilation_options: Default::default(),
[INFO] [stdout]   106       │-            cache: Default::default(),
[INFO] [stdout]   107       │-        })
[INFO] [stdout]   108       │-    }
[INFO] [stdout]   109       │-}
[INFO] [stdout]   110       │-pub const ENTRY_MAIN: &str = "main";
[INFO] [stdout]   111       │-pub const SOURCE: &str = include_str!("shader.wgsl");
[INFO] [stdout]   112       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]   113       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]   114       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]   115       │-        label: None,
[INFO] [stdout]   116       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]   117       │-    })
[INFO] [stdout]   118       │-}
[INFO] [stdout]   119       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]   120       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]   121       │-        label: None,
[INFO] [stdout]   122       │-        bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)],
[INFO] [stdout]   123       │-        immediate_size: 0,
[INFO] [stdout]   124       │-    })
[INFO] [stdout]   125       │-}
[INFO] [stdout]           1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub counter : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : false } , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . counter) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; } pub mod compute { pub const MAIN_WORKGROUP_SIZE : [u32 ; 3] = [1 , 1 , 1] ; pub fn create_main_pipeline (device : & wgpu :: Device) -> wgpu :: ComputePipeline { let module = super :: create_shader_module (device) ; let layout = super :: create_pipeline_layout (device) ; device . create_compute_pipeline (& wgpu :: ComputePipelineDescriptor { label : Some ("Compute Pipeline main") , layout : Some (& layout) , module : & module , entry_point : Some ("main") , compilation_options : Default :: default () , cache : Default :: default () , }) } } pub const ENTRY_MAIN : & str = "main" ; pub const SOURCE : & str = include_str ! ("shader.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , immediate_size : 0 , }) }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::shader_stage_collection' (4672) panicked at src/lib.rs:1160:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/shader_stage_collection.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df75c8a9 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df75c8a9 - wgsl_to_wgpu::test::shader_stage_collection::{{closure}}::hebd2ead3e0c32b74
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5df2df750f2f - insta::settings::Settings::bind::h4dcb0847b2ace8e0
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df75c40c - wgsl_to_wgpu::test::shader_stage_collection::h75b6edc0f4b4b1fb
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5df2df75c4b7 - wgsl_to_wgpu::test::shader_stage_collection::{{closure}}::hbc89b4e198c347ab
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1147:33
[INFO] [stdout]   25:     0x5df2df707d86 - core::ops::function::FnOnce::call_once::ha4a4b6bc29036db6
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::write_vertex_module_single_input_float16 stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_vertex_module_single_input_float16.snap
[INFO] [stdout] Snapshot: write_vertex_module_single_input_float16
[INFO] [stdout] Source: src/lib.rs:963
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-impl VertexInput0 {
[INFO] [stdout]     2       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 3] = [
[INFO] [stdout]     3       │-        wgpu::VertexAttribute {
[INFO] [stdout]     4       │-            format: wgpu::VertexFormat::Float16,
[INFO] [stdout]     5       │-            offset: std::mem::offset_of!(VertexInput0, a) as u64,
[INFO] [stdout]     6       │-            shader_location: 0,
[INFO] [stdout]     7       │-        },
[INFO] [stdout]     8       │-        wgpu::VertexAttribute {
[INFO] [stdout]     9       │-            format: wgpu::VertexFormat::Float16x2,
[INFO] [stdout]    10       │-            offset: std::mem::offset_of!(VertexInput0, b) as u64,
[INFO] [stdout]    11       │-            shader_location: 1,
[INFO] [stdout]    12       │-        },
[INFO] [stdout]    13       │-        wgpu::VertexAttribute {
[INFO] [stdout]    14       │-            format: wgpu::VertexFormat::Float16x4,
[INFO] [stdout]    15       │-            offset: std::mem::offset_of!(VertexInput0, c) as u64,
[INFO] [stdout]    16       │-            shader_location: 2,
[INFO] [stdout]    17       │-        },
[INFO] [stdout]    18       │-    ];
[INFO] [stdout]    19       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]    20       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]    21       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    22       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]    23       │-            array_stride: std::mem::size_of::<VertexInput0>() as u64,
[INFO] [stdout]    24       │-            step_mode,
[INFO] [stdout]    25       │-            attributes: &VertexInput0::VERTEX_ATTRIBUTES,
[INFO] [stdout]    26       │-        }
[INFO] [stdout]    27       │-    }
[INFO] [stdout]    28       │-}
[INFO] [stdout]           1 │+impl VertexInput0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 3] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float16 , offset : std :: mem :: offset_of ! (VertexInput0 , a) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float16x2 , offset : std :: mem :: offset_of ! (VertexInput0 , b) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float16x4 , offset : std :: mem :: offset_of ! (VertexInput0 , c) as u64 , shader_location : 2 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput0 > () as u64 , step_mode , attributes : & VertexInput0 :: VERTEX_ATTRIBUTES } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::write_vertex_module_single_input_float16' (5550) panicked at src/lib.rs:963:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_vertex_module_single_input_float16.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df762f94 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df762f94 - wgsl_to_wgpu::test::write_vertex_module_single_input_float16::{{closure}}::h52f5b1134c54ac2d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5df2df751824 - insta::settings::Settings::bind::had45beddc7d3f17a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df762aa6 - wgsl_to_wgpu::test::write_vertex_module_single_input_float16::hcdd28c50654f0950
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5df2df763097 - wgsl_to_wgpu::test::write_vertex_module_single_input_float16::{{closure}}::hd209a566d35c2cf3
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:946:50
[INFO] [stdout]   25:     0x5df2df7082e6 - core::ops::function::FnOnce::call_once::hfb59e1a780760e89
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::write_vertex_module_single_input_sint32 stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_vertex_module_single_input_sint32.snap
[INFO] [stdout] Snapshot: write_vertex_module_single_input_sint32
[INFO] [stdout] Source: src/lib.rs:984
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-impl VertexInput0 {
[INFO] [stdout]     2       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 4] = [
[INFO] [stdout]     3       │-        wgpu::VertexAttribute {
[INFO] [stdout]     4       │-            format: wgpu::VertexFormat::Sint32,
[INFO] [stdout]     5       │-            offset: std::mem::offset_of!(VertexInput0, a) as u64,
[INFO] [stdout]     6       │-            shader_location: 0,
[INFO] [stdout]     7       │-        },
[INFO] [stdout]     8       │-        wgpu::VertexAttribute {
[INFO] [stdout]     9       │-            format: wgpu::VertexFormat::Sint32x2,
[INFO] [stdout]    10       │-            offset: std::mem::offset_of!(VertexInput0, b) as u64,
[INFO] [stdout]    11       │-            shader_location: 1,
[INFO] [stdout]    12       │-        },
[INFO] [stdout]    13       │-        wgpu::VertexAttribute {
[INFO] [stdout]    14       │-            format: wgpu::VertexFormat::Sint32x3,
[INFO] [stdout]    15       │-            offset: std::mem::offset_of!(VertexInput0, c) as u64,
[INFO] [stdout]    16       │-            shader_location: 2,
[INFO] [stdout]    17       │-        },
[INFO] [stdout]    18       │-        wgpu::VertexAttribute {
[INFO] [stdout]    19       │-            format: wgpu::VertexFormat::Sint32x4,
[INFO] [stdout]    20       │-            offset: std::mem::offset_of!(VertexInput0, d) as u64,
[INFO] [stdout]    21       │-            shader_location: 3,
[INFO] [stdout]    22       │-        },
[INFO] [stdout]    23       │-    ];
[INFO] [stdout]    24       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]    25       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]    26       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    27       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]    28       │-            array_stride: std::mem::size_of::<VertexInput0>() as u64,
[INFO] [stdout]    29       │-            step_mode,
[INFO] [stdout]    30       │-            attributes: &VertexInput0::VERTEX_ATTRIBUTES,
[INFO] [stdout]    31       │-        }
[INFO] [stdout]    32       │-    }
[INFO] [stdout]    33       │-}
[INFO] [stdout]           1 │+impl VertexInput0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 4] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Sint32 , offset : std :: mem :: offset_of ! (VertexInput0 , a) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Sint32x2 , offset : std :: mem :: offset_of ! (VertexInput0 , b) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Sint32x3 , offset : std :: mem :: offset_of ! (VertexInput0 , c) as u64 , shader_location : 2 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Sint32x4 , offset : std :: mem :: offset_of ! (VertexInput0 , d) as u64 , shader_location : 3 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput0 > () as u64 , step_mode , attributes : & VertexInput0 :: VERTEX_ATTRIBUTES } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::write_vertex_module_single_input_sint32' (6036) panicked at src/lib.rs:984:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_vertex_module_single_input_sint32.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df761d94 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df761d94 - wgsl_to_wgpu::test::write_vertex_module_single_input_sint32::{{closure}}::h185ddbaa5cb6c828
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5df2df751564 - insta::settings::Settings::bind::h96fd2c62672372c2
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df7618a6 - wgsl_to_wgpu::test::write_vertex_module_single_input_sint32::h4beadedd5d6a5418
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5df2df761e97 - wgsl_to_wgpu::test::write_vertex_module_single_input_sint32::{{closure}}::h43fdd484f284279f
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:967:49
[INFO] [stdout]   25:     0x5df2df7078a6 - core::ops::function::FnOnce::call_once::h40c8bd752cdfd820
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- structs::tests::write_all_structs_skip_stage_outputs stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'structs::tests::write_all_structs_skip_stage_outputs' (44) panicked at src/structs.rs:414:9:
[INFO] [stdout] assertion failed: `(left == right)`
[INFO] [stdout] 
[INFO] [stdout] [1mDiff[0m [31m< left[0m / [32mright >[0m :
[INFO] [stdout] [31m<# [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f32 , pub d : f64 [0m[1;48;5;52;31m, [0m[31m}[0m
[INFO] [stdout] [32m># [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f32 , pub d : f64 }[0m
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2df71daa2 - wgsl_to_wgpu::structs::tests::write_all_structs_skip_stage_outputs::h79e603b87a4bd488
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:681:13
[INFO] [stdout]   20:     0x5df2df71db27 - wgsl_to_wgpu::structs::tests::write_all_structs_skip_stage_outputs::{{closure}}::h0494a4446b34c507
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:375:46
[INFO] [stdout]   21:     0x5df2df707676 - core::ops::function::FnOnce::call_once::h1bf35c45ea7862df
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   33:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   34:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   39:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   41:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   42:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   43:     0x710669a9ba64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::vertex_entries stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/vertex_entries.snap
[INFO] [stdout] Snapshot: vertex_entries
[INFO] [stdout] Source: src/lib.rs:1143
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub const ENTRY_VS_MAIN_NONE: &str = "vs_main_none";
[INFO] [stdout]     2       │-pub const ENTRY_VS_MAIN_SINGLE: &str = "vs_main_single";
[INFO] [stdout]     3       │-pub const ENTRY_VS_MAIN_MULTIPLE: &str = "vs_main_multiple";
[INFO] [stdout]     4       │-#[derive(Debug)]
[INFO] [stdout]     5       │-pub struct VertexEntry<const N: usize> {
[INFO] [stdout]     6       │-    pub entry_point: &'static str,
[INFO] [stdout]     7       │-    pub buffers: [wgpu::VertexBufferLayout<'static>; N],
[INFO] [stdout]     8       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]     9       │-}
[INFO] [stdout]    10       │-pub fn vertex_state<'a, const N: usize>(
[INFO] [stdout]    11       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]    12       │-    entry: &'a VertexEntry<N>,
[INFO] [stdout]    13       │-) -> wgpu::VertexState<'a> {
[INFO] [stdout]    14       │-    wgpu::VertexState {
[INFO] [stdout]    15       │-        module,
[INFO] [stdout]    16       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]    17       │-        buffers: &entry.buffers,
[INFO] [stdout]    18       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]    19       │-            constants: &entry.constants,
[INFO] [stdout]    20       │-            ..Default::default()
[INFO] [stdout]    21       │-        },
[INFO] [stdout]    22       │-    }
[INFO] [stdout]    23       │-}
[INFO] [stdout]    24       │-pub fn vs_main_none_entry() -> VertexEntry<0> {
[INFO] [stdout]    25       │-    VertexEntry {
[INFO] [stdout]    26       │-        entry_point: ENTRY_VS_MAIN_NONE,
[INFO] [stdout]    27       │-        buffers: [],
[INFO] [stdout]    28       │-        constants: Default::default(),
[INFO] [stdout]    29       │-    }
[INFO] [stdout]    30       │-}
[INFO] [stdout]    31       │-pub fn vs_main_single_entry(input0: wgpu::VertexStepMode) -> VertexEntry<1> {
[INFO] [stdout]    32       │-    VertexEntry {
[INFO] [stdout]    33       │-        entry_point: ENTRY_VS_MAIN_SINGLE,
[INFO] [stdout]    34       │-        buffers: [Input0::vertex_buffer_layout(input0)],
[INFO] [stdout]    35       │-        constants: Default::default(),
[INFO] [stdout]    36       │-    }
[INFO] [stdout]    37       │-}
[INFO] [stdout]    38       │-pub fn vs_main_multiple_entry(
[INFO] [stdout]    39       │-    input0: wgpu::VertexStepMode,
[INFO] [stdout]    40       │-    input1: wgpu::VertexStepMode,
[INFO] [stdout]    41       │-) -> VertexEntry<2> {
[INFO] [stdout]    42       │-    VertexEntry {
[INFO] [stdout]    43       │-        entry_point: ENTRY_VS_MAIN_MULTIPLE,
[INFO] [stdout]    44       │-        buffers: [
[INFO] [stdout]    45       │-            Input0::vertex_buffer_layout(input0),
[INFO] [stdout]    46       │-            Input1::vertex_buffer_layout(input1),
[INFO] [stdout]    47       │-        ],
[INFO] [stdout]    48       │-        constants: Default::default(),
[INFO] [stdout]    49       │-    }
[INFO] [stdout]    50       │-}
[INFO] [stdout]    51       │-pub const SOURCE: &str = include_str!("shader.wgsl");
[INFO] [stdout]    52       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]    53       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]    54       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]    55       │-        label: None,
[INFO] [stdout]    56       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]    57       │-    })
[INFO] [stdout]    58       │-}
[INFO] [stdout]    59       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]    60       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]    61       │-        label: None,
[INFO] [stdout]    62       │-        bind_group_layouts: &[],
[INFO] [stdout]    63       │-        immediate_size: 0,
[INFO] [stdout]    64       │-    })
[INFO] [stdout]    65       │-}
[INFO] [stdout]    66       │-#[repr(C)]
[INFO] [stdout]    67       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]    68       │-pub struct Input0 {
[INFO] [stdout]    69       │-    pub in0: [f32; 4],
[INFO] [stdout]    70       │-    pub in1: [f32; 4],
[INFO] [stdout]    71       │-    pub in2: [f32; 4],
[INFO] [stdout]    72       │-}
[INFO] [stdout]    73       │-impl Input0 {
[INFO] [stdout]    74       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 3] = [
[INFO] [stdout]    75       │-        wgpu::VertexAttribute {
[INFO] [stdout]    76       │-            format: wgpu::VertexFormat::Float32x4,
[INFO] [stdout]    77       │-            offset: std::mem::offset_of!(Input0, in0) as u64,
[INFO] [stdout]    78       │-            shader_location: 0,
[INFO] [stdout]    79       │-        },
[INFO] [stdout]    80       │-        wgpu::VertexAttribute {
[INFO] [stdout]    81       │-            format: wgpu::VertexFormat::Float32x4,
[INFO] [stdout]    82       │-            offset: std::mem::offset_of!(Input0, in1) as u64,
[INFO] [stdout]    83       │-            shader_location: 1,
[INFO] [stdout]    84       │-        },
[INFO] [stdout]    85       │-        wgpu::VertexAttribute {
[INFO] [stdout]    86       │-            format: wgpu::VertexFormat::Float32x4,
[INFO] [stdout]    87       │-            offset: std::mem::offset_of!(Input0, in2) as u64,
[INFO] [stdout]    88       │-            shader_location: 2,
[INFO] [stdout]    89       │-        },
[INFO] [stdout]    90       │-    ];
[INFO] [stdout]    91       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]    92       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]    93       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    94       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]    95       │-            array_stride: std::mem::size_of::<Input0>() as u64,
[INFO] [stdout]    96       │-            step_mode,
[INFO] [stdout]    97       │-            attributes: &Input0::VERTEX_ATTRIBUTES,
[INFO] [stdout]    98       │-        }
[INFO] [stdout]    99       │-    }
[INFO] [stdout]   100       │-}
[INFO] [stdout]   101       │-#[repr(C)]
[INFO] [stdout]   102       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   103       │-pub struct Input1 {
[INFO] [stdout]   104       │-    pub in3: [f32; 4],
[INFO] [stdout]   105       │-    pub in4: [f32; 4],
[INFO] [stdout]   106       │-    pub in5: [f32; 4],
[INFO] [stdout]   107       │-    pub in6: [u32; 4],
[INFO] [stdout]   108       │-}
[INFO] [stdout]   109       │-impl Input1 {
[INFO] [stdout]   110       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 4] = [
[INFO] [stdout]   111       │-        wgpu::VertexAttribute {
[INFO] [stdout]   112       │-            format: wgpu::VertexFormat::Float32x4,
[INFO] [stdout]   113       │-            offset: std::mem::offset_of!(Input1, in3) as u64,
[INFO] [stdout]   114       │-            shader_location: 3,
[INFO] [stdout]   115       │-        },
[INFO] [stdout]   116       │-        wgpu::VertexAttribute {
[INFO] [stdout]   117       │-            format: wgpu::VertexFormat::Float32x4,
[INFO] [stdout]   118       │-            offset: std::mem::offset_of!(Input1, in4) as u64,
[INFO] [stdout]   119       │-            shader_location: 4,
[INFO] [stdout]   120       │-        },
[INFO] [stdout]   121       │-        wgpu::VertexAttribute {
[INFO] [stdout]   122       │-            format: wgpu::VertexFormat::Float32x4,
[INFO] [stdout]   123       │-            offset: std::mem::offset_of!(Input1, in5) as u64,
[INFO] [stdout]   124       │-            shader_location: 5,
[INFO] [stdout]   125       │-        },
[INFO] [stdout]   126       │-        wgpu::VertexAttribute {
[INFO] [stdout]   127       │-            format: wgpu::VertexFormat::Uint32x4,
[INFO] [stdout]   128       │-            offset: std::mem::offset_of!(Input1, in6) as u64,
[INFO] [stdout]   129       │-            shader_location: 6,
[INFO] [stdout]   130       │-        },
[INFO] [stdout]   131       │-    ];
[INFO] [stdout]   132       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]   133       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]   134       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]   135       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]   136       │-            array_stride: std::mem::size_of::<Input1>() as u64,
[INFO] [stdout]   137       │-            step_mode,
[INFO] [stdout]   138       │-            attributes: &Input1::VERTEX_ATTRIBUTES,
[INFO] [stdout]   139       │-        }
[INFO] [stdout]   140       │-    }
[INFO] [stdout]   141       │-}
[INFO] [stdout]           1 │+pub const ENTRY_VS_MAIN_NONE : & str = "vs_main_none" ; pub const ENTRY_VS_MAIN_SINGLE : & str = "vs_main_single" ; pub const ENTRY_VS_MAIN_MULTIPLE : & str = "vs_main_multiple" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn vs_main_none_entry () -> VertexEntry < 0 > { VertexEntry { entry_point : ENTRY_VS_MAIN_NONE , buffers : [] , constants : Default :: default () } } pub fn vs_main_single_entry (input0 : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_VS_MAIN_SINGLE , buffers : [Input0 :: vertex_buffer_layout (input0)] , constants : Default :: default () } } pub fn vs_main_multiple_entry (input0 : wgpu :: VertexStepMode , input1 : wgpu :: VertexStepMode ,) -> VertexEntry < 2 > { VertexEntry { entry_point : ENTRY_VS_MAIN_MULTIPLE , buffers : [Input0 :: vertex_buffer_layout (input0) , Input1 :: vertex_buffer_layout (input1)] , constants : Default :: default () } } pub const SOURCE : & str = include_str ! ("shader.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Input0 { pub in0 : [f32 ; 4] , pub in1 : [f32 ; 4] , pub in2 : [f32 ; 4] } impl Input0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 3] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input0 , in0) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input0 , in1) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input0 , in2) as u64 , shader_location : 2 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < Input0 > () as u64 , step_mode , attributes : & Input0 :: VERTEX_ATTRIBUTES } } } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Input1 { pub in3 : [f32 ; 4] , pub in4 : [f32 ; 4] , pub in5 : [f32 ; 4] , pub in6 : [u32 ; 4] } impl Input1 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 4] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input1 , in3) as u64 , shader_location : 3 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input1 , in4) as u64 , shader_location : 4 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input1 , in5) as u64 , shader_location : 5 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Uint32x4 , offset : std :: mem :: offset_of ! (Input1 , in6) as u64 , shader_location : 6 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < Input1 > () as u64 , step_mode , attributes : & Input1 :: VERTEX_ATTRIBUTES } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::vertex_entries' (5264) panicked at src/lib.rs:1143:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/vertex_entries.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df75abd9 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df75abd9 - wgsl_to_wgpu::test::vertex_entries::{{closure}}::hea01c46e143cda05
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5df2df7513ef - insta::settings::Settings::bind::h8f9e2adb72a773e5
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df75a744 - wgsl_to_wgpu::test::vertex_entries::h99a57edd8ba46950
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5df2df75a7e7 - wgsl_to_wgpu::test::vertex_entries::{{closure}}::hadf4daf29a6737bf
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1131:24
[INFO] [stdout]   25:     0x5df2df708126 - core::ops::function::FnOnce::call_once::heac568c8a5b34550
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::write_vertex_module_single_input_float64 stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_vertex_module_single_input_float64.snap
[INFO] [stdout] Snapshot: write_vertex_module_single_input_float64
[INFO] [stdout] Source: src/lib.rs:942
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-impl VertexInput0 {
[INFO] [stdout]     2       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 4] = [
[INFO] [stdout]     3       │-        wgpu::VertexAttribute {
[INFO] [stdout]     4       │-            format: wgpu::VertexFormat::Float64,
[INFO] [stdout]     5       │-            offset: std::mem::offset_of!(VertexInput0, a) as u64,
[INFO] [stdout]     6       │-            shader_location: 0,
[INFO] [stdout]     7       │-        },
[INFO] [stdout]     8       │-        wgpu::VertexAttribute {
[INFO] [stdout]     9       │-            format: wgpu::VertexFormat::Float64x2,
[INFO] [stdout]    10       │-            offset: std::mem::offset_of!(VertexInput0, b) as u64,
[INFO] [stdout]    11       │-            shader_location: 1,
[INFO] [stdout]    12       │-        },
[INFO] [stdout]    13       │-        wgpu::VertexAttribute {
[INFO] [stdout]    14       │-            format: wgpu::VertexFormat::Float64x3,
[INFO] [stdout]    15       │-            offset: std::mem::offset_of!(VertexInput0, c) as u64,
[INFO] [stdout]    16       │-            shader_location: 2,
[INFO] [stdout]    17       │-        },
[INFO] [stdout]    18       │-        wgpu::VertexAttribute {
[INFO] [stdout]    19       │-            format: wgpu::VertexFormat::Float64x4,
[INFO] [stdout]    20       │-            offset: std::mem::offset_of!(VertexInput0, d) as u64,
[INFO] [stdout]    21       │-            shader_location: 3,
[INFO] [stdout]    22       │-        },
[INFO] [stdout]    23       │-    ];
[INFO] [stdout]    24       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]    25       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]    26       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    27       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]    28       │-            array_stride: std::mem::size_of::<VertexInput0>() as u64,
[INFO] [stdout]    29       │-            step_mode,
[INFO] [stdout]    30       │-            attributes: &VertexInput0::VERTEX_ATTRIBUTES,
[INFO] [stdout]    31       │-        }
[INFO] [stdout]    32       │-    }
[INFO] [stdout]    33       │-}
[INFO] [stdout]           1 │+impl VertexInput0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 4] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float64 , offset : std :: mem :: offset_of ! (VertexInput0 , a) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float64x2 , offset : std :: mem :: offset_of ! (VertexInput0 , b) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float64x3 , offset : std :: mem :: offset_of ! (VertexInput0 , c) as u64 , shader_location : 2 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float64x4 , offset : std :: mem :: offset_of ! (VertexInput0 , d) as u64 , shader_location : 3 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput0 > () as u64 , step_mode , attributes : & VertexInput0 :: VERTEX_ATTRIBUTES } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::write_vertex_module_single_input_float64' (5761) panicked at src/lib.rs:942:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_vertex_module_single_input_float64.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df7641c4 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df7641c4 - wgsl_to_wgpu::test::write_vertex_module_single_input_float64::{{closure}}::h60bb7f45c1087757
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5df2df7516c4 - insta::settings::Settings::bind::h9d7e8fe72cb7ffb9
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df763ca6 - wgsl_to_wgpu::test::write_vertex_module_single_input_float64::h67c6b003199f635d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5df2df763d67 - wgsl_to_wgpu::test::write_vertex_module_single_input_float64::{{closure}}::h2ea25dae976823af
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:926:50
[INFO] [stdout]   25:     0x5df2df707ed6 - core::ops::function::FnOnce::call_once::hc4bcbb783c269da5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::write_vertex_module_single_input_uint32 stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_vertex_module_single_input_uint32.snap
[INFO] [stdout] Snapshot: write_vertex_module_single_input_uint32
[INFO] [stdout] Source: src/lib.rs:1004
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-impl VertexInput0 {
[INFO] [stdout]     2       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 4] = [
[INFO] [stdout]     3       │-        wgpu::VertexAttribute {
[INFO] [stdout]     4       │-            format: wgpu::VertexFormat::Uint32,
[INFO] [stdout]     5       │-            offset: std::mem::offset_of!(VertexInput0, a) as u64,
[INFO] [stdout]     6       │-            shader_location: 0,
[INFO] [stdout]     7       │-        },
[INFO] [stdout]     8       │-        wgpu::VertexAttribute {
[INFO] [stdout]     9       │-            format: wgpu::VertexFormat::Uint32x2,
[INFO] [stdout]    10       │-            offset: std::mem::offset_of!(VertexInput0, b) as u64,
[INFO] [stdout]    11       │-            shader_location: 1,
[INFO] [stdout]    12       │-        },
[INFO] [stdout]    13       │-        wgpu::VertexAttribute {
[INFO] [stdout]    14       │-            format: wgpu::VertexFormat::Uint32x3,
[INFO] [stdout]    15       │-            offset: std::mem::offset_of!(VertexInput0, c) as u64,
[INFO] [stdout]    16       │-            shader_location: 2,
[INFO] [stdout]    17       │-        },
[INFO] [stdout]    18       │-        wgpu::VertexAttribute {
[INFO] [stdout]    19       │-            format: wgpu::VertexFormat::Uint32x4,
[INFO] [stdout]    20       │-            offset: std::mem::offset_of!(VertexInput0, d) as u64,
[INFO] [stdout]    21       │-            shader_location: 3,
[INFO] [stdout]    22       │-        },
[INFO] [stdout]    23       │-    ];
[INFO] [stdout]    24       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]    25       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]    26       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    27       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]    28       │-            array_stride: std::mem::size_of::<VertexInput0>() as u64,
[INFO] [stdout]    29       │-            step_mode,
[INFO] [stdout]    30       │-            attributes: &VertexInput0::VERTEX_ATTRIBUTES,
[INFO] [stdout]    31       │-        }
[INFO] [stdout]    32       │-    }
[INFO] [stdout]    33       │-}
[INFO] [stdout]           1 │+impl VertexInput0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 4] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Uint32 , offset : std :: mem :: offset_of ! (VertexInput0 , a) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Uint32x2 , offset : std :: mem :: offset_of ! (VertexInput0 , b) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Uint32x3 , offset : std :: mem :: offset_of ! (VertexInput0 , c) as u64 , shader_location : 2 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Uint32x4 , offset : std :: mem :: offset_of ! (VertexInput0 , d) as u64 , shader_location : 3 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput0 > () as u64 , step_mode , attributes : & VertexInput0 :: VERTEX_ATTRIBUTES } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::write_vertex_module_single_input_uint32' (7943) panicked at src/lib.rs:1004:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_vertex_module_single_input_uint32.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df7626c4 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df7626c4 - wgsl_to_wgpu::test::write_vertex_module_single_input_uint32::{{closure}}::h59906f2885aaf52a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5df2df751d64 - insta::settings::Settings::bind::hf264a6624b3b5127
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df7621a6 - wgsl_to_wgpu::test::write_vertex_module_single_input_uint32::ha5f30151904f0fb2
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5df2df762267 - wgsl_to_wgpu::test::write_vertex_module_single_input_uint32::{{closure}}::h29c16a64d69f1edb
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:988:49
[INFO] [stdout]   25:     0x5df2df707a76 - core::ops::function::FnOnce::call_once::h7f0e995031311211
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::write_vertex_module_single_input_float32 stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_vertex_module_single_input_float32.snap
[INFO] [stdout] Snapshot: write_vertex_module_single_input_float32
[INFO] [stdout] Source: src/lib.rs:922
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-impl VertexInput0 {
[INFO] [stdout]     2       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 4] = [
[INFO] [stdout]     3       │-        wgpu::VertexAttribute {
[INFO] [stdout]     4       │-            format: wgpu::VertexFormat::Float32,
[INFO] [stdout]     5       │-            offset: std::mem::offset_of!(VertexInput0, a) as u64,
[INFO] [stdout]     6       │-            shader_location: 0,
[INFO] [stdout]     7       │-        },
[INFO] [stdout]     8       │-        wgpu::VertexAttribute {
[INFO] [stdout]     9       │-            format: wgpu::VertexFormat::Float32x2,
[INFO] [stdout]    10       │-            offset: std::mem::offset_of!(VertexInput0, b) as u64,
[INFO] [stdout]    11       │-            shader_location: 1,
[INFO] [stdout]    12       │-        },
[INFO] [stdout]    13       │-        wgpu::VertexAttribute {
[INFO] [stdout]    14       │-            format: wgpu::VertexFormat::Float32x3,
[INFO] [stdout]    15       │-            offset: std::mem::offset_of!(VertexInput0, c) as u64,
[INFO] [stdout]    16       │-            shader_location: 2,
[INFO] [stdout]    17       │-        },
[INFO] [stdout]    18       │-        wgpu::VertexAttribute {
[INFO] [stdout]    19       │-            format: wgpu::VertexFormat::Float32x4,
[INFO] [stdout]    20       │-            offset: std::mem::offset_of!(VertexInput0, d) as u64,
[INFO] [stdout]    21       │-            shader_location: 3,
[INFO] [stdout]    22       │-        },
[INFO] [stdout]    23       │-    ];
[INFO] [stdout]    24       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]    25       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]    26       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    27       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]    28       │-            array_stride: std::mem::size_of::<VertexInput0>() as u64,
[INFO] [stdout]    29       │-            step_mode,
[INFO] [stdout]    30       │-            attributes: &VertexInput0::VERTEX_ATTRIBUTES,
[INFO] [stdout]    31       │-        }
[INFO] [stdout]    32       │-    }
[INFO] [stdout]    33       │-}
[INFO] [stdout]           1 │+impl VertexInput0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 4] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32 , offset : std :: mem :: offset_of ! (VertexInput0 , a) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x2 , offset : std :: mem :: offset_of ! (VertexInput0 , b) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x3 , offset : std :: mem :: offset_of ! (VertexInput0 , c) as u64 , shader_location : 2 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (VertexInput0 , d) as u64 , shader_location : 3 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput0 > () as u64 , step_mode , attributes : & VertexInput0 :: VERTEX_ATTRIBUTES } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::write_vertex_module_single_input_float32' (5760) panicked at src/lib.rs:922:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_vertex_module_single_input_float32.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5df2dfed0722 - std::backtrace_rs::backtrace::libunwind::trace::h90e89fac33585832
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5df2dfed0722 - std::backtrace_rs::backtrace::trace_unsynchronized::heebcf2380a8e7359
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5df2dfed0722 - std::sys::backtrace::_print_fmt::hdf3e2a22d2f810db
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:68:9
[INFO] [stdout]    3:     0x5df2dfed0722 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hac1d885928ba8582
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:38:26
[INFO] [stdout]    4:     0x5df2dfee3b77 - core::fmt::rt::Argument::fmt::h6901eb7c19abebe8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5df2dfee3b77 - core::fmt::write::h83ebb4d32483be9e
[INFO] [stdout]    6:     0x5df2dfe9cbd6 - std::io::default_write_fmt::h751a79cdae495f10
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5df2dfe9cbd6 - std::io::Write::write_fmt::h9ef514f8700ff7b2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5df2dfeaf269 - std::sys::backtrace::BacktraceLock::print::hcc2e1a3ac996c911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:41:9
[INFO] [stdout]    9:     0x5df2dfeaf269 - std::panicking::default_hook::{{closure}}::h8e9c4d1276f0925f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5df2dfeaf101 - std::panicking::default_hook::h2b2078d38b534dfb
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5df2df90d0ee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39d051e7dedac6a7
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5df2df90d0ee - test::test_main_with_exit_callback::{{closure}}::h4b005fe75814c302
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5df2dfeaf592 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd426070722c13cbf
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5df2dfeaf592 - std::panicking::panic_with_hook::h39b739724e701bfd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5df2dfeaf328 - std::panicking::panic_handler::{{closure}}::he540c4833054e458
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5df2dfea98e9 - std::sys::backtrace::__rust_end_short_backtrace::hfa179d89deec8aed
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:176:18
[INFO] [stdout]   17:     0x5df2dfe9075d - __rustc[d131491b17107b07]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5df2dfeedfbc - core::panicking::panic_fmt::ha564519d657d9c46
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5df2dfeed312 - core::result::unwrap_failed::h23873bb39ca9a844
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5df2df7638c4 - core::result::Result<T,E>::unwrap::h86385ebe8061a5d5
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5df2df7638c4 - wgsl_to_wgpu::test::write_vertex_module_single_input_float32::{{closure}}::h7671e37f41a37096
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5df2df751984 - insta::settings::Settings::bind::hb1400bca57a0dcb3
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5df2df7633a6 - wgsl_to_wgpu::test::write_vertex_module_single_input_float32::h6cdba32e0e375a58
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5df2df763467 - wgsl_to_wgpu::test::write_vertex_module_single_input_float32::{{closure}}::h700574d54d532aee
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:906:50
[INFO] [stdout]   25:     0x5df2df7080a6 - core::ops::function::FnOnce::call_once::he718ce03dafbefe9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5df2df90cf1b - core::ops::function::FnOnce::call_once::h0217b30cfdee2e67
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5df2df90cf1b - test::__rust_begin_short_backtrace::h6d98714a1e28f556
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5df2df9208aa - test::run_test_in_process::{{closure}}::he2c70d2634d3a3cc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5df2df9208aa - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h40a0a825bcf17fdd
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5df2df9208aa - std::panicking::catch_unwind::do_call::h6c8eb5dd6e7b5975
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5df2df9208aa - std::panicking::catch_unwind::h55455eac2972ad1e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5df2df9208aa - std::panic::catch_unwind::h0025465150a5e558
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5df2df9208aa - test::run_test_in_process::hb61e682f9b630fbc
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5df2df9208aa - test::run_test::{{closure}}::hc2c2a7a38ab176e2
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5df2df8fab44 - test::run_test::{{closure}}::ha91867b85cd2a911
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5df2df8fab44 - std::sys::backtrace::__rust_begin_short_backtrace::ha00a9fe02049c339
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/backtrace.rs:160:18
[INFO] [stdout]   37:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd629fba9153dfb55
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:92:13
[INFO] [stdout]   38:     0x5df2df8fe472 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4189018816a5c5d9
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5df2df8fe472 - std::panicking::catch_unwind::do_call::hf9fcdbca3c2e9877
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5df2df8fe472 - std::panicking::catch_unwind::h97b92d88631c7c64
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5df2df8fe472 - std::panic::catch_unwind::ha77cdbb68e725e5e
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5df2df8fe472 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h511f05bc1a132253
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/thread/lifecycle.rs:90:26
[INFO] [stdout]   43:     0x5df2df8fe472 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6b68b31e9b685cb8
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5df2dfea4d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h22a27d165e4e871d
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5df2dfea4d8f - std::sys::thread::unix::Thread::new::thread_start::h45cc87bb053add0f
[INFO] [stdout]                                at /rustc/254b59607d4417e9dffbc307138ae5c86280fe4c/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x710669a0eaa4 - <unknown>
[INFO] [stdout]   47:     0x710669a9ba64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     bindgroup::tests::bind_groups_module_compute
[INFO] [stdout]     bindgroup::tests::bind_groups_module_fragment
[INFO] [stdout]     bindgroup::tests::bind_groups_module_vertex
[INFO] [stdout]     bindgroup::tests::bind_groups_module_vertex_fragment
[INFO] [stdout]     structs::tests::write_all_structs_bytemuck_f64_vec
[INFO] [stdout]     structs::tests::write_all_structs_bytemuck_input_layout_validation
[INFO] [stdout]     structs::tests::write_all_structs_bytemuck_skip_input_layout_validation
[INFO] [stdout]     structs::tests::write_all_structs_encase_bytemuck
[INFO] [stdout]     structs::tests::write_all_structs_serde_encase_bytemuck
[INFO] [stdout]     structs::tests::write_all_structs_skip_stage_outputs
[INFO] [stdout]     structs::tests::write_runtime_sized_array
[INFO] [stdout]     test::add_duplicate_module_different_paths
[INFO] [stdout]     test::add_single_root_module
[INFO] [stdout]     test::create_shader_modules_source_rustfmt
[INFO] [stdout]     test::mesh_shader
[INFO] [stdout]     test::shader_stage_collection
[INFO] [stdout]     test::single_root_module
[INFO] [stdout]     test::vertex_entries
[INFO] [stdout]     test::write_vertex_module_single_input_float16
[INFO] [stdout]     test::write_vertex_module_single_input_float32
[INFO] [stdout]     test::write_vertex_module_single_input_float64
[INFO] [stdout]     test::write_vertex_module_single_input_sint32
[INFO] [stdout]     test::write_vertex_module_single_input_uint32
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 24 passed; 23 failed; 0 ignored; 0 measured; 0 filtered out; finished in 11.82s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "4f91d1609f250a85d6fbf5b4262979c9d1f675aecef179ac06d21a94841c949f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4f91d1609f250a85d6fbf5b4262979c9d1f675aecef179ac06d21a94841c949f", kill_on_drop: false }`
[INFO] [stdout] 4f91d1609f250a85d6fbf5b4262979c9d1f675aecef179ac06d21a94841c949f
