[INFO] fetching crate wgsl_to_wgpu 0.16.0...
[INFO] testing wgsl_to_wgpu-0.16.0 against beta-2025-10-28 for beta-1.92-2
[INFO] extracting crate wgsl_to_wgpu 0.16.0 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate wgsl_to_wgpu 0.16.0
[INFO] finished tweaking crates.io crate wgsl_to_wgpu 0.16.0
[INFO] tweaked toml for crates.io crate wgsl_to_wgpu 0.16.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate wgsl_to_wgpu 0.16.0 on toolchain beta-2025-10-28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate wgsl_to_wgpu 0.16.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fe481213dec4a0630ff9823e778986382a34f902d47a77a7bfedde25b857558f
[INFO] running `Command { std: "docker" "start" "-a" "fe481213dec4a0630ff9823e778986382a34f902d47a77a7bfedde25b857558f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fe481213dec4a0630ff9823e778986382a34f902d47a77a7bfedde25b857558f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fe481213dec4a0630ff9823e778986382a34f902d47a77a7bfedde25b857558f", kill_on_drop: false }`
[INFO] [stdout] fe481213dec4a0630ff9823e778986382a34f902d47a77a7bfedde25b857558f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5f79c2fb3edc0b516f68dac72f0d4e3c69673d91930d2dc0d473e40b737b8164
[INFO] running `Command { std: "docker" "start" "-a" "5f79c2fb3edc0b516f68dac72f0d4e3c69673d91930d2dc0d473e40b737b8164", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling unicode-ident v1.0.19
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling naga v27.0.0
[INFO] [stderr]    Compiling bitflags v2.9.4
[INFO] [stderr]    Compiling codespan-reporting v0.12.0
[INFO] [stderr]    Compiling hexf-parse v0.2.1
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling case v1.0.0
[INFO] [stderr]    Compiling hashbrown v0.16.0
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]    Compiling indexmap v2.11.4
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling half v2.6.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling bytemuck v1.24.0
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling wgpu-types v27.0.1
[INFO] [stderr]    Compiling wgsl_to_wgpu v0.16.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 19.89s
[INFO] running `Command { std: "docker" "inspect" "5f79c2fb3edc0b516f68dac72f0d4e3c69673d91930d2dc0d473e40b737b8164", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5f79c2fb3edc0b516f68dac72f0d4e3c69673d91930d2dc0d473e40b737b8164", kill_on_drop: false }`
[INFO] [stdout] 5f79c2fb3edc0b516f68dac72f0d4e3c69673d91930d2dc0d473e40b737b8164
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b8b1d4dce1bf97134e19c13347753f272f1b39fc0ab32f6d794aaf7ad96f0265
[INFO] running `Command { std: "docker" "start" "-a" "b8b1d4dce1bf97134e19c13347753f272f1b39fc0ab32f6d794aaf7ad96f0265", kill_on_drop: false }`
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling naga v27.0.0
[INFO] [stderr]    Compiling insta v1.43.2
[INFO] [stderr]    Compiling wgsl_to_wgpu v0.16.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `assert_tokens_snapshot`
[INFO] [stdout]    --> src/consts.rs:161:35
[INFO] [stdout]     |
[INFO] [stdout] 161 |     use crate::{assert_tokens_eq, assert_tokens_snapshot, demangle_identity};
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 12.60s
[INFO] running `Command { std: "docker" "inspect" "b8b1d4dce1bf97134e19c13347753f272f1b39fc0ab32f6d794aaf7ad96f0265", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b8b1d4dce1bf97134e19c13347753f272f1b39fc0ab32f6d794aaf7ad96f0265", kill_on_drop: false }`
[INFO] [stdout] b8b1d4dce1bf97134e19c13347753f272f1b39fc0ab32f6d794aaf7ad96f0265
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] d4263e74754b8f4c0a49d18ef28a1df650440b02c93fe5a51c9210af36108f25
[INFO] running `Command { std: "docker" "start" "-a" "d4263e74754b8f4c0a49d18ef28a1df650440b02c93fe5a51c9210af36108f25", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `assert_tokens_snapshot`
[INFO] [stderr]    --> src/consts.rs:161:35
[INFO] [stderr]     |
[INFO] [stderr] 161 |     use crate::{assert_tokens_eq, assert_tokens_snapshot, demangle_identity};
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `wgsl_to_wgpu` (lib test) generated 1 warning (run `cargo fix --lib -p wgsl_to_wgpu --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/wgsl_to_wgpu-e0896a7b1a440099)
[INFO] [stdout] 
[INFO] [stdout] running 46 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_nalgebra ... ok
[INFO] [stdout] test structs::tests::write_all_structs_glam ... ok
[INFO] [stdout] test structs::tests::write_runtime_sized_array_bytemuck_vertex - should panic ... ok
[INFO] [stdout] test structs::tests::write_runtime_sized_array_no_encase - should panic ... ok
[INFO] [stdout] test structs::tests::write_runtime_sized_array_not_last_field - should panic ... ok
[INFO] [stdout] test structs::tests::write_runtime_sized_array_bytemuck_host_shareable - 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_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_push_constants ... 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 bindgroup::tests::bind_groups_module_vertex ... FAILED
[INFO] [stdout] test structs::tests::write_all_structs_serde_encase_bytemuck ... FAILED
[INFO] [stdout] test structs::tests::write_all_structs_bytemuck_input_layout_validation ... FAILED
[INFO] [stdout] test test::create_shader_multiple_entries ... ok
[INFO] [stdout] test structs::tests::write_all_structs_encase_bytemuck ... FAILED
[INFO] [stdout] test bindgroup::tests::bind_groups_module_fragment ... FAILED
[INFO] [stdout] test bindgroup::tests::bind_groups_module_compute ... FAILED
[INFO] [stdout] test bindgroup::tests::bind_groups_module_vertex_fragment ... FAILED
[INFO] [stdout] test test::create_shader_modules_source_rustfmt ... FAILED
[INFO] [stdout] test test::add_single_root_module ... FAILED
[INFO] [stdout] test test::add_duplicate_module_different_paths ... FAILED
[INFO] [stdout] test consts::tests::write_global_constants ... ok
[INFO] [stdout] test test::write_vertex_module_single_input_float16 ... FAILED
[INFO] [stdout] test structs::tests::write_all_structs_bytemuck_f64_vec ... FAILED
[INFO] [stdout] test test::shader_stage_collection ... FAILED
[INFO] [stdout] test structs::tests::write_all_structs_bytemuck_skip_input_layout_validation ... FAILED
[INFO] [stdout] test structs::tests::write_runtime_sized_array ... FAILED
[INFO] [stdout] test test::vertex_entries ... FAILED
[INFO] [stdout] test test::write_vertex_module_single_input_sint32 ... FAILED
[INFO] [stdout] test test::single_root_module ... FAILED
[INFO] [stdout] test structs::tests::write_all_structs_skip_stage_outputs ... FAILED
[INFO] [stdout] test test::write_vertex_module_single_input_float64 ... FAILED
[INFO] [stdout] test consts::tests::write_pipeline_overrideable_constants_empty ... ok
[INFO] [stdout] test test::write_vertex_module_single_input_float32 ... FAILED
[INFO] [stdout] test test::write_vertex_module_single_input_uint32 ... FAILED
[INFO] [stdout] test test::write_vertex_module_empty ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[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:646
[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:646: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99e759d - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99e759d - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex::{{closure}}::h65298f2db0524687
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:727:17
[INFO] [stdout]   22:     0x556cf9a10724 - insta::settings::Settings::bind::he7c3d80c209ed6da
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99e707b - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex::hce28f1bd5028186d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:726:22
[INFO] [stdout]   24:     0x556cf99e7157 - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex::{{closure}}::h46171d3cadc57b95
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bindgroup.rs:643:35
[INFO] [stdout]   25:     0x556cf9a334d6 - core::ops::function::FnOnce::call_once::ha6042d8f5f07f512
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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       │-        push_constant_ranges: &[],
[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 : & [] , push_constant_ranges : & [] , }) } # [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' (42) 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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf9a42b49 - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf9a42b49 - wgsl_to_wgpu::structs::tests::write_all_structs_serde_encase_bytemuck::{{closure}}::hf24e2c60001aef8f
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:740:17
[INFO] [stdout]   22:     0x556cf9a0fe8f - insta::settings::Settings::bind::h62160632b824174d
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf9a426ba - wgsl_to_wgpu::structs::tests::write_all_structs_serde_encase_bytemuck::he0700734de998b63
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:739:22
[INFO] [stdout]   24:     0x556cf9a42757 - wgsl_to_wgpu::structs::tests::write_all_structs_serde_encase_bytemuck::{{closure}}::h2add4822c27e6406
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:356:49
[INFO] [stdout]   25:     0x556cf9a33496 - core::ops::function::FnOnce::call_once::ha1ad7445cb26be2a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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       │-        push_constant_ranges: &[],
[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 : & [] , push_constant_ranges : & [] , }) } # [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' (35) 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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf9a43aa9 - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf9a43aa9 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_input_layout_validation::{{closure}}::ha5115ff218f1167a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:740:17
[INFO] [stdout]   22:     0x556cf9a0f9ef - insta::settings::Settings::bind::h31a49ce5d84eded7
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf9a4361a - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_input_layout_validation::h5e1cb0f6a59d63d4
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:739:22
[INFO] [stdout]   24:     0x556cf9a436b7 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_input_layout_validation::{{closure}}::h15b2e8c6da18f2bf
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:522:60
[INFO] [stdout]   25:     0x556cf9a32eb6 - core::ops::function::FnOnce::call_once::h3f389f46727c08dd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[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       │-        push_constant_ranges: &[],
[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 : & [] , push_constant_ranges : & [] , }) } # [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' (37) 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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf9a40ad9 - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf9a40ad9 - wgsl_to_wgpu::structs::tests::write_all_structs_encase_bytemuck::{{closure}}::h5b790ffeeeaa75ce
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:740:17
[INFO] [stdout]   22:     0x556cf9a0fb4f - insta::settings::Settings::bind::h4ff3564a41554ebf
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf9a4067a - wgsl_to_wgpu::structs::tests::write_all_structs_encase_bytemuck::h6c5be192c83919fd
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:739:22
[INFO] [stdout]   24:     0x556cf9a40bc7 - wgsl_to_wgpu::structs::tests::write_all_structs_encase_bytemuck::{{closure}}::hc5c4a1a1d7d92071
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:337:43
[INFO] [stdout]   25:     0x556cf9a33326 - core::ops::function::FnOnce::call_once::h86df2cd34606a8e9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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:653
[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:653: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99e8add - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99e8add - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_fragment::{{closure}}::hef53c6843f53cc2a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:727:17
[INFO] [stdout]   22:     0x556cf9a103e4 - insta::settings::Settings::bind::hb81fed29a4a35691
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99e85bb - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_fragment::h259544a3ccb70b6a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:726:22
[INFO] [stdout]   24:     0x556cf99e8697 - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_fragment::{{closure}}::hd30593bbb1f79dcc
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bindgroup.rs:650:37
[INFO] [stdout]   25:     0x556cf9a330d6 - core::ops::function::FnOnce::call_once::h671fa7e0fd5f31c0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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:632
[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, Copy, Clone)]
[INFO] [stdout]   115       │-    pub struct BindGroups<'a> {
[INFO] [stdout]   116       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]   117       │-        pub bind_group1: &'a BindGroup1,
[INFO] [stdout]   118       │-    }
[INFO] [stdout]   119       │-    impl BindGroups<'_> {
[INFO] [stdout]   120       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   121       │-            self.bind_group0.set(pass);
[INFO] [stdout]   122       │-            self.bind_group1.set(pass);
[INFO] [stdout]   123       │-        }
[INFO] [stdout]   124       │-    }
[INFO] [stdout]   125       │-    pub trait SetBindGroup {
[INFO] [stdout]   126       │-        fn set_bind_group(
[INFO] [stdout]   127       │-            &mut self,
[INFO] [stdout]   128       │-            index: u32,
[INFO] [stdout]   129       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   130       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   131       │-        );
[INFO] [stdout]   132       │-    }
[INFO] [stdout]   133       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]   134       │-        fn set_bind_group(
[INFO] [stdout]   135       │-            &mut self,
[INFO] [stdout]   136       │-            index: u32,
[INFO] [stdout]   137       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   138       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   139       │-        ) {
[INFO] [stdout]   140       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   141       │-        }
[INFO] [stdout]   142       │-    }
[INFO] [stdout]   143       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]   144       │-        fn set_bind_group(
[INFO] [stdout]   145       │-            &mut self,
[INFO] [stdout]   146       │-            index: u32,
[INFO] [stdout]   147       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   148       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   149       │-        ) {
[INFO] [stdout]   150       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   151       │-        }
[INFO] [stdout]   152       │-    }
[INFO] [stdout]   153       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]   154       │-        fn set_bind_group(
[INFO] [stdout]   155       │-            &mut self,
[INFO] [stdout]   156       │-            index: u32,
[INFO] [stdout]   157       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   158       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   159       │-        ) {
[INFO] [stdout]   160       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   161       │-        }
[INFO] [stdout]   162       │-    }
[INFO] [stdout]   163       │-}
[INFO] [stdout]   164       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]   165       │-    pass: &mut P,
[INFO] [stdout]   166       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]   167       │-    bind_group1: &bind_groups::BindGroup1,
[INFO] [stdout]   168       │-) {
[INFO] [stdout]   169       │-    bind_group0.set(pass);
[INFO] [stdout]   170       │-    bind_group1.set(pass);
[INFO] [stdout]   171       │-}
[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 , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 , pub bind_group1 : & 'a BindGroup1 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; self . bind_group1 . 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_group0 . set (pass) ; bind_group1 . set (pass) ; }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'bindgroup::tests::bind_groups_module_compute' (28) panicked at src/bindgroup.rs:632: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99e800d - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99e800d - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_compute::{{closure}}::h9f4a099059383629
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:727:17
[INFO] [stdout]   22:     0x556cf9a0ff44 - insta::settings::Settings::bind::h72cc88fa31e1e14e
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99e7b1b - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_compute::hd857b43f73216b41
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:726:22
[INFO] [stdout]   24:     0x556cf99e8107 - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_compute::{{closure}}::hf4be29adb275ab2e
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bindgroup.rs:631:36
[INFO] [stdout]   25:     0x556cf9a33456 - core::ops::function::FnOnce::call_once::h9f79af34ed126095
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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:639
[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:639: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99e957d - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99e957d - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex_fragment::{{closure}}::hc87a09ff5e6ba1cb
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:727:17
[INFO] [stdout]   22:     0x556cf9a0f744 - insta::settings::Settings::bind::h0f8c84a38de19382
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99e905b - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex_fragment::h1c702ac51d15685a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:726:22
[INFO] [stdout]   24:     0x556cf99e9137 - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex_fragment::{{closure}}::h03ef33550cbb9dbc
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bindgroup.rs:636:44
[INFO] [stdout]   25:     0x556cf9a32d36 - core::ops::function::FnOnce::call_once::h1738350c5a03769a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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:918
[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       │-        push_constant_ranges: &[],
[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 : & [] , push_constant_ranges : & [] , }) }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::create_shader_modules_source_rustfmt' (508) panicked at src/lib.rs:918: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99e1b69 - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99e1b69 - wgsl_to_wgpu::test::create_shader_modules_source_rustfmt::{{closure}}::hfed72dd0bb9d52ac
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:740:17
[INFO] [stdout]   22:     0x556cf9a1028f - insta::settings::Settings::bind::hada2a16ea272cc2c
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99e16ce - wgsl_to_wgpu::test::create_shader_modules_source_rustfmt::hf67d1133c4954780
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:739:22
[INFO] [stdout]   24:     0x556cf99e1777 - wgsl_to_wgpu::test::create_shader_modules_source_rustfmt::{{closure}}::h17c720bd4bd7e4e8
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:907:46
[INFO] [stdout]   25:     0x556cf9a33786 - core::ops::function::FnOnce::call_once::hcc188bc0dd9b5288
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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:1188
[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       │-        push_constant_ranges: &[],
[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)] , push_constant_ranges : & [] , }) } # [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' (383) panicked at src/lib.rs:1188: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99dd729 - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99dd729 - wgsl_to_wgpu::test::add_single_root_module::{{closure}}::hc2a156d869698ebd
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:740:17
[INFO] [stdout]   22:     0x556cf9a0fbef - insta::settings::Settings::bind::h5589a86dd680ddb6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99dd2bb - wgsl_to_wgpu::test::add_single_root_module::h0b555ccd60dfc1a8
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:739:22
[INFO] [stdout]   24:     0x556cf99dd817 - wgsl_to_wgpu::test::add_single_root_module::{{closure}}::hfd3f6533e36dbbea
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1172:32
[INFO] [stdout]   25:     0x556cf9a33266 - core::ops::function::FnOnce::call_once::h6fa863c2dc38f277
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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:1221
[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       │-            push_constant_ranges: &[],
[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       │-                push_constant_ranges: &[],
[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)] , push_constant_ranges : & [] , }) } # [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)] , push_constant_ranges : & [] , }) } # [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' (382) panicked at src/lib.rs:1221: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99e1319 - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99e1319 - wgsl_to_wgpu::test::add_duplicate_module_different_paths::{{closure}}::hcdf5799c73b6dc36
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:740:17
[INFO] [stdout]   22:     0x556cf9a1008f - insta::settings::Settings::bind::h912bb00450e74ee3
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99e0e6b - wgsl_to_wgpu::test::add_duplicate_module_different_paths::h87fbd576402a9464
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:739:22
[INFO] [stdout]   24:     0x556cf99e0f27 - wgsl_to_wgpu::test::add_duplicate_module_different_paths::{{closure}}::h98cec02e57be6d7b
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1192:46
[INFO] [stdout]   25:     0x556cf9a33616 - core::ops::function::FnOnce::call_once::hb62309d7abfce1e9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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:1057
[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' (5484) panicked at src/lib.rs:1057: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99e47b4 - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99e47b4 - wgsl_to_wgpu::test::write_vertex_module_single_input_float16::{{closure}}::h5364a836600c325f
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:727:17
[INFO] [stdout]   22:     0x556cf9a10144 - insta::settings::Settings::bind::ha21ebb441efed71f
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99e42c6 - wgsl_to_wgpu::test::write_vertex_module_single_input_float16::h3b6283950fd25ef5
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:726:22
[INFO] [stdout]   24:     0x556cf99e48b7 - wgsl_to_wgpu::test::write_vertex_module_single_input_float16::{{closure}}::h87ec827643c5681a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1040:50
[INFO] [stdout]   25:     0x556cf9a32f76 - core::ops::function::FnOnce::call_once::h483d5cbc00e4e9f9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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' (34) 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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cf9a416ef - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_f64_vec::h193c7361c47d0f5d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:712:13
[INFO] [stdout]   20:     0x556cf9a41777 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_f64_vec::{{closure}}::h7ed1815c6b406637
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:476:44
[INFO] [stdout]   21:     0x556cf9a33116 - core::ops::function::FnOnce::call_once::h675c2f388c072b9f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   27:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   28:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   33:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   34:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   36:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   37:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   39:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   41:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   42:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   43:     0x74b0903cca64 - 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:1254
[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       │-        push_constant_ranges: &[],
[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)] , push_constant_ranges : & [] , }) }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::shader_stage_collection' (4972) panicked at src/lib.rs:1254: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99ddf59 - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99ddf59 - wgsl_to_wgpu::test::shader_stage_collection::{{closure}}::hb456b759022f568c
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:740:17
[INFO] [stdout]   22:     0x556cf9a0fdef - insta::settings::Settings::bind::h5f098ae769ce5315
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99ddaf8 - wgsl_to_wgpu::test::shader_stage_collection::haa7a0da0ae103451
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:739:22
[INFO] [stdout]   24:     0x556cf99de047 - wgsl_to_wgpu::test::shader_stage_collection::{{closure}}::hd3e78685d00fc7e4
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1241:33
[INFO] [stdout]   25:     0x556cf9a33416 - core::ops::function::FnOnce::call_once::h9e040643556f05ab
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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' (36) 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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cf9a4468f - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_skip_input_layout_validation::hd621deca7aa50a9b
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:712:13
[INFO] [stdout]   20:     0x556cf9a44717 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_skip_input_layout_validation::{{closure}}::hd13eecc5d4aad5ac
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:430:65
[INFO] [stdout]   21:     0x556cf9a32ef6 - core::ops::function::FnOnce::call_once::h404e6273eae90d98
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   27:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   28:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   33:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   34:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   36:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   37:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   39:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   41:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   42:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   43:     0x74b0903cca64 - clone
[INFO] [stdout]   44:                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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cf9a3fba1 - wgsl_to_wgpu::structs::tests::write_runtime_sized_array::heca9c3534e04c446
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:712:13
[INFO] [stdout]   20:     0x556cf9a3fc27 - wgsl_to_wgpu::structs::tests::write_runtime_sized_array::{{closure}}::hcceb470f7ac30557
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:542:35
[INFO] [stdout]   21:     0x556cf9a33696 - core::ops::function::FnOnce::call_once::hbddaf5f127854769
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   27:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   28:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   33:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   34:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   36:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   37:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   39:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   41:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   42:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   43:     0x74b0903cca64 - 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:1237
[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       │-        push_constant_ranges: &[],
[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 : & [] , push_constant_ranges : & [] , }) } # [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' (5027) panicked at src/lib.rs:1237: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99dc269 - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99dc269 - wgsl_to_wgpu::test::vertex_entries::{{closure}}::h7e1c33b69fa97901
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:740:17
[INFO] [stdout]   22:     0x556cf9a1048f - insta::settings::Settings::bind::hd1ea35542760db28
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99dbe00 - wgsl_to_wgpu::test::vertex_entries::h2d9f2fb87c3fbf85
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:739:22
[INFO] [stdout]   24:     0x556cf99dc357 - wgsl_to_wgpu::test::vertex_entries::{{closure}}::hf88d373a58c7af6a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1225:24
[INFO] [stdout]   25:     0x556cf9a32fb6 - core::ops::function::FnOnce::call_once::h4f36cda812c61f0f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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:1078
[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' (5603) panicked at src/lib.rs:1078: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99e35a4 - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99e35a4 - wgsl_to_wgpu::test::write_vertex_module_single_input_sint32::{{closure}}::h20c7f8c850aaff00
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:727:17
[INFO] [stdout]   22:     0x556cf9a0f684 - insta::settings::Settings::bind::h03ec4057344a3e84
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99e3086 - wgsl_to_wgpu::test::write_vertex_module_single_input_sint32::hc137f70a1e85a77f
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:726:22
[INFO] [stdout]   24:     0x556cf99e3147 - wgsl_to_wgpu::test::write_vertex_module_single_input_sint32::{{closure}}::h057f619c8e4affe5
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1061:49
[INFO] [stdout]   25:     0x556cf9a33706 - core::ops::function::FnOnce::call_once::hbfba8c7d095ee073
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - clone
[INFO] [stdout]   48:                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:1168
[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       │-        push_constant_ranges: &[],
[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)] , push_constant_ranges : & [] , }) } # [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] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stdout] 
[INFO] [stdout] thread 'test::single_root_module' (4973) panicked at src/lib.rs:1168: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99dcbf9 - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99dcbf9 - wgsl_to_wgpu::test::single_root_module::{{closure}}::hfc3fa718c08b2034
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:740:17
[INFO] [stdout]   22:     0x556cf9a101ef - insta::settings::Settings::bind::haa8ca593e335b8a7
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99dc763 - wgsl_to_wgpu::test::single_root_module::h48c4b268b9ce0fa5
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:739:22
[INFO] [stdout]   24:     0x556cf99dc807 - wgsl_to_wgpu::test::single_root_module::{{closure}}::hdb5698efa3dd2aa0
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1157:28
[INFO] [stdout]   25:     0x556cf9a33746 - core::ops::function::FnOnce::call_once::hc4df68d2cf339de9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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' (43) 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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cf9a4242a - wgsl_to_wgpu::structs::tests::write_all_structs_skip_stage_outputs::hc3a998ffa2454953
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:712:13
[INFO] [stdout]   20:     0x556cf9a424a7 - wgsl_to_wgpu::structs::tests::write_all_structs_skip_stage_outputs::{{closure}}::hb68b4c5e6619c018
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:375:46
[INFO] [stdout]   21:     0x556cf9a33226 - core::ops::function::FnOnce::call_once::h6d9634358bdffffb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   27:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   28:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   33:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   34:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   36:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   37:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   39:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   41:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   42:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   43:     0x74b0903cca64 - clone
[INFO] [stdout]   44:                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:1036
[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' (5601) panicked at src/lib.rs:1036: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99e59f4 - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99e59f4 - wgsl_to_wgpu::test::write_vertex_module_single_input_float64::{{closure}}::h81755e8a6aa0b1d0
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:727:17
[INFO] [stdout]   22:     0x556cf9a0faa4 - insta::settings::Settings::bind::h45ecaa10111eb77f
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99e5506 - wgsl_to_wgpu::test::write_vertex_module_single_input_float64::hddf55fef67753a1d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:726:22
[INFO] [stdout]   24:     0x556cf99e5af7 - wgsl_to_wgpu::test::write_vertex_module_single_input_float64::{{closure}}::hcfab74bb324b68fa
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1020:50
[INFO] [stdout]   25:     0x556cf9a339d6 - core::ops::function::FnOnce::call_once::hfb3168f495ff9ec6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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:1016
[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' (5534) panicked at src/lib.rs:1016: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99e50d4 - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99e50d4 - wgsl_to_wgpu::test::write_vertex_module_single_input_float32::{{closure}}::h3942b69a1ab8abac
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:727:17
[INFO] [stdout]   22:     0x556cf9a0f804 - insta::settings::Settings::bind::h2360cc8ccbc4cb52
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99e4be6 - wgsl_to_wgpu::test::write_vertex_module_single_input_float32::h7ad41c146018a113
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:726:22
[INFO] [stdout]   24:     0x556cf99e51d7 - wgsl_to_wgpu::test::write_vertex_module_single_input_float32::{{closure}}::hde02d71c2df7a4ac
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1000:50
[INFO] [stdout]   25:     0x556cf9a331a6 - core::ops::function::FnOnce::call_once::h6c4949d15909b4ba
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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:1098
[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' (6357) panicked at src/lib.rs:1098: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:     0x556cfa171fe2 - std::backtrace_rs::backtrace::libunwind::trace::h16acf28769fcd909
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x556cfa171fe2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb5541aa5d4f92513
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x556cfa171fe2 - std::sys::backtrace::_print_fmt::h8ac8268cb667a306
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556cfa171fe2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h47627beda0767f4c
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556cfa1856cf - core::fmt::rt::Argument::fmt::h686a01ad57c1c92a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x556cfa1856cf - core::fmt::write::h8a63064c67176fd8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/fmt/mod.rs:1469:25
[INFO] [stdout]    6:     0x556cfa13d793 - std::io::default_write_fmt::hd4797e693c0ec256
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x556cfa13d793 - std::io::Write::write_fmt::h791e240ad2720c99
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x556cfa14a112 - std::sys::backtrace::BacktraceLock::print::h4634d27c0afbaebb
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x556cfa14fb4f - std::panicking::default_hook::{{closure}}::h23e0299d4738b766
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x556cfa14f9e1 - std::panicking::default_hook::hfeec6294e8751b62
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x556cf9be8f4e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f5a16438cee2b4e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   12:     0x556cf9be8f4e - test::test_main_with_exit_callback::{{closure}}::h9214498cef9aafc5
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x556cfa15020f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hdb18da3e68df7464
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2019:9
[INFO] [stdout]   14:     0x556cfa15020f - std::panicking::panic_with_hook::hd57cd463d793ed79
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x556cfa14ffba - std::panicking::panic_handler::{{closure}}::hddd6216c3fddee3b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x556cfa14a249 - std::sys::backtrace::__rust_end_short_backtrace::h5e7a56f283378525
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x556cfa130ccd - __rustc[256c90bb7e548b45]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x556cfa1900a0 - core::panicking::panic_fmt::hf19c198748ef6a95
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x556cfa18f196 - core::result::unwrap_failed::he81173b5792ad6b0
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1862:5
[INFO] [stdout]   20:     0x556cf99e3ec4 - core::result::Result<T,E>::unwrap::h544c3a9456485332
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x556cf99e3ec4 - wgsl_to_wgpu::test::write_vertex_module_single_input_uint32::{{closure}}::hc1e0159d09683476
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:727:17
[INFO] [stdout]   22:     0x556cf9a0fd44 - insta::settings::Settings::bind::h5c600ed3a646db9f
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9
[INFO] [stdout]   23:     0x556cf99e39a6 - wgsl_to_wgpu::test::write_vertex_module_single_input_uint32::h34817b8a1727cc2c
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:726:22
[INFO] [stdout]   24:     0x556cf99e3a67 - wgsl_to_wgpu::test::write_vertex_module_single_input_uint32::{{closure}}::h4a6138cb562de2e7
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1082:49
[INFO] [stdout]   25:     0x556cf9a332e6 - core::ops::function::FnOnce::call_once::h770ee5aa76eead48
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556cf9be8d9b - core::ops::function::FnOnce::call_once::h43f43c5185cf39c2
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556cf9be8d9b - test::__rust_begin_short_backtrace::hc4fa634eb2764bdc
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x556cf9bfd3b8 - test::run_test_in_process::{{closure}}::h9f4b799a5211b72a
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x556cf9bfd3b8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::ha572bf7dc5230a8f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x556cf9bfd3b8 - std::panicking::catch_unwind::do_call::hfd6ff51f25dd177b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   31:     0x556cf9bfd3b8 - std::panicking::catch_unwind::h8609b446221def5f
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   32:     0x556cf9bfd3b8 - std::panic::catch_unwind::h362f73cc48531e26
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x556cf9bfd3b8 - test::run_test_in_process::hf52fd21d696aae67
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x556cf9bfd3b8 - test::run_test::{{closure}}::h7e780b8354e6d007
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x556cf9bd6184 - test::run_test::{{closure}}::hdc2695f2276aad3e
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x556cf9bd6184 - std::sys::backtrace::__rust_begin_short_backtrace::h2555b2113ed90fc9
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   37:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h99800d480987dfb6
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:562:17
[INFO] [stdout]   38:     0x556cf9bd9aba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hbbb69b5294b2221b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x556cf9bd9aba - std::panicking::catch_unwind::do_call::h495689350c27df20
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:590:40
[INFO] [stdout]   40:     0x556cf9bd9aba - std::panicking::catch_unwind::hf22437c51d1b3740
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panicking.rs:553:19
[INFO] [stdout]   41:     0x556cf9bd9aba - std::panic::catch_unwind::habda1a57de8231f8
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x556cf9bd9aba - std::thread::Builder::spawn_unchecked_::{{closure}}::h5833d8dda8c7e80b
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/thread/mod.rs:560:30
[INFO] [stdout]   43:     0x556cf9bd9aba - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha2910283a5058402
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556cfa14534f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::he4d85cb537521972
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/alloc/src/boxed.rs:2005:9
[INFO] [stdout]   45:     0x556cfa14534f - std::sys::thread::unix::Thread::new::thread_start::hbaf586a9e50a98cd
[INFO] [stdout]                                at /rustc/3b4dd9bf1410f8da6329baa36ce5e37673cbbd1f/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   46:     0x74b09033faa4 - <unknown>
[INFO] [stdout]   47:     0x74b0903cca64 - 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::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; 22 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.72s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "d4263e74754b8f4c0a49d18ef28a1df650440b02c93fe5a51c9210af36108f25", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d4263e74754b8f4c0a49d18ef28a1df650440b02c93fe5a51c9210af36108f25", kill_on_drop: false }`
[INFO] [stdout] d4263e74754b8f4c0a49d18ef28a1df650440b02c93fe5a51c9210af36108f25
