[INFO] fetching crate wgsl_to_wgpu 0.17.1...
[INFO] testing wgsl_to_wgpu-0.17.1 against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681
[INFO] extracting crate wgsl_to_wgpu 0.17.1 into /workspace/builds/worker-4-tc1/source
[INFO] started tweaking crates.io crate wgsl_to_wgpu 0.17.1
[INFO] finished tweaking crates.io crate wgsl_to_wgpu 0.17.1
[INFO] tweaked toml for crates.io crate wgsl_to_wgpu 0.17.1 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate wgsl_to_wgpu 0.17.1 on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate wgsl_to_wgpu 0.17.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded pathdiff v0.2.3
[INFO] [stderr]   Downloaded case v1.0.0
[INFO] [stderr]   Downloaded fastrand v2.3.0
[INFO] [stderr]   Downloaded errno v0.3.14
[INFO] [stderr]   Downloaded console v0.15.11
[INFO] [stderr]   Downloaded indoc v2.0.7
[INFO] [stderr]   Downloaded similar v2.7.0
[INFO] [stderr]   Downloaded getrandom v0.3.4
[INFO] [stderr]   Downloaded prettyplease v0.2.37
[INFO] [stderr]   Downloaded r-efi v5.3.0
[INFO] [stderr]   Downloaded wasip2 v1.0.1+wasi-0.2.4
[INFO] [stderr]   Downloaded insta v1.45.0
[INFO] [stderr]   Downloaded wit-bindgen v0.46.0
[INFO] [stderr]   Downloaded yansi v1.0.1
[INFO] [stderr]   Downloaded pretty_assertions v1.4.1
[INFO] [stderr]   Downloaded bumpalo v3.19.1
[INFO] [stderr]   Downloaded encode_unicode v1.0.0
[INFO] [stderr]   Downloaded tempfile v3.23.0
[INFO] [stderr]   Downloaded rustix v1.1.2
[INFO] [stderr]   Downloaded windows-sys v0.61.2
[INFO] [stderr]   Downloaded linux-raw-sys v0.11.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 79a9239b721b47ed5181df7c4a40dfe92d871017a4f5758a024b96f2f25f9deb
[INFO] running `Command { std: "docker" "start" "-a" "79a9239b721b47ed5181df7c4a40dfe92d871017a4f5758a024b96f2f25f9deb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "79a9239b721b47ed5181df7c4a40dfe92d871017a4f5758a024b96f2f25f9deb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "79a9239b721b47ed5181df7c4a40dfe92d871017a4f5758a024b96f2f25f9deb", kill_on_drop: false }`
[INFO] [stdout] 79a9239b721b47ed5181df7c4a40dfe92d871017a4f5758a024b96f2f25f9deb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1f7542aa8bd77d1230b8ebdf22396421edd500c4faf67f4708fffa979189217b
[INFO] running `Command { std: "docker" "start" "-a" "1f7542aa8bd77d1230b8ebdf22396421edd500c4faf67f4708fffa979189217b", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling libm v0.2.15
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling cfg_aliases v0.2.1
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling naga v28.0.0
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling codespan-reporting v0.12.0
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling hexf-parse v0.2.1
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling case v1.0.0
[INFO] [stderr]    Compiling pathdiff v0.2.3
[INFO] [stderr]    Compiling indexmap v2.12.1
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]    Compiling zerocopy-derive v0.8.31
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling bytemuck v1.24.0
[INFO] [stderr]    Compiling wgpu-types v28.0.0
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling wgsl_to_wgpu v0.17.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 41.15s
[INFO] running `Command { std: "docker" "inspect" "1f7542aa8bd77d1230b8ebdf22396421edd500c4faf67f4708fffa979189217b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1f7542aa8bd77d1230b8ebdf22396421edd500c4faf67f4708fffa979189217b", kill_on_drop: false }`
[INFO] [stdout] 1f7542aa8bd77d1230b8ebdf22396421edd500c4faf67f4708fffa979189217b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9e928f398bf728ee4c3b38e2366a860436537320027d04e1dae60267936fbfd1
[INFO] running `Command { std: "docker" "start" "-a" "9e928f398bf728ee4c3b38e2366a860436537320027d04e1dae60267936fbfd1", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.178
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling wgpu-types v28.0.0
[INFO] [stderr]    Compiling naga v28.0.0
[INFO] [stderr]    Compiling diff v0.1.13
[INFO] [stderr]    Compiling yansi v1.0.1
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling pretty_assertions v1.4.1
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling tempfile v3.23.0
[INFO] [stderr]    Compiling insta v1.45.0
[INFO] [stderr]    Compiling wgsl_to_wgpu v0.17.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 36.48s
[INFO] running `Command { std: "docker" "inspect" "9e928f398bf728ee4c3b38e2366a860436537320027d04e1dae60267936fbfd1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9e928f398bf728ee4c3b38e2366a860436537320027d04e1dae60267936fbfd1", kill_on_drop: false }`
[INFO] [stdout] 9e928f398bf728ee4c3b38e2366a860436537320027d04e1dae60267936fbfd1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 016d97c4b70fd8ac59c990315c4a3b6a82fd7ab47ccd9010c2c717eaef347875
[INFO] running `Command { std: "docker" "start" "-a" "016d97c4b70fd8ac59c990315c4a3b6a82fd7ab47ccd9010c2c717eaef347875", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/wgsl_to_wgpu-52a0005b8690e018)
[INFO] [stdout] running 47 tests
[INFO] [stdout] test bindgroup::tests::bind_group_data_first_group_not_zero ... ok
[INFO] [stdout] test bindgroup::tests::bind_group_data_non_consecutive_bind_groups ... ok
[INFO] [stdout] test bindgroup::tests::bind_group_data_consecutive_bind_groups ... ok
[INFO] [stdout] test bindgroup::tests::bind_groups_module_compute ... FAILED
[INFO] [stdout] test structs::tests::write_all_structs_bytemuck_input_layout_validation ... FAILED
[INFO] [stdout] test bindgroup::tests::bind_groups_module_fragment ... FAILED
[INFO] [stdout] test structs::tests::write_all_structs_glam ... ok
[INFO] [stdout] test structs::tests::write_all_structs_nalgebra ... ok
[INFO] [stdout] test structs::tests::write_all_structs_rust ... ok
[INFO] [stdout] test bindgroup::tests::bind_groups_module_vertex_fragment ... FAILED
[INFO] [stdout] test bindgroup::tests::bind_groups_module_vertex ... FAILED
[INFO] [stdout] test structs::tests::write_all_structs_bytemuck_f64_vec ... FAILED
[INFO] [stdout] test structs::tests::write_runtime_sized_array_bytemuck_host_shareable - should panic ... ok
[INFO] [stdout] test structs::tests::write_runtime_sized_array_bytemuck_vertex - should panic ... ok
[INFO] [stdout] test structs::tests::write_runtime_sized_array_no_encase - should panic ... ok
[INFO] [stdout] test structs::tests::write_runtime_sized_array_not_last_field - should panic ... ok
[INFO] [stdout] test consts::tests::write_global_constants ... ok
[INFO] [stdout] test structs::tests::write_all_structs_encase_bytemuck ... FAILED
[INFO] [stdout] test test::create_shader_module_compute_overrides ... ok
[INFO] [stdout] test consts::tests::write_pipeline_overrideable_constants_empty ... ok
[INFO] [stdout] test test::create_shader_module_immediate_data ... ok
[INFO] [stdout] test test::create_shader_module_multiple_outputs ... ok
[INFO] [stdout] test test::create_shader_module_non_consecutive_bind_groups ... ok
[INFO] [stdout] test test::create_shader_module_overrides ... ok
[INFO] [stdout] test test::create_shader_module_parse_error ... ok
[INFO] [stdout] test test::create_shader_module_repeated_bindings ... ok
[INFO] [stdout] test test::create_shader_module_semantic_error ... ok
[INFO] [stdout] test test::create_shader_modules_source ... ok
[INFO] [stdout] test structs::tests::write_all_structs_bytemuck_skip_input_layout_validation ... FAILED
[INFO] [stdout] test test::create_shader_multiple_entries ... ok
[INFO] [stdout] test test::create_shader_module_consecutive_bind_groups ... ok
[INFO] [stdout] test test::add_single_root_module ... FAILED
[INFO] [stdout] test structs::tests::write_all_structs_serde_encase_bytemuck ... FAILED
[INFO] [stdout] test test::add_duplicate_module_different_paths ... FAILED
[INFO] [stdout] test test::create_shader_modules_source_rustfmt ... FAILED
[INFO] [stdout] test test::mesh_shader ... FAILED
[INFO] [stdout] test structs::tests::write_all_structs_skip_stage_outputs ... FAILED
[INFO] [stdout] test test::vertex_entries ... FAILED
[INFO] [stdout] test structs::tests::write_runtime_sized_array ... FAILED
[INFO] [stdout] test test::shader_stage_collection ... FAILED
[INFO] [stdout] test test::single_root_module ... FAILED
[INFO] [stdout] test test::write_vertex_module_single_input_float32 ... FAILED
[INFO] [stdout] test test::write_vertex_module_single_input_float16 ... FAILED
[INFO] [stdout] test test::write_vertex_module_single_input_float64 ... FAILED
[INFO] [stdout] test test::write_vertex_module_single_input_sint32 ... 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_compute stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/bind_groups_module_compute.snap
[INFO] [stdout] Snapshot: bind_groups_module_compute
[INFO] [stdout] Source: src/bindgroup.rs:635
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod bind_groups {
[INFO] [stdout]     2       │-    #[derive(Debug)]
[INFO] [stdout]     3       │-    pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     4       │-    #[derive(Debug)]
[INFO] [stdout]     5       │-    pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     6       │-        pub src: wgpu::BufferBinding<'a>,
[INFO] [stdout]     7       │-        pub vertex_weights: wgpu::BufferBinding<'a>,
[INFO] [stdout]     8       │-        pub dst: wgpu::BufferBinding<'a>,
[INFO] [stdout]     9       │-    }
[INFO] [stdout]    10       │-    const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]    11       │-        label: Some("LayoutDescriptor0"),
[INFO] [stdout]    12       │-        entries: &[
[INFO] [stdout]    13       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    14       │-                binding: 0,
[INFO] [stdout]    15       │-                visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]    16       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    17       │-                    ty: wgpu::BufferBindingType::Storage { read_only: true },
[INFO] [stdout]    18       │-                    has_dynamic_offset: false,
[INFO] [stdout]    19       │-                    min_binding_size: None,
[INFO] [stdout]    20       │-                },
[INFO] [stdout]    21       │-                count: None,
[INFO] [stdout]    22       │-            },
[INFO] [stdout]    23       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    24       │-                binding: 1,
[INFO] [stdout]    25       │-                visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]    26       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    27       │-                    ty: wgpu::BufferBindingType::Storage { read_only: true },
[INFO] [stdout]    28       │-                    has_dynamic_offset: false,
[INFO] [stdout]    29       │-                    min_binding_size: None,
[INFO] [stdout]    30       │-                },
[INFO] [stdout]    31       │-                count: None,
[INFO] [stdout]    32       │-            },
[INFO] [stdout]    33       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    34       │-                binding: 2,
[INFO] [stdout]    35       │-                visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]    36       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    37       │-                    ty: wgpu::BufferBindingType::Storage { read_only: false },
[INFO] [stdout]    38       │-                    has_dynamic_offset: false,
[INFO] [stdout]    39       │-                    min_binding_size: None,
[INFO] [stdout]    40       │-                },
[INFO] [stdout]    41       │-                count: None,
[INFO] [stdout]    42       │-            },
[INFO] [stdout]    43       │-        ],
[INFO] [stdout]    44       │-    };
[INFO] [stdout]    45       │-    impl BindGroup0 {
[INFO] [stdout]    46       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    47       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]    48       │-        }
[INFO] [stdout]    49       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]    50       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]    51       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]    52       │-                layout: &bind_group_layout,
[INFO] [stdout]    53       │-                entries: &[
[INFO] [stdout]    54       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]    55       │-                        binding: 0,
[INFO] [stdout]    56       │-                        resource: wgpu::BindingResource::Buffer(bindings.src),
[INFO] [stdout]    57       │-                    },
[INFO] [stdout]    58       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]    59       │-                        binding: 1,
[INFO] [stdout]    60       │-                        resource: wgpu::BindingResource::Buffer(bindings.vertex_weights),
[INFO] [stdout]    61       │-                    },
[INFO] [stdout]    62       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]    63       │-                        binding: 2,
[INFO] [stdout]    64       │-                        resource: wgpu::BindingResource::Buffer(bindings.dst),
[INFO] [stdout]    65       │-                    },
[INFO] [stdout]    66       │-                ],
[INFO] [stdout]    67       │-                label: Some("BindGroup0"),
[INFO] [stdout]    68       │-            });
[INFO] [stdout]    69       │-            Self(bind_group)
[INFO] [stdout]    70       │-        }
[INFO] [stdout]    71       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    72       │-            pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]    73       │-        }
[INFO] [stdout]    74       │-    }
[INFO] [stdout]    75       │-    #[derive(Debug)]
[INFO] [stdout]    76       │-    pub struct BindGroup1(wgpu::BindGroup);
[INFO] [stdout]    77       │-    #[derive(Debug)]
[INFO] [stdout]    78       │-    pub struct BindGroupLayout1<'a> {
[INFO] [stdout]    79       │-        pub transforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]    80       │-    }
[INFO] [stdout]    81       │-    const LAYOUT_DESCRIPTOR1: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]    82       │-        label: Some("LayoutDescriptor1"),
[INFO] [stdout]    83       │-        entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    84       │-            binding: 0,
[INFO] [stdout]    85       │-            visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]    86       │-            ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    87       │-                ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]    88       │-                has_dynamic_offset: false,
[INFO] [stdout]    89       │-                min_binding_size: None,
[INFO] [stdout]    90       │-            },
[INFO] [stdout]    91       │-            count: None,
[INFO] [stdout]    92       │-        }],
[INFO] [stdout]    93       │-    };
[INFO] [stdout]    94       │-    impl BindGroup1 {
[INFO] [stdout]    95       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    96       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR1)
[INFO] [stdout]    97       │-        }
[INFO] [stdout]    98       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout1) -> Self {
[INFO] [stdout]    99       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR1);
[INFO] [stdout]   100       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]   101       │-                layout: &bind_group_layout,
[INFO] [stdout]   102       │-                entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]   103       │-                    binding: 0,
[INFO] [stdout]   104       │-                    resource: wgpu::BindingResource::Buffer(bindings.transforms),
[INFO] [stdout]   105       │-                }],
[INFO] [stdout]   106       │-                label: Some("BindGroup1"),
[INFO] [stdout]   107       │-            });
[INFO] [stdout]   108       │-            Self(bind_group)
[INFO] [stdout]   109       │-        }
[INFO] [stdout]   110       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   111       │-            pass.set_bind_group(1, &self.0, &[]);
[INFO] [stdout]   112       │-        }
[INFO] [stdout]   113       │-    }
[INFO] [stdout]   114       │-    #[derive(Debug)]
[INFO] [stdout]   115       │-    pub struct BindGroup2(wgpu::BindGroup);
[INFO] [stdout]   116       │-    #[derive(Debug)]
[INFO] [stdout]   117       │-    pub struct BindGroupLayout2<'a> {
[INFO] [stdout]   118       │-        pub atomics1: wgpu::BufferBinding<'a>,
[INFO] [stdout]   119       │-        pub atomics2: wgpu::BufferBinding<'a>,
[INFO] [stdout]   120       │-        pub atomics3: wgpu::BufferBinding<'a>,
[INFO] [stdout]   121       │-    }
[INFO] [stdout]   122       │-    const LAYOUT_DESCRIPTOR2: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]   123       │-        label: Some("LayoutDescriptor2"),
[INFO] [stdout]   124       │-        entries: &[
[INFO] [stdout]   125       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   126       │-                binding: 0,
[INFO] [stdout]   127       │-                visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]   128       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   129       │-                    ty: wgpu::BufferBindingType::Storage { read_only: false },
[INFO] [stdout]   130       │-                    has_dynamic_offset: false,
[INFO] [stdout]   131       │-                    min_binding_size: None,
[INFO] [stdout]   132       │-                },
[INFO] [stdout]   133       │-                count: None,
[INFO] [stdout]   134       │-            },
[INFO] [stdout]   135       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   136       │-                binding: 1,
[INFO] [stdout]   137       │-                visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]   138       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   139       │-                    ty: wgpu::BufferBindingType::Storage { read_only: false },
[INFO] [stdout]   140       │-                    has_dynamic_offset: false,
[INFO] [stdout]   141       │-                    min_binding_size: None,
[INFO] [stdout]   142       │-                },
[INFO] [stdout]   143       │-                count: None,
[INFO] [stdout]   144       │-            },
[INFO] [stdout]   145       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   146       │-                binding: 2,
[INFO] [stdout]   147       │-                visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]   148       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   149       │-                    ty: wgpu::BufferBindingType::Storage { read_only: false },
[INFO] [stdout]   150       │-                    has_dynamic_offset: false,
[INFO] [stdout]   151       │-                    min_binding_size: None,
[INFO] [stdout]   152       │-                },
[INFO] [stdout]   153       │-                count: None,
[INFO] [stdout]   154       │-            },
[INFO] [stdout]   155       │-        ],
[INFO] [stdout]   156       │-    };
[INFO] [stdout]   157       │-    impl BindGroup2 {
[INFO] [stdout]   158       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]   159       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR2)
[INFO] [stdout]   160       │-        }
[INFO] [stdout]   161       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout2) -> Self {
[INFO] [stdout]   162       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR2);
[INFO] [stdout]   163       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]   164       │-                layout: &bind_group_layout,
[INFO] [stdout]   165       │-                entries: &[
[INFO] [stdout]   166       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   167       │-                        binding: 0,
[INFO] [stdout]   168       │-                        resource: wgpu::BindingResource::Buffer(bindings.atomics1),
[INFO] [stdout]   169       │-                    },
[INFO] [stdout]   170       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   171       │-                        binding: 1,
[INFO] [stdout]   172       │-                        resource: wgpu::BindingResource::Buffer(bindings.atomics2),
[INFO] [stdout]   173       │-                    },
[INFO] [stdout]   174       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   175       │-                        binding: 2,
[INFO] [stdout]   176       │-                        resource: wgpu::BindingResource::Buffer(bindings.atomics3),
[INFO] [stdout]   177       │-                    },
[INFO] [stdout]   178       │-                ],
[INFO] [stdout]   179       │-                label: Some("BindGroup2"),
[INFO] [stdout]   180       │-            });
[INFO] [stdout]   181       │-            Self(bind_group)
[INFO] [stdout]   182       │-        }
[INFO] [stdout]   183       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   184       │-            pass.set_bind_group(2, &self.0, &[]);
[INFO] [stdout]   185       │-        }
[INFO] [stdout]   186       │-    }
[INFO] [stdout]   187       │-    #[derive(Debug, Copy, Clone)]
[INFO] [stdout]   188       │-    pub struct BindGroups<'a> {
[INFO] [stdout]   189       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]   190       │-        pub bind_group1: &'a BindGroup1,
[INFO] [stdout]   191       │-        pub bind_group2: &'a BindGroup2,
[INFO] [stdout]   192       │-    }
[INFO] [stdout]   193       │-    impl BindGroups<'_> {
[INFO] [stdout]   194       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   195       │-            self.bind_group0.set(pass);
[INFO] [stdout]   196       │-            self.bind_group1.set(pass);
[INFO] [stdout]   197       │-            self.bind_group2.set(pass);
[INFO] [stdout]   198       │-        }
[INFO] [stdout]   199       │-    }
[INFO] [stdout]   200       │-    pub trait SetBindGroup {
[INFO] [stdout]   201       │-        fn set_bind_group(
[INFO] [stdout]   202       │-            &mut self,
[INFO] [stdout]   203       │-            index: u32,
[INFO] [stdout]   204       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   205       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   206       │-        );
[INFO] [stdout]   207       │-    }
[INFO] [stdout]   208       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]   209       │-        fn set_bind_group(
[INFO] [stdout]   210       │-            &mut self,
[INFO] [stdout]   211       │-            index: u32,
[INFO] [stdout]   212       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   213       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   214       │-        ) {
[INFO] [stdout]   215       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   216       │-        }
[INFO] [stdout]   217       │-    }
[INFO] [stdout]   218       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]   219       │-        fn set_bind_group(
[INFO] [stdout]   220       │-            &mut self,
[INFO] [stdout]   221       │-            index: u32,
[INFO] [stdout]   222       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   223       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   224       │-        ) {
[INFO] [stdout]   225       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   226       │-        }
[INFO] [stdout]   227       │-    }
[INFO] [stdout]   228       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]   229       │-        fn set_bind_group(
[INFO] [stdout]   230       │-            &mut self,
[INFO] [stdout]   231       │-            index: u32,
[INFO] [stdout]   232       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   233       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   234       │-        ) {
[INFO] [stdout]   235       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   236       │-        }
[INFO] [stdout]   237       │-    }
[INFO] [stdout]   238       │-}
[INFO] [stdout]   239       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]   240       │-    pass: &mut P,
[INFO] [stdout]   241       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]   242       │-    bind_group1: &bind_groups::BindGroup1,
[INFO] [stdout]   243       │-    bind_group2: &bind_groups::BindGroup2,
[INFO] [stdout]   244       │-) {
[INFO] [stdout]   245       │-    bind_group0.set(pass);
[INFO] [stdout]   246       │-    bind_group1.set(pass);
[INFO] [stdout]   247       │-    bind_group2.set(pass);
[INFO] [stdout]   248       │-}
[INFO] [stdout]           1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub src : wgpu :: BufferBinding < 'a > , pub vertex_weights : wgpu :: BufferBinding < 'a > , pub dst : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : true } , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 1 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : true } , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 2 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : false } , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . src) , } , wgpu :: BindGroupEntry { binding : 1 , resource : wgpu :: BindingResource :: Buffer (bindings . vertex_weights) , } , wgpu :: BindGroupEntry { binding : 2 , resource : wgpu :: BindingResource :: Buffer (bindings . dst) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug)] pub struct BindGroup1 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout1 < 'a > { pub transforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR1 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor1") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup1 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR1) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout1) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR1) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . transforms) , }] , label : Some ("BindGroup1") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (1 , & self . 0 , & []) ; } } # [derive (Debug)] pub struct BindGroup2 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout2 < 'a > { pub atomics1 : wgpu :: BufferBinding < 'a > , pub atomics2 : wgpu :: BufferBinding < 'a > , pub atomics3 : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR2 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor2") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : false } , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 1 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : false } , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 2 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : false } , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup2 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR2) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout2) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR2) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . atomics1) , } , wgpu :: BindGroupEntry { binding : 1 , resource : wgpu :: BindingResource :: Buffer (bindings . atomics2) , } , wgpu :: BindGroupEntry { binding : 2 , resource : wgpu :: BindingResource :: Buffer (bindings . atomics3) , }] , label : Some ("BindGroup2") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (2 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 , pub bind_group1 : & 'a BindGroup1 , pub bind_group2 : & 'a BindGroup2 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; self . bind_group1 . set (pass) ; self . bind_group2 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0 , bind_group1 : & bind_groups :: BindGroup1 , bind_group2 : & bind_groups :: BindGroup2) { bind_group0 . set (pass) ; bind_group1 . set (pass) ; bind_group2 . set (pass) ; }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'bindgroup::tests::bind_groups_module_compute' (20) panicked at src/bindgroup.rs:635:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/bind_groups_module_compute.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b781a775d - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b781a775d - wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_compute::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5d2b781480e4 - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_compute::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b781a8dbb - wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_compute
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5d2b781a6d17 - wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_compute::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bindgroup.rs:634:36
[INFO] [stdout]   25:     0x5d2b7813f316 - <wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_compute::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- structs::tests::write_all_structs_bytemuck_input_layout_validation stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_all_structs_bytemuck_input_layout_validation.snap
[INFO] [stdout] Snapshot: write_all_structs_bytemuck_input_layout_validation
[INFO] [stdout] Source: src/structs.rs:538
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub const ENTRY_MAIN: &str = "main";
[INFO] [stdout]     2       │-#[derive(Debug)]
[INFO] [stdout]     3       │-pub struct VertexEntry<const N: usize> {
[INFO] [stdout]     4       │-    pub entry_point: &'static str,
[INFO] [stdout]     5       │-    pub buffers: [wgpu::VertexBufferLayout<'static>; N],
[INFO] [stdout]     6       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]     7       │-}
[INFO] [stdout]     8       │-pub fn vertex_state<'a, const N: usize>(
[INFO] [stdout]     9       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]    10       │-    entry: &'a VertexEntry<N>,
[INFO] [stdout]    11       │-) -> wgpu::VertexState<'a> {
[INFO] [stdout]    12       │-    wgpu::VertexState {
[INFO] [stdout]    13       │-        module,
[INFO] [stdout]    14       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]    15       │-        buffers: &entry.buffers,
[INFO] [stdout]    16       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]    17       │-            constants: &entry.constants,
[INFO] [stdout]    18       │-            ..Default::default()
[INFO] [stdout]    19       │-        },
[INFO] [stdout]    20       │-    }
[INFO] [stdout]    21       │-}
[INFO] [stdout]    22       │-pub fn main_entry(input0: wgpu::VertexStepMode) -> VertexEntry<1> {
[INFO] [stdout]    23       │-    VertexEntry {
[INFO] [stdout]    24       │-        entry_point: ENTRY_MAIN,
[INFO] [stdout]    25       │-        buffers: [Input0::vertex_buffer_layout(input0)],
[INFO] [stdout]    26       │-        constants: Default::default(),
[INFO] [stdout]    27       │-    }
[INFO] [stdout]    28       │-}
[INFO] [stdout]    29       │-pub const SOURCE: &str = include_str!("bytemuck_input_layout_validation.wgsl");
[INFO] [stdout]    30       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]    31       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]    32       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]    33       │-        label: None,
[INFO] [stdout]    34       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]    35       │-    })
[INFO] [stdout]    36       │-}
[INFO] [stdout]    37       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]    38       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]    39       │-        label: None,
[INFO] [stdout]    40       │-        bind_group_layouts: &[],
[INFO] [stdout]    41       │-        immediate_size: 0,
[INFO] [stdout]    42       │-    })
[INFO] [stdout]    43       │-}
[INFO] [stdout]    44       │-#[repr(C)]
[INFO] [stdout]    45       │-#[derive(Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable)]
[INFO] [stdout]    46       │-pub struct Inner {
[INFO] [stdout]    47       │-    pub a: f32,
[INFO] [stdout]    48       │-}
[INFO] [stdout]    49       │-const _: () = assert!(
[INFO] [stdout]    50       │-    std::mem::size_of::<Inner>() == 4,
[INFO] [stdout]    51       │-    "size of Inner does not match WGSL"
[INFO] [stdout]    52       │-);
[INFO] [stdout]    53       │-const _: () = assert!(
[INFO] [stdout]    54       │-    std::mem::offset_of!(Inner, a) == 0,
[INFO] [stdout]    55       │-    "offset of Inner.a does not match WGSL"
[INFO] [stdout]    56       │-);
[INFO] [stdout]    57       │-#[repr(C)]
[INFO] [stdout]    58       │-#[derive(Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable)]
[INFO] [stdout]    59       │-pub struct Input0 {
[INFO] [stdout]    60       │-    pub a: u32,
[INFO] [stdout]    61       │-    pub b: i32,
[INFO] [stdout]    62       │-    pub c: f32,
[INFO] [stdout]    63       │-}
[INFO] [stdout]    64       │-const _: () = assert!(
[INFO] [stdout]    65       │-    std::mem::size_of::<Input0>() == 64,
[INFO] [stdout]    66       │-    "size of Input0 does not match WGSL"
[INFO] [stdout]    67       │-);
[INFO] [stdout]    68       │-const _: () = assert!(
[INFO] [stdout]    69       │-    std::mem::offset_of!(Input0, a) == 0,
[INFO] [stdout]    70       │-    "offset of Input0.a does not match WGSL"
[INFO] [stdout]    71       │-);
[INFO] [stdout]    72       │-const _: () = assert!(
[INFO] [stdout]    73       │-    std::mem::offset_of!(Input0, b) == 8,
[INFO] [stdout]    74       │-    "offset of Input0.b does not match WGSL"
[INFO] [stdout]    75       │-);
[INFO] [stdout]    76       │-const _: () = assert!(
[INFO] [stdout]    77       │-    std::mem::offset_of!(Input0, c) == 32,
[INFO] [stdout]    78       │-    "offset of Input0.c does not match WGSL"
[INFO] [stdout]    79       │-);
[INFO] [stdout]    80       │-impl Input0 {
[INFO] [stdout]    81       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 3] = [
[INFO] [stdout]    82       │-        wgpu::VertexAttribute {
[INFO] [stdout]    83       │-            format: wgpu::VertexFormat::Uint32,
[INFO] [stdout]    84       │-            offset: std::mem::offset_of!(Input0, a) as u64,
[INFO] [stdout]    85       │-            shader_location: 0,
[INFO] [stdout]    86       │-        },
[INFO] [stdout]    87       │-        wgpu::VertexAttribute {
[INFO] [stdout]    88       │-            format: wgpu::VertexFormat::Sint32,
[INFO] [stdout]    89       │-            offset: std::mem::offset_of!(Input0, b) as u64,
[INFO] [stdout]    90       │-            shader_location: 1,
[INFO] [stdout]    91       │-        },
[INFO] [stdout]    92       │-        wgpu::VertexAttribute {
[INFO] [stdout]    93       │-            format: wgpu::VertexFormat::Float32,
[INFO] [stdout]    94       │-            offset: std::mem::offset_of!(Input0, c) as u64,
[INFO] [stdout]    95       │-            shader_location: 2,
[INFO] [stdout]    96       │-        },
[INFO] [stdout]    97       │-    ];
[INFO] [stdout]    98       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]    99       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]   100       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]   101       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]   102       │-            array_stride: std::mem::size_of::<Input0>() as u64,
[INFO] [stdout]   103       │-            step_mode,
[INFO] [stdout]   104       │-            attributes: &Input0::VERTEX_ATTRIBUTES,
[INFO] [stdout]   105       │-        }
[INFO] [stdout]   106       │-    }
[INFO] [stdout]   107       │-}
[INFO] [stdout]   108       │-#[repr(C)]
[INFO] [stdout]   109       │-#[derive(Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable)]
[INFO] [stdout]   110       │-pub struct Outer {
[INFO] [stdout]   111       │-    pub inner: Inner,
[INFO] [stdout]   112       │-}
[INFO] [stdout]   113       │-const _: () = assert!(
[INFO] [stdout]   114       │-    std::mem::size_of::<Outer>() == 4,
[INFO] [stdout]   115       │-    "size of Outer does not match WGSL"
[INFO] [stdout]   116       │-);
[INFO] [stdout]   117       │-const _: () = assert!(
[INFO] [stdout]   118       │-    std::mem::offset_of!(Outer, inner) == 0,
[INFO] [stdout]   119       │-    "offset of Outer.inner does not match WGSL"
[INFO] [stdout]   120       │-);
[INFO] [stdout]           1 │+pub const ENTRY_MAIN : & str = "main" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn main_entry (input0 : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_MAIN , buffers : [Input0 :: vertex_buffer_layout (input0)] , constants : Default :: default () } } pub const SOURCE : & str = include_str ! ("bytemuck_input_layout_validation.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Inner { pub a : f32 } const _ : () = assert ! (std :: mem :: size_of :: < Inner > () == 4 , "size of Inner does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Inner , a) == 0 , "offset of Inner.a does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f32 } const _ : () = assert ! (std :: mem :: size_of :: < Input0 > () == 64 , "size of Input0 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , a) == 0 , "offset of Input0.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , b) == 8 , "offset of Input0.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , c) == 32 , "offset of Input0.c does not match WGSL") ; impl Input0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 3] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Uint32 , offset : std :: mem :: offset_of ! (Input0 , a) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Sint32 , offset : std :: mem :: offset_of ! (Input0 , b) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32 , offset : std :: mem :: offset_of ! (Input0 , c) as u64 , shader_location : 2 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < Input0 > () as u64 , step_mode , attributes : & Input0 :: VERTEX_ATTRIBUTES } } } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Outer { pub inner : Inner } const _ : () = assert ! (std :: mem :: size_of :: < Outer > () == 4 , "size of Outer does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Outer , inner) == 0 , "offset of Outer.inner does not match WGSL") ;
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'structs::tests::write_all_structs_bytemuck_input_layout_validation' (28) 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:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b7816a649 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b7816a649 - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_bytemuck_input_layout_validation::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5d2b78147f6f - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_bytemuck_input_layout_validation::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b7816e15e - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_bytemuck_input_layout_validation
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5d2b78168ab7 - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_bytemuck_input_layout_validation::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:522:60
[INFO] [stdout]   25:     0x5d2b7813f256 - <wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_bytemuck_input_layout_validation::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- bindgroup::tests::bind_groups_module_fragment stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/bind_groups_module_fragment.snap
[INFO] [stdout] Snapshot: bind_groups_module_fragment
[INFO] [stdout] Source: src/bindgroup.rs:656
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod bind_groups {
[INFO] [stdout]     2       │-    #[derive(Debug)]
[INFO] [stdout]     3       │-    pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     4       │-    #[derive(Debug)]
[INFO] [stdout]     5       │-    pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     6       │-        pub transforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]     7       │-    }
[INFO] [stdout]     8       │-    const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]     9       │-        label: Some("LayoutDescriptor0"),
[INFO] [stdout]    10       │-        entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    11       │-            binding: 0,
[INFO] [stdout]    12       │-            visibility: wgpu::ShaderStages::FRAGMENT,
[INFO] [stdout]    13       │-            ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    14       │-                ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]    15       │-                has_dynamic_offset: false,
[INFO] [stdout]    16       │-                min_binding_size: None,
[INFO] [stdout]    17       │-            },
[INFO] [stdout]    18       │-            count: None,
[INFO] [stdout]    19       │-        }],
[INFO] [stdout]    20       │-    };
[INFO] [stdout]    21       │-    impl BindGroup0 {
[INFO] [stdout]    22       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    23       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]    24       │-        }
[INFO] [stdout]    25       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]    26       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]    27       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]    28       │-                layout: &bind_group_layout,
[INFO] [stdout]    29       │-                entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]    30       │-                    binding: 0,
[INFO] [stdout]    31       │-                    resource: wgpu::BindingResource::Buffer(bindings.transforms),
[INFO] [stdout]    32       │-                }],
[INFO] [stdout]    33       │-                label: Some("BindGroup0"),
[INFO] [stdout]    34       │-            });
[INFO] [stdout]    35       │-            Self(bind_group)
[INFO] [stdout]    36       │-        }
[INFO] [stdout]    37       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    38       │-            pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]    39       │-        }
[INFO] [stdout]    40       │-    }
[INFO] [stdout]    41       │-    #[derive(Debug, Copy, Clone)]
[INFO] [stdout]    42       │-    pub struct BindGroups<'a> {
[INFO] [stdout]    43       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]    44       │-    }
[INFO] [stdout]    45       │-    impl BindGroups<'_> {
[INFO] [stdout]    46       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    47       │-            self.bind_group0.set(pass);
[INFO] [stdout]    48       │-        }
[INFO] [stdout]    49       │-    }
[INFO] [stdout]    50       │-    pub trait SetBindGroup {
[INFO] [stdout]    51       │-        fn set_bind_group(
[INFO] [stdout]    52       │-            &mut self,
[INFO] [stdout]    53       │-            index: u32,
[INFO] [stdout]    54       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    55       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    56       │-        );
[INFO] [stdout]    57       │-    }
[INFO] [stdout]    58       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]    59       │-        fn set_bind_group(
[INFO] [stdout]    60       │-            &mut self,
[INFO] [stdout]    61       │-            index: u32,
[INFO] [stdout]    62       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    63       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    64       │-        ) {
[INFO] [stdout]    65       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    66       │-        }
[INFO] [stdout]    67       │-    }
[INFO] [stdout]    68       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]    69       │-        fn set_bind_group(
[INFO] [stdout]    70       │-            &mut self,
[INFO] [stdout]    71       │-            index: u32,
[INFO] [stdout]    72       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    73       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    74       │-        ) {
[INFO] [stdout]    75       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    76       │-        }
[INFO] [stdout]    77       │-    }
[INFO] [stdout]    78       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]    79       │-        fn set_bind_group(
[INFO] [stdout]    80       │-            &mut self,
[INFO] [stdout]    81       │-            index: u32,
[INFO] [stdout]    82       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    83       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    84       │-        ) {
[INFO] [stdout]    85       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    86       │-        }
[INFO] [stdout]    87       │-    }
[INFO] [stdout]    88       │-}
[INFO] [stdout]    89       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]    90       │-    pass: &mut P,
[INFO] [stdout]    91       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]    92       │-) {
[INFO] [stdout]    93       │-    bind_group0.set(pass);
[INFO] [stdout]    94       │-}
[INFO] [stdout]           1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub transforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . transforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'bindgroup::tests::bind_groups_module_fragment' (21) panicked at src/bindgroup.rs:656:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/bind_groups_module_fragment.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b781a7c6d - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b781a7c6d - wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_fragment::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5d2b781481a4 - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_fragment::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b781a922b - wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_fragment
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5d2b781a6d47 - wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_fragment::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bindgroup.rs:653:37
[INFO] [stdout]   25:     0x5d2b7813f356 - <wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_fragment::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- bindgroup::tests::bind_groups_module_vertex_fragment stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/bind_groups_module_vertex_fragment.snap
[INFO] [stdout] Snapshot: bind_groups_module_vertex_fragment
[INFO] [stdout] Source: src/bindgroup.rs:642
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod bind_groups {
[INFO] [stdout]     2       │-    #[derive(Debug)]
[INFO] [stdout]     3       │-    pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     4       │-    #[derive(Debug)]
[INFO] [stdout]     5       │-    pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     6       │-        pub color_texture1: &'a wgpu::TextureView,
[INFO] [stdout]     7       │-        pub color_texture2: &'a wgpu::TextureView,
[INFO] [stdout]     8       │-        pub color_texture3: &'a wgpu::TextureView,
[INFO] [stdout]     9       │-        pub depth_texture: &'a wgpu::TextureView,
[INFO] [stdout]    10       │-        pub color_sampler: &'a wgpu::Sampler,
[INFO] [stdout]    11       │-        pub comparison_sampler: &'a wgpu::Sampler,
[INFO] [stdout]    12       │-        pub storage_tex_read: &'a wgpu::TextureView,
[INFO] [stdout]    13       │-        pub storage_tex_write: &'a wgpu::TextureView,
[INFO] [stdout]    14       │-        pub storage_tex_read_write: &'a wgpu::TextureView,
[INFO] [stdout]    15       │-        pub color_texture_msaa: &'a wgpu::TextureView,
[INFO] [stdout]    16       │-        pub depth_texture_msaa: &'a wgpu::TextureView,
[INFO] [stdout]    17       │-        pub color_texture_array_2d: &'a wgpu::TextureView,
[INFO] [stdout]    18       │-        pub color_texture_array_cube: &'a wgpu::TextureView,
[INFO] [stdout]    19       │-        pub texture_binding_array: &'a [&'a wgpu::TextureView; 2],
[INFO] [stdout]    20       │-        pub sampler_binding_array: &'a [&'a wgpu::Sampler; 3],
[INFO] [stdout]    21       │-    }
[INFO] [stdout]    22       │-    const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]    23       │-        label: Some("LayoutDescriptor0"),
[INFO] [stdout]    24       │-        entries: &[
[INFO] [stdout]    25       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    26       │-                binding: 0,
[INFO] [stdout]    27       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]    28       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]    29       │-                    sample_type: wgpu::TextureSampleType::Uint,
[INFO] [stdout]    30       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]    31       │-                    multisampled: false,
[INFO] [stdout]    32       │-                },
[INFO] [stdout]    33       │-                count: None,
[INFO] [stdout]    34       │-            },
[INFO] [stdout]    35       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    36       │-                binding: 1,
[INFO] [stdout]    37       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]    38       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]    39       │-                    sample_type: wgpu::TextureSampleType::Sint,
[INFO] [stdout]    40       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]    41       │-                    multisampled: false,
[INFO] [stdout]    42       │-                },
[INFO] [stdout]    43       │-                count: None,
[INFO] [stdout]    44       │-            },
[INFO] [stdout]    45       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    46       │-                binding: 2,
[INFO] [stdout]    47       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]    48       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]    49       │-                    sample_type: wgpu::TextureSampleType::Float { filterable: true },
[INFO] [stdout]    50       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]    51       │-                    multisampled: false,
[INFO] [stdout]    52       │-                },
[INFO] [stdout]    53       │-                count: None,
[INFO] [stdout]    54       │-            },
[INFO] [stdout]    55       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    56       │-                binding: 3,
[INFO] [stdout]    57       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]    58       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]    59       │-                    sample_type: wgpu::TextureSampleType::Depth,
[INFO] [stdout]    60       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]    61       │-                    multisampled: false,
[INFO] [stdout]    62       │-                },
[INFO] [stdout]    63       │-                count: None,
[INFO] [stdout]    64       │-            },
[INFO] [stdout]    65       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    66       │-                binding: 4,
[INFO] [stdout]    67       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]    68       │-                ty: wgpu::BindingType::Sampler(wgpu::SamplerBindingType::Filtering),
[INFO] [stdout]    69       │-                count: None,
[INFO] [stdout]    70       │-            },
[INFO] [stdout]    71       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    72       │-                binding: 5,
[INFO] [stdout]    73       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]    74       │-                ty: wgpu::BindingType::Sampler(wgpu::SamplerBindingType::Comparison),
[INFO] [stdout]    75       │-                count: None,
[INFO] [stdout]    76       │-            },
[INFO] [stdout]    77       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    78       │-                binding: 6,
[INFO] [stdout]    79       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]    80       │-                ty: wgpu::BindingType::StorageTexture {
[INFO] [stdout]    81       │-                    access: wgpu::StorageTextureAccess::ReadOnly,
[INFO] [stdout]    82       │-                    format: wgpu::TextureFormat::R32Float,
[INFO] [stdout]    83       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]    84       │-                },
[INFO] [stdout]    85       │-                count: None,
[INFO] [stdout]    86       │-            },
[INFO] [stdout]    87       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    88       │-                binding: 7,
[INFO] [stdout]    89       │-                visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]    90       │-                ty: wgpu::BindingType::StorageTexture {
[INFO] [stdout]    91       │-                    access: wgpu::StorageTextureAccess::WriteOnly,
[INFO] [stdout]    92       │-                    format: wgpu::TextureFormat::Rg32Sint,
[INFO] [stdout]    93       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]    94       │-                },
[INFO] [stdout]    95       │-                count: None,
[INFO] [stdout]    96       │-            },
[INFO] [stdout]    97       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    98       │-                binding: 8,
[INFO] [stdout]    99       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   100       │-                ty: wgpu::BindingType::StorageTexture {
[INFO] [stdout]   101       │-                    access: wgpu::StorageTextureAccess::ReadWrite,
[INFO] [stdout]   102       │-                    format: wgpu::TextureFormat::Rgba8Uint,
[INFO] [stdout]   103       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]   104       │-                },
[INFO] [stdout]   105       │-                count: None,
[INFO] [stdout]   106       │-            },
[INFO] [stdout]   107       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   108       │-                binding: 9,
[INFO] [stdout]   109       │-                visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]   110       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]   111       │-                    sample_type: wgpu::TextureSampleType::Float { filterable: true },
[INFO] [stdout]   112       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]   113       │-                    multisampled: true,
[INFO] [stdout]   114       │-                },
[INFO] [stdout]   115       │-                count: None,
[INFO] [stdout]   116       │-            },
[INFO] [stdout]   117       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   118       │-                binding: 10,
[INFO] [stdout]   119       │-                visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]   120       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]   121       │-                    sample_type: wgpu::TextureSampleType::Depth,
[INFO] [stdout]   122       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]   123       │-                    multisampled: true,
[INFO] [stdout]   124       │-                },
[INFO] [stdout]   125       │-                count: None,
[INFO] [stdout]   126       │-            },
[INFO] [stdout]   127       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   128       │-                binding: 11,
[INFO] [stdout]   129       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   130       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]   131       │-                    sample_type: wgpu::TextureSampleType::Float { filterable: true },
[INFO] [stdout]   132       │-                    view_dimension: wgpu::TextureViewDimension::D2Array,
[INFO] [stdout]   133       │-                    multisampled: false,
[INFO] [stdout]   134       │-                },
[INFO] [stdout]   135       │-                count: None,
[INFO] [stdout]   136       │-            },
[INFO] [stdout]   137       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   138       │-                binding: 12,
[INFO] [stdout]   139       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   140       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]   141       │-                    sample_type: wgpu::TextureSampleType::Float { filterable: true },
[INFO] [stdout]   142       │-                    view_dimension: wgpu::TextureViewDimension::CubeArray,
[INFO] [stdout]   143       │-                    multisampled: false,
[INFO] [stdout]   144       │-                },
[INFO] [stdout]   145       │-                count: None,
[INFO] [stdout]   146       │-            },
[INFO] [stdout]   147       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   148       │-                binding: 13,
[INFO] [stdout]   149       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   150       │-                ty: wgpu::BindingType::Texture {
[INFO] [stdout]   151       │-                    sample_type: wgpu::TextureSampleType::Float { filterable: true },
[INFO] [stdout]   152       │-                    view_dimension: wgpu::TextureViewDimension::D2,
[INFO] [stdout]   153       │-                    multisampled: false,
[INFO] [stdout]   154       │-                },
[INFO] [stdout]   155       │-                count: Some(std::num::NonZeroU32::new(2).unwrap()),
[INFO] [stdout]   156       │-            },
[INFO] [stdout]   157       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   158       │-                binding: 14,
[INFO] [stdout]   159       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   160       │-                ty: wgpu::BindingType::Sampler(wgpu::SamplerBindingType::Filtering),
[INFO] [stdout]   161       │-                count: Some(std::num::NonZeroU32::new(3).unwrap()),
[INFO] [stdout]   162       │-            },
[INFO] [stdout]   163       │-        ],
[INFO] [stdout]   164       │-    };
[INFO] [stdout]   165       │-    impl BindGroup0 {
[INFO] [stdout]   166       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]   167       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]   168       │-        }
[INFO] [stdout]   169       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]   170       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]   171       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]   172       │-                layout: &bind_group_layout,
[INFO] [stdout]   173       │-                entries: &[
[INFO] [stdout]   174       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   175       │-                        binding: 0,
[INFO] [stdout]   176       │-                        resource: wgpu::BindingResource::TextureView(bindings.color_texture1),
[INFO] [stdout]   177       │-                    },
[INFO] [stdout]   178       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   179       │-                        binding: 1,
[INFO] [stdout]   180       │-                        resource: wgpu::BindingResource::TextureView(bindings.color_texture2),
[INFO] [stdout]   181       │-                    },
[INFO] [stdout]   182       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   183       │-                        binding: 2,
[INFO] [stdout]   184       │-                        resource: wgpu::BindingResource::TextureView(bindings.color_texture3),
[INFO] [stdout]   185       │-                    },
[INFO] [stdout]   186       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   187       │-                        binding: 3,
[INFO] [stdout]   188       │-                        resource: wgpu::BindingResource::TextureView(bindings.depth_texture),
[INFO] [stdout]   189       │-                    },
[INFO] [stdout]   190       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   191       │-                        binding: 4,
[INFO] [stdout]   192       │-                        resource: wgpu::BindingResource::Sampler(bindings.color_sampler),
[INFO] [stdout]   193       │-                    },
[INFO] [stdout]   194       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   195       │-                        binding: 5,
[INFO] [stdout]   196       │-                        resource: wgpu::BindingResource::Sampler(bindings.comparison_sampler),
[INFO] [stdout]   197       │-                    },
[INFO] [stdout]   198       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   199       │-                        binding: 6,
[INFO] [stdout]   200       │-                        resource: wgpu::BindingResource::TextureView(bindings.storage_tex_read),
[INFO] [stdout]   201       │-                    },
[INFO] [stdout]   202       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   203       │-                        binding: 7,
[INFO] [stdout]   204       │-                        resource: wgpu::BindingResource::TextureView(bindings.storage_tex_write),
[INFO] [stdout]   205       │-                    },
[INFO] [stdout]   206       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   207       │-                        binding: 8,
[INFO] [stdout]   208       │-                        resource: wgpu::BindingResource::TextureView(
[INFO] [stdout]   209       │-                            bindings.storage_tex_read_write,
[INFO] [stdout]   210       │-                        ),
[INFO] [stdout]   211       │-                    },
[INFO] [stdout]   212       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   213       │-                        binding: 9,
[INFO] [stdout]   214       │-                        resource: wgpu::BindingResource::TextureView(bindings.color_texture_msaa),
[INFO] [stdout]   215       │-                    },
[INFO] [stdout]   216       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   217       │-                        binding: 10,
[INFO] [stdout]   218       │-                        resource: wgpu::BindingResource::TextureView(bindings.depth_texture_msaa),
[INFO] [stdout]   219       │-                    },
[INFO] [stdout]   220       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   221       │-                        binding: 11,
[INFO] [stdout]   222       │-                        resource: wgpu::BindingResource::TextureView(
[INFO] [stdout]   223       │-                            bindings.color_texture_array_2d,
[INFO] [stdout]   224       │-                        ),
[INFO] [stdout]   225       │-                    },
[INFO] [stdout]   226       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   227       │-                        binding: 12,
[INFO] [stdout]   228       │-                        resource: wgpu::BindingResource::TextureView(
[INFO] [stdout]   229       │-                            bindings.color_texture_array_cube,
[INFO] [stdout]   230       │-                        ),
[INFO] [stdout]   231       │-                    },
[INFO] [stdout]   232       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   233       │-                        binding: 13,
[INFO] [stdout]   234       │-                        resource: wgpu::BindingResource::TextureViewArray(
[INFO] [stdout]   235       │-                            bindings.texture_binding_array,
[INFO] [stdout]   236       │-                        ),
[INFO] [stdout]   237       │-                    },
[INFO] [stdout]   238       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   239       │-                        binding: 14,
[INFO] [stdout]   240       │-                        resource: wgpu::BindingResource::SamplerArray(
[INFO] [stdout]   241       │-                            bindings.sampler_binding_array,
[INFO] [stdout]   242       │-                        ),
[INFO] [stdout]   243       │-                    },
[INFO] [stdout]   244       │-                ],
[INFO] [stdout]   245       │-                label: Some("BindGroup0"),
[INFO] [stdout]   246       │-            });
[INFO] [stdout]   247       │-            Self(bind_group)
[INFO] [stdout]   248       │-        }
[INFO] [stdout]   249       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   250       │-            pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]   251       │-        }
[INFO] [stdout]   252       │-    }
[INFO] [stdout]   253       │-    #[derive(Debug)]
[INFO] [stdout]   254       │-    pub struct BindGroup1(wgpu::BindGroup);
[INFO] [stdout]   255       │-    #[derive(Debug)]
[INFO] [stdout]   256       │-    pub struct BindGroupLayout1<'a> {
[INFO] [stdout]   257       │-        pub transforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]   258       │-        pub scalar: wgpu::BufferBinding<'a>,
[INFO] [stdout]   259       │-        pub vector: wgpu::BufferBinding<'a>,
[INFO] [stdout]   260       │-        pub matrix: wgpu::BufferBinding<'a>,
[INFO] [stdout]   261       │-        pub transforms_array: &'a [wgpu::BufferBinding<'a>; 2],
[INFO] [stdout]   262       │-        pub scalar_array: &'a [wgpu::BufferBinding<'a>; 3],
[INFO] [stdout]   263       │-        pub vector_array: &'a [wgpu::BufferBinding<'a>; 4],
[INFO] [stdout]   264       │-        pub matrix_array: &'a [wgpu::BufferBinding<'a>; 5],
[INFO] [stdout]   265       │-    }
[INFO] [stdout]   266       │-    const LAYOUT_DESCRIPTOR1: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]   267       │-        label: Some("LayoutDescriptor1"),
[INFO] [stdout]   268       │-        entries: &[
[INFO] [stdout]   269       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   270       │-                binding: 0,
[INFO] [stdout]   271       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   272       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   273       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   274       │-                    has_dynamic_offset: false,
[INFO] [stdout]   275       │-                    min_binding_size: None,
[INFO] [stdout]   276       │-                },
[INFO] [stdout]   277       │-                count: None,
[INFO] [stdout]   278       │-            },
[INFO] [stdout]   279       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   280       │-                binding: 1,
[INFO] [stdout]   281       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   282       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   283       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   284       │-                    has_dynamic_offset: false,
[INFO] [stdout]   285       │-                    min_binding_size: None,
[INFO] [stdout]   286       │-                },
[INFO] [stdout]   287       │-                count: None,
[INFO] [stdout]   288       │-            },
[INFO] [stdout]   289       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   290       │-                binding: 2,
[INFO] [stdout]   291       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   292       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   293       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   294       │-                    has_dynamic_offset: false,
[INFO] [stdout]   295       │-                    min_binding_size: None,
[INFO] [stdout]   296       │-                },
[INFO] [stdout]   297       │-                count: None,
[INFO] [stdout]   298       │-            },
[INFO] [stdout]   299       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   300       │-                binding: 3,
[INFO] [stdout]   301       │-                visibility: wgpu::ShaderStages::VERTEX_FRAGMENT,
[INFO] [stdout]   302       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   303       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   304       │-                    has_dynamic_offset: false,
[INFO] [stdout]   305       │-                    min_binding_size: None,
[INFO] [stdout]   306       │-                },
[INFO] [stdout]   307       │-                count: None,
[INFO] [stdout]   308       │-            },
[INFO] [stdout]   309       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   310       │-                binding: 4,
[INFO] [stdout]   311       │-                visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]   312       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   313       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   314       │-                    has_dynamic_offset: false,
[INFO] [stdout]   315       │-                    min_binding_size: None,
[INFO] [stdout]   316       │-                },
[INFO] [stdout]   317       │-                count: Some(std::num::NonZeroU32::new(2).unwrap()),
[INFO] [stdout]   318       │-            },
[INFO] [stdout]   319       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   320       │-                binding: 5,
[INFO] [stdout]   321       │-                visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]   322       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   323       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   324       │-                    has_dynamic_offset: false,
[INFO] [stdout]   325       │-                    min_binding_size: None,
[INFO] [stdout]   326       │-                },
[INFO] [stdout]   327       │-                count: Some(std::num::NonZeroU32::new(3).unwrap()),
[INFO] [stdout]   328       │-            },
[INFO] [stdout]   329       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   330       │-                binding: 6,
[INFO] [stdout]   331       │-                visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]   332       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   333       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   334       │-                    has_dynamic_offset: false,
[INFO] [stdout]   335       │-                    min_binding_size: None,
[INFO] [stdout]   336       │-                },
[INFO] [stdout]   337       │-                count: Some(std::num::NonZeroU32::new(4).unwrap()),
[INFO] [stdout]   338       │-            },
[INFO] [stdout]   339       │-            wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   340       │-                binding: 7,
[INFO] [stdout]   341       │-                visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]   342       │-                ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   343       │-                    ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   344       │-                    has_dynamic_offset: false,
[INFO] [stdout]   345       │-                    min_binding_size: None,
[INFO] [stdout]   346       │-                },
[INFO] [stdout]   347       │-                count: Some(std::num::NonZeroU32::new(5).unwrap()),
[INFO] [stdout]   348       │-            },
[INFO] [stdout]   349       │-        ],
[INFO] [stdout]   350       │-    };
[INFO] [stdout]   351       │-    impl BindGroup1 {
[INFO] [stdout]   352       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]   353       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR1)
[INFO] [stdout]   354       │-        }
[INFO] [stdout]   355       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout1) -> Self {
[INFO] [stdout]   356       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR1);
[INFO] [stdout]   357       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]   358       │-                layout: &bind_group_layout,
[INFO] [stdout]   359       │-                entries: &[
[INFO] [stdout]   360       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   361       │-                        binding: 0,
[INFO] [stdout]   362       │-                        resource: wgpu::BindingResource::Buffer(bindings.transforms),
[INFO] [stdout]   363       │-                    },
[INFO] [stdout]   364       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   365       │-                        binding: 1,
[INFO] [stdout]   366       │-                        resource: wgpu::BindingResource::Buffer(bindings.scalar),
[INFO] [stdout]   367       │-                    },
[INFO] [stdout]   368       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   369       │-                        binding: 2,
[INFO] [stdout]   370       │-                        resource: wgpu::BindingResource::Buffer(bindings.vector),
[INFO] [stdout]   371       │-                    },
[INFO] [stdout]   372       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   373       │-                        binding: 3,
[INFO] [stdout]   374       │-                        resource: wgpu::BindingResource::Buffer(bindings.matrix),
[INFO] [stdout]   375       │-                    },
[INFO] [stdout]   376       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   377       │-                        binding: 4,
[INFO] [stdout]   378       │-                        resource: wgpu::BindingResource::BufferArray(bindings.transforms_array),
[INFO] [stdout]   379       │-                    },
[INFO] [stdout]   380       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   381       │-                        binding: 5,
[INFO] [stdout]   382       │-                        resource: wgpu::BindingResource::BufferArray(bindings.scalar_array),
[INFO] [stdout]   383       │-                    },
[INFO] [stdout]   384       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   385       │-                        binding: 6,
[INFO] [stdout]   386       │-                        resource: wgpu::BindingResource::BufferArray(bindings.vector_array),
[INFO] [stdout]   387       │-                    },
[INFO] [stdout]   388       │-                    wgpu::BindGroupEntry {
[INFO] [stdout]   389       │-                        binding: 7,
[INFO] [stdout]   390       │-                        resource: wgpu::BindingResource::BufferArray(bindings.matrix_array),
[INFO] [stdout]   391       │-                    },
[INFO] [stdout]   392       │-                ],
[INFO] [stdout]   393       │-                label: Some("BindGroup1"),
[INFO] [stdout]   394       │-            });
[INFO] [stdout]   395       │-            Self(bind_group)
[INFO] [stdout]   396       │-        }
[INFO] [stdout]   397       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   398       │-            pass.set_bind_group(1, &self.0, &[]);
[INFO] [stdout]   399       │-        }
[INFO] [stdout]   400       │-    }
[INFO] [stdout]   401       │-    #[derive(Debug)]
[INFO] [stdout]   402       │-    pub struct BindGroup2(wgpu::BindGroup);
[INFO] [stdout]   403       │-    #[derive(Debug)]
[INFO] [stdout]   404       │-    pub struct BindGroupLayout2<'a> {
[INFO] [stdout]   405       │-        pub acc_struct: &'a wgpu::Tlas,
[INFO] [stdout]   406       │-    }
[INFO] [stdout]   407       │-    const LAYOUT_DESCRIPTOR2: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]   408       │-        label: Some("LayoutDescriptor2"),
[INFO] [stdout]   409       │-        entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   410       │-            binding: 0,
[INFO] [stdout]   411       │-            visibility: wgpu::ShaderStages::NONE,
[INFO] [stdout]   412       │-            ty: wgpu::BindingType::AccelerationStructure {
[INFO] [stdout]   413       │-                vertex_return: false,
[INFO] [stdout]   414       │-            },
[INFO] [stdout]   415       │-            count: None,
[INFO] [stdout]   416       │-        }],
[INFO] [stdout]   417       │-    };
[INFO] [stdout]   418       │-    impl BindGroup2 {
[INFO] [stdout]   419       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]   420       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR2)
[INFO] [stdout]   421       │-        }
[INFO] [stdout]   422       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout2) -> Self {
[INFO] [stdout]   423       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR2);
[INFO] [stdout]   424       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]   425       │-                layout: &bind_group_layout,
[INFO] [stdout]   426       │-                entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]   427       │-                    binding: 0,
[INFO] [stdout]   428       │-                    resource: wgpu::BindingResource::AccelerationStructure(bindings.acc_struct),
[INFO] [stdout]   429       │-                }],
[INFO] [stdout]   430       │-                label: Some("BindGroup2"),
[INFO] [stdout]   431       │-            });
[INFO] [stdout]   432       │-            Self(bind_group)
[INFO] [stdout]   433       │-        }
[INFO] [stdout]   434       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   435       │-            pass.set_bind_group(2, &self.0, &[]);
[INFO] [stdout]   436       │-        }
[INFO] [stdout]   437       │-    }
[INFO] [stdout]   438       │-    #[derive(Debug, Copy, Clone)]
[INFO] [stdout]   439       │-    pub struct BindGroups<'a> {
[INFO] [stdout]   440       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]   441       │-        pub bind_group1: &'a BindGroup1,
[INFO] [stdout]   442       │-        pub bind_group2: &'a BindGroup2,
[INFO] [stdout]   443       │-    }
[INFO] [stdout]   444       │-    impl BindGroups<'_> {
[INFO] [stdout]   445       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   446       │-            self.bind_group0.set(pass);
[INFO] [stdout]   447       │-            self.bind_group1.set(pass);
[INFO] [stdout]   448       │-            self.bind_group2.set(pass);
[INFO] [stdout]   449       │-        }
[INFO] [stdout]   450       │-    }
[INFO] [stdout]   451       │-    pub trait SetBindGroup {
[INFO] [stdout]   452       │-        fn set_bind_group(
[INFO] [stdout]   453       │-            &mut self,
[INFO] [stdout]   454       │-            index: u32,
[INFO] [stdout]   455       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   456       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   457       │-        );
[INFO] [stdout]   458       │-    }
[INFO] [stdout]   459       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]   460       │-        fn set_bind_group(
[INFO] [stdout]   461       │-            &mut self,
[INFO] [stdout]   462       │-            index: u32,
[INFO] [stdout]   463       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   464       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   465       │-        ) {
[INFO] [stdout]   466       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   467       │-        }
[INFO] [stdout]   468       │-    }
[INFO] [stdout]   469       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]   470       │-        fn set_bind_group(
[INFO] [stdout]   471       │-            &mut self,
[INFO] [stdout]   472       │-            index: u32,
[INFO] [stdout]   473       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   474       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   475       │-        ) {
[INFO] [stdout]   476       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   477       │-        }
[INFO] [stdout]   478       │-    }
[INFO] [stdout]   479       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]   480       │-        fn set_bind_group(
[INFO] [stdout]   481       │-            &mut self,
[INFO] [stdout]   482       │-            index: u32,
[INFO] [stdout]   483       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]   484       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   485       │-        ) {
[INFO] [stdout]   486       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   487       │-        }
[INFO] [stdout]   488       │-    }
[INFO] [stdout]   489       │-}
[INFO] [stdout]   490       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]   491       │-    pass: &mut P,
[INFO] [stdout]   492       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]   493       │-    bind_group1: &bind_groups::BindGroup1,
[INFO] [stdout]   494       │-    bind_group2: &bind_groups::BindGroup2,
[INFO] [stdout]   495       │-) {
[INFO] [stdout]   496       │-    bind_group0.set(pass);
[INFO] [stdout]   497       │-    bind_group1.set(pass);
[INFO] [stdout]   498       │-    bind_group2.set(pass);
[INFO] [stdout]   499       │-}
[INFO] [stdout]           1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub color_texture1 : & 'a wgpu :: TextureView , pub color_texture2 : & 'a wgpu :: TextureView , pub color_texture3 : & 'a wgpu :: TextureView , pub depth_texture : & 'a wgpu :: TextureView , pub color_sampler : & 'a wgpu :: Sampler , pub comparison_sampler : & 'a wgpu :: Sampler , pub storage_tex_read : & 'a wgpu :: TextureView , pub storage_tex_write : & 'a wgpu :: TextureView , pub storage_tex_read_write : & 'a wgpu :: TextureView , pub color_texture_msaa : & 'a wgpu :: TextureView , pub depth_texture_msaa : & 'a wgpu :: TextureView , pub color_texture_array_2d : & 'a wgpu :: TextureView , pub color_texture_array_cube : & 'a wgpu :: TextureView , pub texture_binding_array : & 'a [& 'a wgpu :: TextureView ; 2] , pub sampler_binding_array : & 'a [& 'a wgpu :: Sampler ; 3] } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Uint , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 1 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Sint , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 2 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 3 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Depth , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 4 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Sampler (wgpu :: SamplerBindingType :: Filtering) , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 5 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Sampler (wgpu :: SamplerBindingType :: Comparison) , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 6 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: StorageTexture { access : wgpu :: StorageTextureAccess :: ReadOnly , format : wgpu :: TextureFormat :: R32Float , view_dimension : wgpu :: TextureViewDimension :: D2 , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 7 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: StorageTexture { access : wgpu :: StorageTextureAccess :: WriteOnly , format : wgpu :: TextureFormat :: Rg32Sint , view_dimension : wgpu :: TextureViewDimension :: D2 , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 8 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: StorageTexture { access : wgpu :: StorageTextureAccess :: ReadWrite , format : wgpu :: TextureFormat :: Rgba8Uint , view_dimension : wgpu :: TextureViewDimension :: D2 , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 9 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : true , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 10 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Depth , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : true , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 11 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: D2Array , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 12 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: CubeArray , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 13 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : Some (std :: num :: NonZeroU32 :: new (2) . unwrap ()) , } , wgpu :: BindGroupLayoutEntry { binding : 14 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Sampler (wgpu :: SamplerBindingType :: Filtering) , count : Some (std :: num :: NonZeroU32 :: new (3) . unwrap ()) , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture1) , } , wgpu :: BindGroupEntry { binding : 1 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture2) , } , wgpu :: BindGroupEntry { binding : 2 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture3) , } , wgpu :: BindGroupEntry { binding : 3 , resource : wgpu :: BindingResource :: TextureView (bindings . depth_texture) , } , wgpu :: BindGroupEntry { binding : 4 , resource : wgpu :: BindingResource :: Sampler (bindings . color_sampler) , } , wgpu :: BindGroupEntry { binding : 5 , resource : wgpu :: BindingResource :: Sampler (bindings . comparison_sampler) , } , wgpu :: BindGroupEntry { binding : 6 , resource : wgpu :: BindingResource :: TextureView (bindings . storage_tex_read) , } , wgpu :: BindGroupEntry { binding : 7 , resource : wgpu :: BindingResource :: TextureView (bindings . storage_tex_write) , } , wgpu :: BindGroupEntry { binding : 8 , resource : wgpu :: BindingResource :: TextureView (bindings . storage_tex_read_write) , } , wgpu :: BindGroupEntry { binding : 9 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture_msaa) , } , wgpu :: BindGroupEntry { binding : 10 , resource : wgpu :: BindingResource :: TextureView (bindings . depth_texture_msaa) , } , wgpu :: BindGroupEntry { binding : 11 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture_array_2d) , } , wgpu :: BindGroupEntry { binding : 12 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture_array_cube) , } , wgpu :: BindGroupEntry { binding : 13 , resource : wgpu :: BindingResource :: TextureViewArray (bindings . texture_binding_array) , } , wgpu :: BindGroupEntry { binding : 14 , resource : wgpu :: BindingResource :: SamplerArray (bindings . sampler_binding_array) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug)] pub struct BindGroup1 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout1 < 'a > { pub transforms : wgpu :: BufferBinding < 'a > , pub scalar : wgpu :: BufferBinding < 'a > , pub vector : wgpu :: BufferBinding < 'a > , pub matrix : wgpu :: BufferBinding < 'a > , pub transforms_array : & 'a [wgpu :: BufferBinding < 'a > ; 2] , pub scalar_array : & 'a [wgpu :: BufferBinding < 'a > ; 3] , pub vector_array : & 'a [wgpu :: BufferBinding < 'a > ; 4] , pub matrix_array : & 'a [wgpu :: BufferBinding < 'a > ; 5] } const LAYOUT_DESCRIPTOR1 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor1") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 1 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 2 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 3 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 4 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : Some (std :: num :: NonZeroU32 :: new (2) . unwrap ()) , } , wgpu :: BindGroupLayoutEntry { binding : 5 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : Some (std :: num :: NonZeroU32 :: new (3) . unwrap ()) , } , wgpu :: BindGroupLayoutEntry { binding : 6 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : Some (std :: num :: NonZeroU32 :: new (4) . unwrap ()) , } , wgpu :: BindGroupLayoutEntry { binding : 7 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : Some (std :: num :: NonZeroU32 :: new (5) . unwrap ()) , }] , } ; impl BindGroup1 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR1) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout1) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR1) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . transforms) , } , wgpu :: BindGroupEntry { binding : 1 , resource : wgpu :: BindingResource :: Buffer (bindings . scalar) , } , wgpu :: BindGroupEntry { binding : 2 , resource : wgpu :: BindingResource :: Buffer (bindings . vector) , } , wgpu :: BindGroupEntry { binding : 3 , resource : wgpu :: BindingResource :: Buffer (bindings . matrix) , } , wgpu :: BindGroupEntry { binding : 4 , resource : wgpu :: BindingResource :: BufferArray (bindings . transforms_array) , } , wgpu :: BindGroupEntry { binding : 5 , resource : wgpu :: BindingResource :: BufferArray (bindings . scalar_array) , } , wgpu :: BindGroupEntry { binding : 6 , resource : wgpu :: BindingResource :: BufferArray (bindings . vector_array) , } , wgpu :: BindGroupEntry { binding : 7 , resource : wgpu :: BindingResource :: BufferArray (bindings . matrix_array) , }] , label : Some ("BindGroup1") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (1 , & self . 0 , & []) ; } } # [derive (Debug)] pub struct BindGroup2 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout2 < 'a > { pub acc_struct : & 'a wgpu :: Tlas } const LAYOUT_DESCRIPTOR2 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor2") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: AccelerationStructure { vertex_return : false } , count : None , }] , } ; impl BindGroup2 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR2) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout2) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR2) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: AccelerationStructure (bindings . acc_struct) , }] , label : Some ("BindGroup2") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (2 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 , pub bind_group1 : & 'a BindGroup1 , pub bind_group2 : & 'a BindGroup2 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; self . bind_group1 . set (pass) ; self . bind_group2 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0 , bind_group1 : & bind_groups :: BindGroup1 , bind_group2 : & bind_groups :: BindGroup2) { bind_group0 . set (pass) ; bind_group1 . set (pass) ; bind_group2 . set (pass) ; }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'bindgroup::tests::bind_groups_module_vertex_fragment' (23) panicked at src/bindgroup.rs:642:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/bind_groups_module_vertex_fragment.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b781a817d - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b781a817d - wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_vertex_fragment::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5d2b78148264 - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_vertex_fragment::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b781a969b - wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_vertex_fragment
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5d2b781a6d77 - wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_vertex_fragment::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bindgroup.rs:639:44
[INFO] [stdout]   25:     0x5d2b7813f396 - <wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_vertex_fragment::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- bindgroup::tests::bind_groups_module_vertex stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/bind_groups_module_vertex.snap
[INFO] [stdout] Snapshot: bind_groups_module_vertex
[INFO] [stdout] Source: src/bindgroup.rs:649
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod bind_groups {
[INFO] [stdout]     2       │-    #[derive(Debug)]
[INFO] [stdout]     3       │-    pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     4       │-    #[derive(Debug)]
[INFO] [stdout]     5       │-    pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     6       │-        pub transforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]     7       │-    }
[INFO] [stdout]     8       │-    const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]     9       │-        label: Some("LayoutDescriptor0"),
[INFO] [stdout]    10       │-        entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    11       │-            binding: 0,
[INFO] [stdout]    12       │-            visibility: wgpu::ShaderStages::VERTEX,
[INFO] [stdout]    13       │-            ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    14       │-                ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]    15       │-                has_dynamic_offset: false,
[INFO] [stdout]    16       │-                min_binding_size: None,
[INFO] [stdout]    17       │-            },
[INFO] [stdout]    18       │-            count: None,
[INFO] [stdout]    19       │-        }],
[INFO] [stdout]    20       │-    };
[INFO] [stdout]    21       │-    impl BindGroup0 {
[INFO] [stdout]    22       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    23       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]    24       │-        }
[INFO] [stdout]    25       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]    26       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]    27       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]    28       │-                layout: &bind_group_layout,
[INFO] [stdout]    29       │-                entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]    30       │-                    binding: 0,
[INFO] [stdout]    31       │-                    resource: wgpu::BindingResource::Buffer(bindings.transforms),
[INFO] [stdout]    32       │-                }],
[INFO] [stdout]    33       │-                label: Some("BindGroup0"),
[INFO] [stdout]    34       │-            });
[INFO] [stdout]    35       │-            Self(bind_group)
[INFO] [stdout]    36       │-        }
[INFO] [stdout]    37       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    38       │-            pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]    39       │-        }
[INFO] [stdout]    40       │-    }
[INFO] [stdout]    41       │-    #[derive(Debug, Copy, Clone)]
[INFO] [stdout]    42       │-    pub struct BindGroups<'a> {
[INFO] [stdout]    43       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]    44       │-    }
[INFO] [stdout]    45       │-    impl BindGroups<'_> {
[INFO] [stdout]    46       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    47       │-            self.bind_group0.set(pass);
[INFO] [stdout]    48       │-        }
[INFO] [stdout]    49       │-    }
[INFO] [stdout]    50       │-    pub trait SetBindGroup {
[INFO] [stdout]    51       │-        fn set_bind_group(
[INFO] [stdout]    52       │-            &mut self,
[INFO] [stdout]    53       │-            index: u32,
[INFO] [stdout]    54       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    55       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    56       │-        );
[INFO] [stdout]    57       │-    }
[INFO] [stdout]    58       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]    59       │-        fn set_bind_group(
[INFO] [stdout]    60       │-            &mut self,
[INFO] [stdout]    61       │-            index: u32,
[INFO] [stdout]    62       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    63       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    64       │-        ) {
[INFO] [stdout]    65       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    66       │-        }
[INFO] [stdout]    67       │-    }
[INFO] [stdout]    68       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]    69       │-        fn set_bind_group(
[INFO] [stdout]    70       │-            &mut self,
[INFO] [stdout]    71       │-            index: u32,
[INFO] [stdout]    72       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    73       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    74       │-        ) {
[INFO] [stdout]    75       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    76       │-        }
[INFO] [stdout]    77       │-    }
[INFO] [stdout]    78       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]    79       │-        fn set_bind_group(
[INFO] [stdout]    80       │-            &mut self,
[INFO] [stdout]    81       │-            index: u32,
[INFO] [stdout]    82       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    83       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    84       │-        ) {
[INFO] [stdout]    85       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    86       │-        }
[INFO] [stdout]    87       │-    }
[INFO] [stdout]    88       │-}
[INFO] [stdout]    89       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]    90       │-    pass: &mut P,
[INFO] [stdout]    91       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]    92       │-) {
[INFO] [stdout]    93       │-    bind_group0.set(pass);
[INFO] [stdout]    94       │-}
[INFO] [stdout]           1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub transforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: VERTEX , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . transforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'bindgroup::tests::bind_groups_module_vertex' (22) panicked at src/bindgroup.rs:649:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/bind_groups_module_vertex.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b781a724d - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b781a724d - wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_vertex::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5d2b78148024 - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_vertex::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b781a894b - wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_vertex
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5d2b781a6ce7 - wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_vertex::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/bindgroup.rs:646:35
[INFO] [stdout]   25:     0x5d2b7813f2d6 - <wgsl_to_wgpu[f172588ae37ccc70]::bindgroup::tests::bind_groups_module_vertex::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - 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' (27) 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:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7816c8f7 - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_bytemuck_f64_vec
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:681:13
[INFO] [stdout]   20:     0x5d2b78168967 - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_bytemuck_f64_vec::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:476:44
[INFO] [stdout]   21:     0x5d2b7813f096 - <wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_bytemuck_f64_vec::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   41:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   42:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   43:     0x7968a48d0a64 - clone
[INFO] [stdout]   44:                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       │-        immediate_size: 0,
[INFO] [stdout]    42       │-    })
[INFO] [stdout]    43       │-}
[INFO] [stdout]    44       │-#[repr(C)]
[INFO] [stdout]    45       │-#[derive(
[INFO] [stdout]    46       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]    47       │-)]
[INFO] [stdout]    48       │-pub struct Atomics {
[INFO] [stdout]    49       │-    pub num: u32,
[INFO] [stdout]    50       │-    pub numi: i32,
[INFO] [stdout]    51       │-}
[INFO] [stdout]    52       │-const _: () = assert!(
[INFO] [stdout]    53       │-    std::mem::size_of::<Atomics>() == 8,
[INFO] [stdout]    54       │-    "size of Atomics does not match WGSL"
[INFO] [stdout]    55       │-);
[INFO] [stdout]    56       │-const _: () = assert!(
[INFO] [stdout]    57       │-    std::mem::offset_of!(Atomics, num) == 0,
[INFO] [stdout]    58       │-    "offset of Atomics.num does not match WGSL"
[INFO] [stdout]    59       │-);
[INFO] [stdout]    60       │-const _: () = assert!(
[INFO] [stdout]    61       │-    std::mem::offset_of!(Atomics, numi) == 4,
[INFO] [stdout]    62       │-    "offset of Atomics.numi does not match WGSL"
[INFO] [stdout]    63       │-);
[INFO] [stdout]    64       │-#[repr(C)]
[INFO] [stdout]    65       │-#[derive(
[INFO] [stdout]    66       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]    67       │-)]
[INFO] [stdout]    68       │-pub struct MatricesF16 {
[INFO] [stdout]    69       │-    pub a: [[half::f16; 4]; 4],
[INFO] [stdout]    70       │-    pub b: [[half::f16; 4]; 3],
[INFO] [stdout]    71       │-    pub c: [[half::f16; 4]; 2],
[INFO] [stdout]    72       │-    pub d: [[half::f16; 3]; 4],
[INFO] [stdout]    73       │-    pub e: [[half::f16; 3]; 3],
[INFO] [stdout]    74       │-    pub f: [[half::f16; 3]; 2],
[INFO] [stdout]    75       │-    pub g: [[half::f16; 2]; 4],
[INFO] [stdout]    76       │-    pub h: [[half::f16; 2]; 3],
[INFO] [stdout]    77       │-    pub i: [[half::f16; 2]; 2],
[INFO] [stdout]    78       │-}
[INFO] [stdout]    79       │-const _: () = assert!(
[INFO] [stdout]    80       │-    std::mem::size_of::<MatricesF16>() == 184,
[INFO] [stdout]    81       │-    "size of MatricesF16 does not match WGSL"
[INFO] [stdout]    82       │-);
[INFO] [stdout]    83       │-const _: () = assert!(
[INFO] [stdout]    84       │-    std::mem::offset_of!(MatricesF16, a) == 0,
[INFO] [stdout]    85       │-    "offset of MatricesF16.a does not match WGSL"
[INFO] [stdout]    86       │-);
[INFO] [stdout]    87       │-const _: () = assert!(
[INFO] [stdout]    88       │-    std::mem::offset_of!(MatricesF16, b) == 32,
[INFO] [stdout]    89       │-    "offset of MatricesF16.b does not match WGSL"
[INFO] [stdout]    90       │-);
[INFO] [stdout]    91       │-const _: () = assert!(
[INFO] [stdout]    92       │-    std::mem::offset_of!(MatricesF16, c) == 64,
[INFO] [stdout]    93       │-    "offset of MatricesF16.c does not match WGSL"
[INFO] [stdout]    94       │-);
[INFO] [stdout]    95       │-const _: () = assert!(
[INFO] [stdout]    96       │-    std::mem::offset_of!(MatricesF16, d) == 80,
[INFO] [stdout]    97       │-    "offset of MatricesF16.d does not match WGSL"
[INFO] [stdout]    98       │-);
[INFO] [stdout]    99       │-const _: () = assert!(
[INFO] [stdout]   100       │-    std::mem::offset_of!(MatricesF16, e) == 104,
[INFO] [stdout]   101       │-    "offset of MatricesF16.e does not match WGSL"
[INFO] [stdout]   102       │-);
[INFO] [stdout]   103       │-const _: () = assert!(
[INFO] [stdout]   104       │-    std::mem::offset_of!(MatricesF16, f) == 128,
[INFO] [stdout]   105       │-    "offset of MatricesF16.f does not match WGSL"
[INFO] [stdout]   106       │-);
[INFO] [stdout]   107       │-const _: () = assert!(
[INFO] [stdout]   108       │-    std::mem::offset_of!(MatricesF16, g) == 144,
[INFO] [stdout]   109       │-    "offset of MatricesF16.g does not match WGSL"
[INFO] [stdout]   110       │-);
[INFO] [stdout]   111       │-const _: () = assert!(
[INFO] [stdout]   112       │-    std::mem::offset_of!(MatricesF16, h) == 160,
[INFO] [stdout]   113       │-    "offset of MatricesF16.h does not match WGSL"
[INFO] [stdout]   114       │-);
[INFO] [stdout]   115       │-const _: () = assert!(
[INFO] [stdout]   116       │-    std::mem::offset_of!(MatricesF16, i) == 176,
[INFO] [stdout]   117       │-    "offset of MatricesF16.i does not match WGSL"
[INFO] [stdout]   118       │-);
[INFO] [stdout]   119       │-#[repr(C)]
[INFO] [stdout]   120       │-#[derive(
[INFO] [stdout]   121       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   122       │-)]
[INFO] [stdout]   123       │-pub struct MatricesF32 {
[INFO] [stdout]   124       │-    pub a: [[f32; 4]; 4],
[INFO] [stdout]   125       │-    pub b: [[f32; 4]; 3],
[INFO] [stdout]   126       │-    pub c: [[f32; 4]; 2],
[INFO] [stdout]   127       │-    pub d: [[f32; 3]; 4],
[INFO] [stdout]   128       │-    pub e: [[f32; 3]; 3],
[INFO] [stdout]   129       │-    pub f: [[f32; 3]; 2],
[INFO] [stdout]   130       │-    pub g: [[f32; 2]; 4],
[INFO] [stdout]   131       │-    pub h: [[f32; 2]; 3],
[INFO] [stdout]   132       │-    pub i: [[f32; 2]; 2],
[INFO] [stdout]   133       │-}
[INFO] [stdout]   134       │-const _: () = assert!(
[INFO] [stdout]   135       │-    std::mem::size_of::<MatricesF32>() == 368,
[INFO] [stdout]   136       │-    "size of MatricesF32 does not match WGSL"
[INFO] [stdout]   137       │-);
[INFO] [stdout]   138       │-const _: () = assert!(
[INFO] [stdout]   139       │-    std::mem::offset_of!(MatricesF32, a) == 0,
[INFO] [stdout]   140       │-    "offset of MatricesF32.a does not match WGSL"
[INFO] [stdout]   141       │-);
[INFO] [stdout]   142       │-const _: () = assert!(
[INFO] [stdout]   143       │-    std::mem::offset_of!(MatricesF32, b) == 64,
[INFO] [stdout]   144       │-    "offset of MatricesF32.b does not match WGSL"
[INFO] [stdout]   145       │-);
[INFO] [stdout]   146       │-const _: () = assert!(
[INFO] [stdout]   147       │-    std::mem::offset_of!(MatricesF32, c) == 128,
[INFO] [stdout]   148       │-    "offset of MatricesF32.c does not match WGSL"
[INFO] [stdout]   149       │-);
[INFO] [stdout]   150       │-const _: () = assert!(
[INFO] [stdout]   151       │-    std::mem::offset_of!(MatricesF32, d) == 160,
[INFO] [stdout]   152       │-    "offset of MatricesF32.d does not match WGSL"
[INFO] [stdout]   153       │-);
[INFO] [stdout]   154       │-const _: () = assert!(
[INFO] [stdout]   155       │-    std::mem::offset_of!(MatricesF32, e) == 208,
[INFO] [stdout]   156       │-    "offset of MatricesF32.e does not match WGSL"
[INFO] [stdout]   157       │-);
[INFO] [stdout]   158       │-const _: () = assert!(
[INFO] [stdout]   159       │-    std::mem::offset_of!(MatricesF32, f) == 256,
[INFO] [stdout]   160       │-    "offset of MatricesF32.f does not match WGSL"
[INFO] [stdout]   161       │-);
[INFO] [stdout]   162       │-const _: () = assert!(
[INFO] [stdout]   163       │-    std::mem::offset_of!(MatricesF32, g) == 288,
[INFO] [stdout]   164       │-    "offset of MatricesF32.g does not match WGSL"
[INFO] [stdout]   165       │-);
[INFO] [stdout]   166       │-const _: () = assert!(
[INFO] [stdout]   167       │-    std::mem::offset_of!(MatricesF32, h) == 320,
[INFO] [stdout]   168       │-    "offset of MatricesF32.h does not match WGSL"
[INFO] [stdout]   169       │-);
[INFO] [stdout]   170       │-const _: () = assert!(
[INFO] [stdout]   171       │-    std::mem::offset_of!(MatricesF32, i) == 352,
[INFO] [stdout]   172       │-    "offset of MatricesF32.i does not match WGSL"
[INFO] [stdout]   173       │-);
[INFO] [stdout]   174       │-#[repr(C)]
[INFO] [stdout]   175       │-#[derive(
[INFO] [stdout]   176       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   177       │-)]
[INFO] [stdout]   178       │-pub struct MatricesF64 {
[INFO] [stdout]   179       │-    pub a: [[f64; 4]; 4],
[INFO] [stdout]   180       │-    pub b: [[f64; 4]; 3],
[INFO] [stdout]   181       │-    pub c: [[f64; 4]; 2],
[INFO] [stdout]   182       │-    pub d: [[f64; 3]; 4],
[INFO] [stdout]   183       │-    pub e: [[f64; 3]; 3],
[INFO] [stdout]   184       │-    pub f: [[f64; 3]; 2],
[INFO] [stdout]   185       │-    pub g: [[f64; 2]; 4],
[INFO] [stdout]   186       │-    pub h: [[f64; 2]; 3],
[INFO] [stdout]   187       │-    pub i: [[f64; 2]; 2],
[INFO] [stdout]   188       │-}
[INFO] [stdout]   189       │-const _: () = assert!(
[INFO] [stdout]   190       │-    std::mem::size_of::<MatricesF64>() == 736,
[INFO] [stdout]   191       │-    "size of MatricesF64 does not match WGSL"
[INFO] [stdout]   192       │-);
[INFO] [stdout]   193       │-const _: () = assert!(
[INFO] [stdout]   194       │-    std::mem::offset_of!(MatricesF64, a) == 0,
[INFO] [stdout]   195       │-    "offset of MatricesF64.a does not match WGSL"
[INFO] [stdout]   196       │-);
[INFO] [stdout]   197       │-const _: () = assert!(
[INFO] [stdout]   198       │-    std::mem::offset_of!(MatricesF64, b) == 128,
[INFO] [stdout]   199       │-    "offset of MatricesF64.b does not match WGSL"
[INFO] [stdout]   200       │-);
[INFO] [stdout]   201       │-const _: () = assert!(
[INFO] [stdout]   202       │-    std::mem::offset_of!(MatricesF64, c) == 256,
[INFO] [stdout]   203       │-    "offset of MatricesF64.c does not match WGSL"
[INFO] [stdout]   204       │-);
[INFO] [stdout]   205       │-const _: () = assert!(
[INFO] [stdout]   206       │-    std::mem::offset_of!(MatricesF64, d) == 320,
[INFO] [stdout]   207       │-    "offset of MatricesF64.d does not match WGSL"
[INFO] [stdout]   208       │-);
[INFO] [stdout]   209       │-const _: () = assert!(
[INFO] [stdout]   210       │-    std::mem::offset_of!(MatricesF64, e) == 416,
[INFO] [stdout]   211       │-    "offset of MatricesF64.e does not match WGSL"
[INFO] [stdout]   212       │-);
[INFO] [stdout]   213       │-const _: () = assert!(
[INFO] [stdout]   214       │-    std::mem::offset_of!(MatricesF64, f) == 512,
[INFO] [stdout]   215       │-    "offset of MatricesF64.f does not match WGSL"
[INFO] [stdout]   216       │-);
[INFO] [stdout]   217       │-const _: () = assert!(
[INFO] [stdout]   218       │-    std::mem::offset_of!(MatricesF64, g) == 576,
[INFO] [stdout]   219       │-    "offset of MatricesF64.g does not match WGSL"
[INFO] [stdout]   220       │-);
[INFO] [stdout]   221       │-const _: () = assert!(
[INFO] [stdout]   222       │-    std::mem::offset_of!(MatricesF64, h) == 640,
[INFO] [stdout]   223       │-    "offset of MatricesF64.h does not match WGSL"
[INFO] [stdout]   224       │-);
[INFO] [stdout]   225       │-const _: () = assert!(
[INFO] [stdout]   226       │-    std::mem::offset_of!(MatricesF64, i) == 704,
[INFO] [stdout]   227       │-    "offset of MatricesF64.i does not match WGSL"
[INFO] [stdout]   228       │-);
[INFO] [stdout]   229       │-#[repr(C)]
[INFO] [stdout]   230       │-#[derive(
[INFO] [stdout]   231       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   232       │-)]
[INFO] [stdout]   233       │-pub struct Nested {
[INFO] [stdout]   234       │-    pub a: MatricesF32,
[INFO] [stdout]   235       │-    pub b: MatricesF64,
[INFO] [stdout]   236       │-}
[INFO] [stdout]   237       │-const _: () = assert!(
[INFO] [stdout]   238       │-    std::mem::size_of::<Nested>() == 1120,
[INFO] [stdout]   239       │-    "size of Nested does not match WGSL"
[INFO] [stdout]   240       │-);
[INFO] [stdout]   241       │-const _: () = assert!(
[INFO] [stdout]   242       │-    std::mem::offset_of!(Nested, a) == 0,
[INFO] [stdout]   243       │-    "offset of Nested.a does not match WGSL"
[INFO] [stdout]   244       │-);
[INFO] [stdout]   245       │-const _: () = assert!(
[INFO] [stdout]   246       │-    std::mem::offset_of!(Nested, b) == 384,
[INFO] [stdout]   247       │-    "offset of Nested.b does not match WGSL"
[INFO] [stdout]   248       │-);
[INFO] [stdout]   249       │-#[repr(C)]
[INFO] [stdout]   250       │-#[derive(
[INFO] [stdout]   251       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   252       │-)]
[INFO] [stdout]   253       │-pub struct Scalars {
[INFO] [stdout]   254       │-    pub a: u32,
[INFO] [stdout]   255       │-    pub b: i32,
[INFO] [stdout]   256       │-    pub c: f32,
[INFO] [stdout]   257       │-    pub d: half::f16,
[INFO] [stdout]   258       │-}
[INFO] [stdout]   259       │-const _: () = assert!(
[INFO] [stdout]   260       │-    std::mem::size_of::<Scalars>() == 16,
[INFO] [stdout]   261       │-    "size of Scalars does not match WGSL"
[INFO] [stdout]   262       │-);
[INFO] [stdout]   263       │-const _: () = assert!(
[INFO] [stdout]   264       │-    std::mem::offset_of!(Scalars, a) == 0,
[INFO] [stdout]   265       │-    "offset of Scalars.a does not match WGSL"
[INFO] [stdout]   266       │-);
[INFO] [stdout]   267       │-const _: () = assert!(
[INFO] [stdout]   268       │-    std::mem::offset_of!(Scalars, b) == 4,
[INFO] [stdout]   269       │-    "offset of Scalars.b does not match WGSL"
[INFO] [stdout]   270       │-);
[INFO] [stdout]   271       │-const _: () = assert!(
[INFO] [stdout]   272       │-    std::mem::offset_of!(Scalars, c) == 8,
[INFO] [stdout]   273       │-    "offset of Scalars.c does not match WGSL"
[INFO] [stdout]   274       │-);
[INFO] [stdout]   275       │-const _: () = assert!(
[INFO] [stdout]   276       │-    std::mem::offset_of!(Scalars, d) == 12,
[INFO] [stdout]   277       │-    "offset of Scalars.d does not match WGSL"
[INFO] [stdout]   278       │-);
[INFO] [stdout]   279       │-#[repr(C)]
[INFO] [stdout]   280       │-#[derive(
[INFO] [stdout]   281       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   282       │-)]
[INFO] [stdout]   283       │-pub struct StaticArrays {
[INFO] [stdout]   284       │-    pub a: [u32; 5],
[INFO] [stdout]   285       │-    pub b: [f32; 3],
[INFO] [stdout]   286       │-    pub c: [[[f32; 4]; 4]; 512],
[INFO] [stdout]   287       │-}
[INFO] [stdout]   288       │-const _: () = assert!(
[INFO] [stdout]   289       │-    std::mem::size_of::<StaticArrays>() == 32800,
[INFO] [stdout]   290       │-    "size of StaticArrays does not match WGSL"
[INFO] [stdout]   291       │-);
[INFO] [stdout]   292       │-const _: () = assert!(
[INFO] [stdout]   293       │-    std::mem::offset_of!(StaticArrays, a) == 0,
[INFO] [stdout]   294       │-    "offset of StaticArrays.a does not match WGSL"
[INFO] [stdout]   295       │-);
[INFO] [stdout]   296       │-const _: () = assert!(
[INFO] [stdout]   297       │-    std::mem::offset_of!(StaticArrays, b) == 20,
[INFO] [stdout]   298       │-    "offset of StaticArrays.b does not match WGSL"
[INFO] [stdout]   299       │-);
[INFO] [stdout]   300       │-const _: () = assert!(
[INFO] [stdout]   301       │-    std::mem::offset_of!(StaticArrays, c) == 32,
[INFO] [stdout]   302       │-    "offset of StaticArrays.c does not match WGSL"
[INFO] [stdout]   303       │-);
[INFO] [stdout]   304       │-#[repr(C)]
[INFO] [stdout]   305       │-#[derive(
[INFO] [stdout]   306       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   307       │-)]
[INFO] [stdout]   308       │-pub struct VectorsF16 {
[INFO] [stdout]   309       │-    pub a: [half::f16; 2],
[INFO] [stdout]   310       │-    pub b: [half::f16; 4],
[INFO] [stdout]   311       │-}
[INFO] [stdout]   312       │-const _: () = assert!(
[INFO] [stdout]   313       │-    std::mem::size_of::<VectorsF16>() == 16,
[INFO] [stdout]   314       │-    "size of VectorsF16 does not match WGSL"
[INFO] [stdout]   315       │-);
[INFO] [stdout]   316       │-const _: () = assert!(
[INFO] [stdout]   317       │-    std::mem::offset_of!(VectorsF16, a) == 0,
[INFO] [stdout]   318       │-    "offset of VectorsF16.a does not match WGSL"
[INFO] [stdout]   319       │-);
[INFO] [stdout]   320       │-const _: () = assert!(
[INFO] [stdout]   321       │-    std::mem::offset_of!(VectorsF16, b) == 8,
[INFO] [stdout]   322       │-    "offset of VectorsF16.b does not match WGSL"
[INFO] [stdout]   323       │-);
[INFO] [stdout]   324       │-#[repr(C)]
[INFO] [stdout]   325       │-#[derive(
[INFO] [stdout]   326       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   327       │-)]
[INFO] [stdout]   328       │-pub struct VectorsF32 {
[INFO] [stdout]   329       │-    pub a: [f32; 2],
[INFO] [stdout]   330       │-    pub b: [f32; 3],
[INFO] [stdout]   331       │-    pub c: [f32; 4],
[INFO] [stdout]   332       │-}
[INFO] [stdout]   333       │-const _: () = assert!(
[INFO] [stdout]   334       │-    std::mem::size_of::<VectorsF32>() == 48,
[INFO] [stdout]   335       │-    "size of VectorsF32 does not match WGSL"
[INFO] [stdout]   336       │-);
[INFO] [stdout]   337       │-const _: () = assert!(
[INFO] [stdout]   338       │-    std::mem::offset_of!(VectorsF32, a) == 0,
[INFO] [stdout]   339       │-    "offset of VectorsF32.a does not match WGSL"
[INFO] [stdout]   340       │-);
[INFO] [stdout]   341       │-const _: () = assert!(
[INFO] [stdout]   342       │-    std::mem::offset_of!(VectorsF32, b) == 16,
[INFO] [stdout]   343       │-    "offset of VectorsF32.b does not match WGSL"
[INFO] [stdout]   344       │-);
[INFO] [stdout]   345       │-const _: () = assert!(
[INFO] [stdout]   346       │-    std::mem::offset_of!(VectorsF32, c) == 32,
[INFO] [stdout]   347       │-    "offset of VectorsF32.c does not match WGSL"
[INFO] [stdout]   348       │-);
[INFO] [stdout]   349       │-#[repr(C)]
[INFO] [stdout]   350       │-#[derive(
[INFO] [stdout]   351       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   352       │-)]
[INFO] [stdout]   353       │-pub struct VectorsF64 {
[INFO] [stdout]   354       │-    pub a: [f64; 2],
[INFO] [stdout]   355       │-    pub b: [f64; 3],
[INFO] [stdout]   356       │-    pub c: [f64; 4],
[INFO] [stdout]   357       │-}
[INFO] [stdout]   358       │-const _: () = assert!(
[INFO] [stdout]   359       │-    std::mem::size_of::<VectorsF64>() == 96,
[INFO] [stdout]   360       │-    "size of VectorsF64 does not match WGSL"
[INFO] [stdout]   361       │-);
[INFO] [stdout]   362       │-const _: () = assert!(
[INFO] [stdout]   363       │-    std::mem::offset_of!(VectorsF64, a) == 0,
[INFO] [stdout]   364       │-    "offset of VectorsF64.a does not match WGSL"
[INFO] [stdout]   365       │-);
[INFO] [stdout]   366       │-const _: () = assert!(
[INFO] [stdout]   367       │-    std::mem::offset_of!(VectorsF64, b) == 32,
[INFO] [stdout]   368       │-    "offset of VectorsF64.b does not match WGSL"
[INFO] [stdout]   369       │-);
[INFO] [stdout]   370       │-const _: () = assert!(
[INFO] [stdout]   371       │-    std::mem::offset_of!(VectorsF64, c) == 64,
[INFO] [stdout]   372       │-    "offset of VectorsF64.c does not match WGSL"
[INFO] [stdout]   373       │-);
[INFO] [stdout]   374       │-#[repr(C)]
[INFO] [stdout]   375       │-#[derive(
[INFO] [stdout]   376       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   377       │-)]
[INFO] [stdout]   378       │-pub struct VectorsI32 {
[INFO] [stdout]   379       │-    pub a: [i32; 2],
[INFO] [stdout]   380       │-    pub b: [i32; 3],
[INFO] [stdout]   381       │-    pub c: [i32; 4],
[INFO] [stdout]   382       │-}
[INFO] [stdout]   383       │-const _: () = assert!(
[INFO] [stdout]   384       │-    std::mem::size_of::<VectorsI32>() == 48,
[INFO] [stdout]   385       │-    "size of VectorsI32 does not match WGSL"
[INFO] [stdout]   386       │-);
[INFO] [stdout]   387       │-const _: () = assert!(
[INFO] [stdout]   388       │-    std::mem::offset_of!(VectorsI32, a) == 0,
[INFO] [stdout]   389       │-    "offset of VectorsI32.a does not match WGSL"
[INFO] [stdout]   390       │-);
[INFO] [stdout]   391       │-const _: () = assert!(
[INFO] [stdout]   392       │-    std::mem::offset_of!(VectorsI32, b) == 16,
[INFO] [stdout]   393       │-    "offset of VectorsI32.b does not match WGSL"
[INFO] [stdout]   394       │-);
[INFO] [stdout]   395       │-const _: () = assert!(
[INFO] [stdout]   396       │-    std::mem::offset_of!(VectorsI32, c) == 32,
[INFO] [stdout]   397       │-    "offset of VectorsI32.c does not match WGSL"
[INFO] [stdout]   398       │-);
[INFO] [stdout]   399       │-#[repr(C)]
[INFO] [stdout]   400       │-#[derive(
[INFO] [stdout]   401       │-    Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType,
[INFO] [stdout]   402       │-)]
[INFO] [stdout]   403       │-pub struct VectorsU32 {
[INFO] [stdout]   404       │-    pub a: [u32; 2],
[INFO] [stdout]   405       │-    pub b: [u32; 3],
[INFO] [stdout]   406       │-    pub c: [u32; 4],
[INFO] [stdout]   407       │-}
[INFO] [stdout]   408       │-const _: () = assert!(
[INFO] [stdout]   409       │-    std::mem::size_of::<VectorsU32>() == 48,
[INFO] [stdout]   410       │-    "size of VectorsU32 does not match WGSL"
[INFO] [stdout]   411       │-);
[INFO] [stdout]   412       │-const _: () = assert!(
[INFO] [stdout]   413       │-    std::mem::offset_of!(VectorsU32, a) == 0,
[INFO] [stdout]   414       │-    "offset of VectorsU32.a does not match WGSL"
[INFO] [stdout]   415       │-);
[INFO] [stdout]   416       │-const _: () = assert!(
[INFO] [stdout]   417       │-    std::mem::offset_of!(VectorsU32, b) == 16,
[INFO] [stdout]   418       │-    "offset of VectorsU32.b does not match WGSL"
[INFO] [stdout]   419       │-);
[INFO] [stdout]   420       │-const _: () = assert!(
[INFO] [stdout]   421       │-    std::mem::offset_of!(VectorsU32, c) == 32,
[INFO] [stdout]   422       │-    "offset of VectorsU32.c does not match WGSL"
[INFO] [stdout]   423       │-);
[INFO] [stdout]           1 │+pub const ENTRY_MAIN : & str = "main" ; # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn main_entry (targets : [Option < wgpu :: ColorTargetState > ; 0] ,) -> FragmentEntry < 0 > { FragmentEntry { entry_point : ENTRY_MAIN , targets , constants : Default :: default () } } pub const SOURCE : & str = include_str ! ("types.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct Atomics { pub num : u32 , pub numi : i32 } const _ : () = assert ! (std :: mem :: size_of :: < Atomics > () == 8 , "size of Atomics does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Atomics , num) == 0 , "offset of Atomics.num does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Atomics , numi) == 4 , "offset of Atomics.numi does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct MatricesF16 { pub a : [[half :: f16 ; 4] ; 4] , pub b : [[half :: f16 ; 4] ; 3] , pub c : [[half :: f16 ; 4] ; 2] , pub d : [[half :: f16 ; 3] ; 4] , pub e : [[half :: f16 ; 3] ; 3] , pub f : [[half :: f16 ; 3] ; 2] , pub g : [[half :: f16 ; 2] ; 4] , pub h : [[half :: f16 ; 2] ; 3] , pub i : [[half :: f16 ; 2] ; 2] } const _ : () = assert ! (std :: mem :: size_of :: < MatricesF16 > () == 184 , "size of MatricesF16 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , a) == 0 , "offset of MatricesF16.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , b) == 32 , "offset of MatricesF16.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , c) == 64 , "offset of MatricesF16.c does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , d) == 80 , "offset of MatricesF16.d does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , e) == 104 , "offset of MatricesF16.e does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , f) == 128 , "offset of MatricesF16.f does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , g) == 144 , "offset of MatricesF16.g does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , h) == 160 , "offset of MatricesF16.h does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , i) == 176 , "offset of MatricesF16.i does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct MatricesF32 { pub a : [[f32 ; 4] ; 4] , pub b : [[f32 ; 4] ; 3] , pub c : [[f32 ; 4] ; 2] , pub d : [[f32 ; 3] ; 4] , pub e : [[f32 ; 3] ; 3] , pub f : [[f32 ; 3] ; 2] , pub g : [[f32 ; 2] ; 4] , pub h : [[f32 ; 2] ; 3] , pub i : [[f32 ; 2] ; 2] } const _ : () = assert ! (std :: mem :: size_of :: < MatricesF32 > () == 368 , "size of MatricesF32 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , a) == 0 , "offset of MatricesF32.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , b) == 64 , "offset of MatricesF32.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , c) == 128 , "offset of MatricesF32.c does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , d) == 160 , "offset of MatricesF32.d does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , e) == 208 , "offset of MatricesF32.e does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , f) == 256 , "offset of MatricesF32.f does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , g) == 288 , "offset of MatricesF32.g does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , h) == 320 , "offset of MatricesF32.h does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , i) == 352 , "offset of MatricesF32.i does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct MatricesF64 { pub a : [[f64 ; 4] ; 4] , pub b : [[f64 ; 4] ; 3] , pub c : [[f64 ; 4] ; 2] , pub d : [[f64 ; 3] ; 4] , pub e : [[f64 ; 3] ; 3] , pub f : [[f64 ; 3] ; 2] , pub g : [[f64 ; 2] ; 4] , pub h : [[f64 ; 2] ; 3] , pub i : [[f64 ; 2] ; 2] } const _ : () = assert ! (std :: mem :: size_of :: < MatricesF64 > () == 736 , "size of MatricesF64 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , a) == 0 , "offset of MatricesF64.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , b) == 128 , "offset of MatricesF64.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , c) == 256 , "offset of MatricesF64.c does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , d) == 320 , "offset of MatricesF64.d does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , e) == 416 , "offset of MatricesF64.e does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , f) == 512 , "offset of MatricesF64.f does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , g) == 576 , "offset of MatricesF64.g does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , h) == 640 , "offset of MatricesF64.h does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , i) == 704 , "offset of MatricesF64.i does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct Nested { pub a : MatricesF32 , pub b : MatricesF64 } const _ : () = assert ! (std :: mem :: size_of :: < Nested > () == 1120 , "size of Nested does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Nested , a) == 0 , "offset of Nested.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Nested , b) == 384 , "offset of Nested.b does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct Scalars { pub a : u32 , pub b : i32 , pub c : f32 , pub d : half :: f16 } const _ : () = assert ! (std :: mem :: size_of :: < Scalars > () == 16 , "size of Scalars does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Scalars , a) == 0 , "offset of Scalars.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Scalars , b) == 4 , "offset of Scalars.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Scalars , c) == 8 , "offset of Scalars.c does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Scalars , d) == 12 , "offset of Scalars.d does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct StaticArrays { pub a : [u32 ; 5] , pub b : [f32 ; 3] , pub c : [[[f32 ; 4] ; 4] ; 512] } const _ : () = assert ! (std :: mem :: size_of :: < StaticArrays > () == 32800 , "size of StaticArrays does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (StaticArrays , a) == 0 , "offset of StaticArrays.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (StaticArrays , b) == 20 , "offset of StaticArrays.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (StaticArrays , c) == 32 , "offset of StaticArrays.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsF16 { pub a : [half :: f16 ; 2] , pub b : [half :: f16 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsF16 > () == 16 , "size of VectorsF16 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF16 , a) == 0 , "offset of VectorsF16.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF16 , b) == 8 , "offset of VectorsF16.b does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsF32 { pub a : [f32 ; 2] , pub b : [f32 ; 3] , pub c : [f32 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsF32 > () == 48 , "size of VectorsF32 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF32 , a) == 0 , "offset of VectorsF32.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF32 , b) == 16 , "offset of VectorsF32.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF32 , c) == 32 , "offset of VectorsF32.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsF64 { pub a : [f64 ; 2] , pub b : [f64 ; 3] , pub c : [f64 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsF64 > () == 96 , "size of VectorsF64 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF64 , a) == 0 , "offset of VectorsF64.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF64 , b) == 32 , "offset of VectorsF64.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF64 , c) == 64 , "offset of VectorsF64.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsI32 { pub a : [i32 ; 2] , pub b : [i32 ; 3] , pub c : [i32 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsI32 > () == 48 , "size of VectorsI32 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsI32 , a) == 0 , "offset of VectorsI32.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsI32 , b) == 16 , "offset of VectorsI32.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsI32 , c) == 32 , "offset of VectorsI32.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsU32 { pub a : [u32 ; 2] , pub b : [u32 ; 3] , pub c : [u32 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsU32 > () == 48 , "size of VectorsU32 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsU32 , a) == 0 , "offset of VectorsU32.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsU32 , b) == 16 , "offset of VectorsU32.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsU32 , c) == 32 , "offset of VectorsU32.c does not match WGSL") ;
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'structs::tests::write_all_structs_encase_bytemuck' (1239) 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:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b78169ce9 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b78169ce9 - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_encase_bytemuck::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5d2b78147e2f - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_encase_bytemuck::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b7816be3e - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_encase_bytemuck
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5d2b78168937 - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_encase_bytemuck::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:337:43
[INFO] [stdout]   25:     0x5d2b7813f056 - <wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_encase_bytemuck::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - 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' (1238) 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:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7816ec17 - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_bytemuck_skip_input_layout_validation
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:681:13
[INFO] [stdout]   20:     0x5d2b78168ae7 - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_bytemuck_skip_input_layout_validation::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:430:65
[INFO] [stdout]   21:     0x5d2b7813f296 - <wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_bytemuck_skip_input_layout_validation::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   41:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   42:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   43:     0x7968a48d0a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::add_single_root_module stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/add_single_root_module.snap
[INFO] [stdout] Snapshot: add_single_root_module
[INFO] [stdout] Source: src/lib.rs:1094
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod bind_groups {
[INFO] [stdout]     2       │-    #[derive(Debug)]
[INFO] [stdout]     3       │-    pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     4       │-    #[derive(Debug)]
[INFO] [stdout]     5       │-    pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     6       │-        pub uniforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]     7       │-    }
[INFO] [stdout]     8       │-    const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]     9       │-        label: Some("LayoutDescriptor0"),
[INFO] [stdout]    10       │-        entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    11       │-            binding: 0,
[INFO] [stdout]    12       │-            visibility: wgpu::ShaderStages::FRAGMENT,
[INFO] [stdout]    13       │-            ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    14       │-                ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]    15       │-                has_dynamic_offset: false,
[INFO] [stdout]    16       │-                min_binding_size: None,
[INFO] [stdout]    17       │-            },
[INFO] [stdout]    18       │-            count: None,
[INFO] [stdout]    19       │-        }],
[INFO] [stdout]    20       │-    };
[INFO] [stdout]    21       │-    impl BindGroup0 {
[INFO] [stdout]    22       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    23       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]    24       │-        }
[INFO] [stdout]    25       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]    26       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]    27       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]    28       │-                layout: &bind_group_layout,
[INFO] [stdout]    29       │-                entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]    30       │-                    binding: 0,
[INFO] [stdout]    31       │-                    resource: wgpu::BindingResource::Buffer(bindings.uniforms),
[INFO] [stdout]    32       │-                }],
[INFO] [stdout]    33       │-                label: Some("BindGroup0"),
[INFO] [stdout]    34       │-            });
[INFO] [stdout]    35       │-            Self(bind_group)
[INFO] [stdout]    36       │-        }
[INFO] [stdout]    37       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    38       │-            pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]    39       │-        }
[INFO] [stdout]    40       │-    }
[INFO] [stdout]    41       │-    #[derive(Debug, Copy, Clone)]
[INFO] [stdout]    42       │-    pub struct BindGroups<'a> {
[INFO] [stdout]    43       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]    44       │-    }
[INFO] [stdout]    45       │-    impl BindGroups<'_> {
[INFO] [stdout]    46       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    47       │-            self.bind_group0.set(pass);
[INFO] [stdout]    48       │-        }
[INFO] [stdout]    49       │-    }
[INFO] [stdout]    50       │-    pub trait SetBindGroup {
[INFO] [stdout]    51       │-        fn set_bind_group(
[INFO] [stdout]    52       │-            &mut self,
[INFO] [stdout]    53       │-            index: u32,
[INFO] [stdout]    54       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    55       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    56       │-        );
[INFO] [stdout]    57       │-    }
[INFO] [stdout]    58       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]    59       │-        fn set_bind_group(
[INFO] [stdout]    60       │-            &mut self,
[INFO] [stdout]    61       │-            index: u32,
[INFO] [stdout]    62       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    63       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    64       │-        ) {
[INFO] [stdout]    65       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    66       │-        }
[INFO] [stdout]    67       │-    }
[INFO] [stdout]    68       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]    69       │-        fn set_bind_group(
[INFO] [stdout]    70       │-            &mut self,
[INFO] [stdout]    71       │-            index: u32,
[INFO] [stdout]    72       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    73       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    74       │-        ) {
[INFO] [stdout]    75       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    76       │-        }
[INFO] [stdout]    77       │-    }
[INFO] [stdout]    78       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]    79       │-        fn set_bind_group(
[INFO] [stdout]    80       │-            &mut self,
[INFO] [stdout]    81       │-            index: u32,
[INFO] [stdout]    82       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    83       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    84       │-        ) {
[INFO] [stdout]    85       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    86       │-        }
[INFO] [stdout]    87       │-    }
[INFO] [stdout]    88       │-}
[INFO] [stdout]    89       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]    90       │-    pass: &mut P,
[INFO] [stdout]    91       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]    92       │-) {
[INFO] [stdout]    93       │-    bind_group0.set(pass);
[INFO] [stdout]    94       │-}
[INFO] [stdout]    95       │-pub const ENTRY_VERT: &str = "vert";
[INFO] [stdout]    96       │-pub const ENTRY_FRAG: &str = "frag";
[INFO] [stdout]    97       │-#[derive(Debug)]
[INFO] [stdout]    98       │-pub struct VertexEntry<const N: usize> {
[INFO] [stdout]    99       │-    pub entry_point: &'static str,
[INFO] [stdout]   100       │-    pub buffers: [wgpu::VertexBufferLayout<'static>; N],
[INFO] [stdout]   101       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   102       │-}
[INFO] [stdout]   103       │-pub fn vertex_state<'a, const N: usize>(
[INFO] [stdout]   104       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]   105       │-    entry: &'a VertexEntry<N>,
[INFO] [stdout]   106       │-) -> wgpu::VertexState<'a> {
[INFO] [stdout]   107       │-    wgpu::VertexState {
[INFO] [stdout]   108       │-        module,
[INFO] [stdout]   109       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]   110       │-        buffers: &entry.buffers,
[INFO] [stdout]   111       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   112       │-            constants: &entry.constants,
[INFO] [stdout]   113       │-            ..Default::default()
[INFO] [stdout]   114       │-        },
[INFO] [stdout]   115       │-    }
[INFO] [stdout]   116       │-}
[INFO] [stdout]   117       │-pub fn vert_entry(vertex_input: wgpu::VertexStepMode) -> VertexEntry<1> {
[INFO] [stdout]   118       │-    VertexEntry {
[INFO] [stdout]   119       │-        entry_point: ENTRY_VERT,
[INFO] [stdout]   120       │-        buffers: [VertexInput::vertex_buffer_layout(vertex_input)],
[INFO] [stdout]   121       │-        constants: Default::default(),
[INFO] [stdout]   122       │-    }
[INFO] [stdout]   123       │-}
[INFO] [stdout]   124       │-#[derive(Debug)]
[INFO] [stdout]   125       │-pub struct FragmentEntry<const N: usize> {
[INFO] [stdout]   126       │-    pub entry_point: &'static str,
[INFO] [stdout]   127       │-    pub targets: [Option<wgpu::ColorTargetState>; N],
[INFO] [stdout]   128       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   129       │-}
[INFO] [stdout]   130       │-pub fn fragment_state<'a, const N: usize>(
[INFO] [stdout]   131       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]   132       │-    entry: &'a FragmentEntry<N>,
[INFO] [stdout]   133       │-) -> wgpu::FragmentState<'a> {
[INFO] [stdout]   134       │-    wgpu::FragmentState {
[INFO] [stdout]   135       │-        module,
[INFO] [stdout]   136       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]   137       │-        targets: &entry.targets,
[INFO] [stdout]   138       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   139       │-            constants: &entry.constants,
[INFO] [stdout]   140       │-            ..Default::default()
[INFO] [stdout]   141       │-        },
[INFO] [stdout]   142       │-    }
[INFO] [stdout]   143       │-}
[INFO] [stdout]   144       │-pub fn frag_entry(targets: [Option<wgpu::ColorTargetState>; 1]) -> FragmentEntry<1> {
[INFO] [stdout]   145       │-    FragmentEntry {
[INFO] [stdout]   146       │-        entry_point: ENTRY_FRAG,
[INFO] [stdout]   147       │-        targets,
[INFO] [stdout]   148       │-        constants: Default::default(),
[INFO] [stdout]   149       │-    }
[INFO] [stdout]   150       │-}
[INFO] [stdout]   151       │-pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ;
[INFO] [stdout]   152       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]   153       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]   154       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]   155       │-        label: None,
[INFO] [stdout]   156       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]   157       │-    })
[INFO] [stdout]   158       │-}
[INFO] [stdout]   159       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]   160       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]   161       │-        label: None,
[INFO] [stdout]   162       │-        bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)],
[INFO] [stdout]   163       │-        immediate_size: 0,
[INFO] [stdout]   164       │-    })
[INFO] [stdout]   165       │-}
[INFO] [stdout]   166       │-#[repr(C)]
[INFO] [stdout]   167       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   168       │-pub struct Root {
[INFO] [stdout]   169       │-    pub c: [f32; 4],
[INFO] [stdout]   170       │-}
[INFO] [stdout]   171       │-pub mod shared {
[INFO] [stdout]   172       │-    #[repr(C)]
[INFO] [stdout]   173       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   174       │-    pub struct Shared {
[INFO] [stdout]   175       │-        pub d: [f32; 4],
[INFO] [stdout]   176       │-    }
[INFO] [stdout]   177       │-    pub const TEST: f32 = 1f32;
[INFO] [stdout]   178       │-    #[repr(C)]
[INFO] [stdout]   179       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   180       │-    pub struct VertexInput {
[INFO] [stdout]   181       │-        pub position: [f32; 3],
[INFO] [stdout]   182       │-    }
[INFO] [stdout]   183       │-    impl VertexInput {
[INFO] [stdout]   184       │-        pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 1] = [wgpu::VertexAttribute {
[INFO] [stdout]   185       │-            format: wgpu::VertexFormat::Float32x3,
[INFO] [stdout]   186       │-            offset: std::mem::offset_of!(VertexInput, position) as u64,
[INFO] [stdout]   187       │-            shader_location: 0,
[INFO] [stdout]   188       │-        }];
[INFO] [stdout]   189       │-        pub const fn vertex_buffer_layout(
[INFO] [stdout]   190       │-            step_mode: wgpu::VertexStepMode,
[INFO] [stdout]   191       │-        ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]   192       │-            wgpu::VertexBufferLayout {
[INFO] [stdout]   193       │-                array_stride: std::mem::size_of::<VertexInput>() as u64,
[INFO] [stdout]   194       │-                step_mode,
[INFO] [stdout]   195       │-                attributes: &VertexInput::VERTEX_ATTRIBUTES,
[INFO] [stdout]   196       │-            }
[INFO] [stdout]   197       │-        }
[INFO] [stdout]   198       │-    }
[INFO] [stdout]   199       │-}
[INFO] [stdout]   200       │-pub mod uniforms {
[INFO] [stdout]   201       │-    #[repr(C)]
[INFO] [stdout]   202       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   203       │-    pub struct Uniforms {
[INFO] [stdout]   204       │-        pub a: [f32; 4],
[INFO] [stdout]   205       │-        pub b: nested::Nested,
[INFO] [stdout]   206       │-    }
[INFO] [stdout]   207       │-    pub mod nested {
[INFO] [stdout]   208       │-        #[repr(C)]
[INFO] [stdout]   209       │-        #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   210       │-        pub struct Nested {
[INFO] [stdout]   211       │-            pub a: [f32; 4],
[INFO] [stdout]   212       │-            pub b: super::super::Root,
[INFO] [stdout]   213       │-            pub c: super::super::shared::Shared,
[INFO] [stdout]   214       │-        }
[INFO] [stdout]   215       │-    }
[INFO] [stdout]   216       │-}
[INFO] [stdout]           1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub uniforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . uniforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; } pub const ENTRY_VERT : & str = "vert" ; pub const ENTRY_FRAG : & str = "frag" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn vert_entry (vertex_input : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_VERT , buffers : [VertexInput :: vertex_buffer_layout (vertex_input)] , constants : Default :: default () } } # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn frag_entry (targets : [Option < wgpu :: ColorTargetState > ; 1] ,) -> FragmentEntry < 1 > { FragmentEntry { entry_point : ENTRY_FRAG , targets , constants : Default :: default () } } pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Root { pub c : [f32 ; 4] } pub mod shared { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Shared { pub d : [f32 ; 4] } pub const TEST : f32 = 1f32 ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct VertexInput { pub position : [f32 ; 3] } impl VertexInput { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 1] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x3 , offset : std :: mem :: offset_of ! (VertexInput , position) as u64 , shader_location : 0 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput > () as u64 , step_mode , attributes : & VertexInput :: VERTEX_ATTRIBUTES } } } } pub mod uniforms { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Uniforms { pub a : [f32 ; 4] , pub b : nested :: Nested } pub mod nested { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Nested { pub a : [f32 ; 4] , pub b : super :: super :: Root , pub c : super :: super :: shared :: Shared } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::add_single_root_module' (2444) panicked at src/lib.rs:1094:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/add_single_root_module.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b7817def9 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b7817def9 - wgsl_to_wgpu[f172588ae37ccc70]::test::add_single_root_module::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5d2b7814724f - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::test::add_single_root_module::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b7818342b - wgsl_to_wgpu[f172588ae37ccc70]::test::add_single_root_module
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5d2b7817c937 - wgsl_to_wgpu[f172588ae37ccc70]::test::add_single_root_module::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1078:32
[INFO] [stdout]   25:     0x5d2b7813e986 - <wgsl_to_wgpu[f172588ae37ccc70]::test::add_single_root_module::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- structs::tests::write_all_structs_serde_encase_bytemuck stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_all_structs_serde_encase_bytemuck.snap
[INFO] [stdout] Snapshot: write_all_structs_serde_encase_bytemuck
[INFO] [stdout] Source: src/structs.rs:371
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod compute {
[INFO] [stdout]     2       │-    pub const MAIN_WORKGROUP_SIZE: [u32; 3] = [64, 1, 1];
[INFO] [stdout]     3       │-    pub fn create_main_pipeline(device: &wgpu::Device) -> wgpu::ComputePipeline {
[INFO] [stdout]     4       │-        let module = super::create_shader_module(device);
[INFO] [stdout]     5       │-        let layout = super::create_pipeline_layout(device);
[INFO] [stdout]     6       │-        device.create_compute_pipeline(&wgpu::ComputePipelineDescriptor {
[INFO] [stdout]     7       │-            label: Some("Compute Pipeline main"),
[INFO] [stdout]     8       │-            layout: Some(&layout),
[INFO] [stdout]     9       │-            module: &module,
[INFO] [stdout]    10       │-            entry_point: Some("main"),
[INFO] [stdout]    11       │-            compilation_options: Default::default(),
[INFO] [stdout]    12       │-            cache: Default::default(),
[INFO] [stdout]    13       │-        })
[INFO] [stdout]    14       │-    }
[INFO] [stdout]    15       │-}
[INFO] [stdout]    16       │-pub const ENTRY_MAIN: &str = "main";
[INFO] [stdout]    17       │-pub const SOURCE: &str = include_str!("serde_encase_bytemuck.wgsl");
[INFO] [stdout]    18       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]    19       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]    20       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]    21       │-        label: None,
[INFO] [stdout]    22       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]    23       │-    })
[INFO] [stdout]    24       │-}
[INFO] [stdout]    25       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]    26       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]    27       │-        label: None,
[INFO] [stdout]    28       │-        bind_group_layouts: &[],
[INFO] [stdout]    29       │-        immediate_size: 0,
[INFO] [stdout]    30       │-    })
[INFO] [stdout]    31       │-}
[INFO] [stdout]    32       │-#[repr(C)]
[INFO] [stdout]    33       │-#[derive(
[INFO] [stdout]    34       │-    Debug,
[INFO] [stdout]    35       │-    Copy,
[INFO] [stdout]    36       │-    Clone,
[INFO] [stdout]    37       │-    PartialEq,
[INFO] [stdout]    38       │-    bytemuck :: Pod,
[INFO] [stdout]    39       │-    bytemuck :: Zeroable,
[INFO] [stdout]    40       │-    encase :: ShaderType,
[INFO] [stdout]    41       │-    serde :: Serialize,
[INFO] [stdout]    42       │-    serde :: Deserialize,
[INFO] [stdout]    43       │-)]
[INFO] [stdout]    44       │-pub struct Input0 {
[INFO] [stdout]    45       │-    pub a: u32,
[INFO] [stdout]    46       │-    pub b: i32,
[INFO] [stdout]    47       │-    pub c: f32,
[INFO] [stdout]    48       │-}
[INFO] [stdout]    49       │-const _: () = assert!(
[INFO] [stdout]    50       │-    std::mem::size_of::<Input0>() == 12,
[INFO] [stdout]    51       │-    "size of Input0 does not match WGSL"
[INFO] [stdout]    52       │-);
[INFO] [stdout]    53       │-const _: () = assert!(
[INFO] [stdout]    54       │-    std::mem::offset_of!(Input0, a) == 0,
[INFO] [stdout]    55       │-    "offset of Input0.a does not match WGSL"
[INFO] [stdout]    56       │-);
[INFO] [stdout]    57       │-const _: () = assert!(
[INFO] [stdout]    58       │-    std::mem::offset_of!(Input0, b) == 4,
[INFO] [stdout]    59       │-    "offset of Input0.b does not match WGSL"
[INFO] [stdout]    60       │-);
[INFO] [stdout]    61       │-const _: () = assert!(
[INFO] [stdout]    62       │-    std::mem::offset_of!(Input0, c) == 8,
[INFO] [stdout]    63       │-    "offset of Input0.c does not match WGSL"
[INFO] [stdout]    64       │-);
[INFO] [stdout]    65       │-#[repr(C)]
[INFO] [stdout]    66       │-#[derive(
[INFO] [stdout]    67       │-    Debug,
[INFO] [stdout]    68       │-    Copy,
[INFO] [stdout]    69       │-    Clone,
[INFO] [stdout]    70       │-    PartialEq,
[INFO] [stdout]    71       │-    bytemuck :: Pod,
[INFO] [stdout]    72       │-    bytemuck :: Zeroable,
[INFO] [stdout]    73       │-    encase :: ShaderType,
[INFO] [stdout]    74       │-    serde :: Serialize,
[INFO] [stdout]    75       │-    serde :: Deserialize,
[INFO] [stdout]    76       │-)]
[INFO] [stdout]    77       │-pub struct Nested {
[INFO] [stdout]    78       │-    pub a: Input0,
[INFO] [stdout]    79       │-    pub b: f32,
[INFO] [stdout]    80       │-}
[INFO] [stdout]    81       │-const _: () = assert!(
[INFO] [stdout]    82       │-    std::mem::size_of::<Nested>() == 16,
[INFO] [stdout]    83       │-    "size of Nested does not match WGSL"
[INFO] [stdout]    84       │-);
[INFO] [stdout]    85       │-const _: () = assert!(
[INFO] [stdout]    86       │-    std::mem::offset_of!(Nested, a) == 0,
[INFO] [stdout]    87       │-    "offset of Nested.a does not match WGSL"
[INFO] [stdout]    88       │-);
[INFO] [stdout]    89       │-const _: () = assert!(
[INFO] [stdout]    90       │-    std::mem::offset_of!(Nested, b) == 12,
[INFO] [stdout]    91       │-    "offset of Nested.b does not match WGSL"
[INFO] [stdout]    92       │-);
[INFO] [stdout]           1 │+pub mod compute { pub const MAIN_WORKGROUP_SIZE : [u32 ; 3] = [64 , 1 , 1] ; pub fn create_main_pipeline (device : & wgpu :: Device) -> wgpu :: ComputePipeline { let module = super :: create_shader_module (device) ; let layout = super :: create_pipeline_layout (device) ; device . create_compute_pipeline (& wgpu :: ComputePipelineDescriptor { label : Some ("Compute Pipeline main") , layout : Some (& layout) , module : & module , entry_point : Some ("main") , compilation_options : Default :: default () , cache : Default :: default () , }) } } pub const ENTRY_MAIN : & str = "main" ; pub const SOURCE : & str = include_str ! ("serde_encase_bytemuck.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType , serde :: Serialize , serde :: Deserialize)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f32 } const _ : () = assert ! (std :: mem :: size_of :: < Input0 > () == 12 , "size of Input0 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , a) == 0 , "offset of Input0.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , b) == 4 , "offset of Input0.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , c) == 8 , "offset of Input0.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType , serde :: Serialize , serde :: Deserialize)] pub struct Nested { pub a : Input0 , pub b : f32 } const _ : () = assert ! (std :: mem :: size_of :: < Nested > () == 16 , "size of Nested does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Nested , a) == 0 , "offset of Nested.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Nested , b) == 12 , "offset of Nested.b does not match WGSL") ;
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'structs::tests::write_all_structs_serde_encase_bytemuck' (1383) 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:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b7816a199 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b7816a199 - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_serde_encase_bytemuck::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5d2b78147ecf - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_serde_encase_bytemuck::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b7816d83e - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_serde_encase_bytemuck
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5d2b781689f7 - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_serde_encase_bytemuck::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:356:49
[INFO] [stdout]   25:     0x5d2b7813f156 - <wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_serde_encase_bytemuck::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::add_duplicate_module_different_paths stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/add_duplicate_module_different_paths.snap
[INFO] [stdout] Snapshot: add_duplicate_module_different_paths
[INFO] [stdout] Source: src/lib.rs:1127
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod shader1 {
[INFO] [stdout]     2       │-    pub mod bind_groups {
[INFO] [stdout]     3       │-        #[derive(Debug)]
[INFO] [stdout]     4       │-        pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     5       │-        #[derive(Debug)]
[INFO] [stdout]     6       │-        pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     7       │-            pub uniforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]     8       │-        }
[INFO] [stdout]     9       │-        const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor =
[INFO] [stdout]    10       │-            wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]    11       │-                label: Some("LayoutDescriptor0"),
[INFO] [stdout]    12       │-                entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    13       │-                    binding: 0,
[INFO] [stdout]    14       │-                    visibility: wgpu::ShaderStages::FRAGMENT,
[INFO] [stdout]    15       │-                    ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    16       │-                        ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]    17       │-                        has_dynamic_offset: false,
[INFO] [stdout]    18       │-                        min_binding_size: None,
[INFO] [stdout]    19       │-                    },
[INFO] [stdout]    20       │-                    count: None,
[INFO] [stdout]    21       │-                }],
[INFO] [stdout]    22       │-            };
[INFO] [stdout]    23       │-        impl BindGroup0 {
[INFO] [stdout]    24       │-            pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    25       │-                device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]    26       │-            }
[INFO] [stdout]    27       │-            pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]    28       │-                let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]    29       │-                let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]    30       │-                    layout: &bind_group_layout,
[INFO] [stdout]    31       │-                    entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]    32       │-                        binding: 0,
[INFO] [stdout]    33       │-                        resource: wgpu::BindingResource::Buffer(bindings.uniforms),
[INFO] [stdout]    34       │-                    }],
[INFO] [stdout]    35       │-                    label: Some("BindGroup0"),
[INFO] [stdout]    36       │-                });
[INFO] [stdout]    37       │-                Self(bind_group)
[INFO] [stdout]    38       │-            }
[INFO] [stdout]    39       │-            pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    40       │-                pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]    41       │-            }
[INFO] [stdout]    42       │-        }
[INFO] [stdout]    43       │-        #[derive(Debug, Copy, Clone)]
[INFO] [stdout]    44       │-        pub struct BindGroups<'a> {
[INFO] [stdout]    45       │-            pub bind_group0: &'a BindGroup0,
[INFO] [stdout]    46       │-        }
[INFO] [stdout]    47       │-        impl BindGroups<'_> {
[INFO] [stdout]    48       │-            pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    49       │-                self.bind_group0.set(pass);
[INFO] [stdout]    50       │-            }
[INFO] [stdout]    51       │-        }
[INFO] [stdout]    52       │-        pub trait SetBindGroup {
[INFO] [stdout]    53       │-            fn set_bind_group(
[INFO] [stdout]    54       │-                &mut self,
[INFO] [stdout]    55       │-                index: u32,
[INFO] [stdout]    56       │-                bind_group: &wgpu::BindGroup,
[INFO] [stdout]    57       │-                offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    58       │-            );
[INFO] [stdout]    59       │-        }
[INFO] [stdout]    60       │-        impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]    61       │-            fn set_bind_group(
[INFO] [stdout]    62       │-                &mut self,
[INFO] [stdout]    63       │-                index: u32,
[INFO] [stdout]    64       │-                bind_group: &wgpu::BindGroup,
[INFO] [stdout]    65       │-                offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    66       │-            ) {
[INFO] [stdout]    67       │-                self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    68       │-            }
[INFO] [stdout]    69       │-        }
[INFO] [stdout]    70       │-        impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]    71       │-            fn set_bind_group(
[INFO] [stdout]    72       │-                &mut self,
[INFO] [stdout]    73       │-                index: u32,
[INFO] [stdout]    74       │-                bind_group: &wgpu::BindGroup,
[INFO] [stdout]    75       │-                offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    76       │-            ) {
[INFO] [stdout]    77       │-                self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    78       │-            }
[INFO] [stdout]    79       │-        }
[INFO] [stdout]    80       │-        impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]    81       │-            fn set_bind_group(
[INFO] [stdout]    82       │-                &mut self,
[INFO] [stdout]    83       │-                index: u32,
[INFO] [stdout]    84       │-                bind_group: &wgpu::BindGroup,
[INFO] [stdout]    85       │-                offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    86       │-            ) {
[INFO] [stdout]    87       │-                self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    88       │-            }
[INFO] [stdout]    89       │-        }
[INFO] [stdout]    90       │-    }
[INFO] [stdout]    91       │-    pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]    92       │-        pass: &mut P,
[INFO] [stdout]    93       │-        bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]    94       │-    ) {
[INFO] [stdout]    95       │-        bind_group0.set(pass);
[INFO] [stdout]    96       │-    }
[INFO] [stdout]    97       │-    pub const ENTRY_VERT: &str = "vert";
[INFO] [stdout]    98       │-    pub const ENTRY_FRAG: &str = "frag";
[INFO] [stdout]    99       │-    #[derive(Debug)]
[INFO] [stdout]   100       │-    pub struct VertexEntry<const N: usize> {
[INFO] [stdout]   101       │-        pub entry_point: &'static str,
[INFO] [stdout]   102       │-        pub buffers: [wgpu::VertexBufferLayout<'static>; N],
[INFO] [stdout]   103       │-        pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   104       │-    }
[INFO] [stdout]   105       │-    pub fn vertex_state<'a, const N: usize>(
[INFO] [stdout]   106       │-        module: &'a wgpu::ShaderModule,
[INFO] [stdout]   107       │-        entry: &'a VertexEntry<N>,
[INFO] [stdout]   108       │-    ) -> wgpu::VertexState<'a> {
[INFO] [stdout]   109       │-        wgpu::VertexState {
[INFO] [stdout]   110       │-            module,
[INFO] [stdout]   111       │-            entry_point: Some(entry.entry_point),
[INFO] [stdout]   112       │-            buffers: &entry.buffers,
[INFO] [stdout]   113       │-            compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   114       │-                constants: &entry.constants,
[INFO] [stdout]   115       │-                ..Default::default()
[INFO] [stdout]   116       │-            },
[INFO] [stdout]   117       │-        }
[INFO] [stdout]   118       │-    }
[INFO] [stdout]   119       │-    pub fn vert_entry(vertex_input: wgpu::VertexStepMode) -> VertexEntry<1> {
[INFO] [stdout]   120       │-        VertexEntry {
[INFO] [stdout]   121       │-            entry_point: ENTRY_VERT,
[INFO] [stdout]   122       │-            buffers: [VertexInput::vertex_buffer_layout(vertex_input)],
[INFO] [stdout]   123       │-            constants: Default::default(),
[INFO] [stdout]   124       │-        }
[INFO] [stdout]   125       │-    }
[INFO] [stdout]   126       │-    #[derive(Debug)]
[INFO] [stdout]   127       │-    pub struct FragmentEntry<const N: usize> {
[INFO] [stdout]   128       │-        pub entry_point: &'static str,
[INFO] [stdout]   129       │-        pub targets: [Option<wgpu::ColorTargetState>; N],
[INFO] [stdout]   130       │-        pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   131       │-    }
[INFO] [stdout]   132       │-    pub fn fragment_state<'a, const N: usize>(
[INFO] [stdout]   133       │-        module: &'a wgpu::ShaderModule,
[INFO] [stdout]   134       │-        entry: &'a FragmentEntry<N>,
[INFO] [stdout]   135       │-    ) -> wgpu::FragmentState<'a> {
[INFO] [stdout]   136       │-        wgpu::FragmentState {
[INFO] [stdout]   137       │-            module,
[INFO] [stdout]   138       │-            entry_point: Some(entry.entry_point),
[INFO] [stdout]   139       │-            targets: &entry.targets,
[INFO] [stdout]   140       │-            compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   141       │-                constants: &entry.constants,
[INFO] [stdout]   142       │-                ..Default::default()
[INFO] [stdout]   143       │-            },
[INFO] [stdout]   144       │-        }
[INFO] [stdout]   145       │-    }
[INFO] [stdout]   146       │-    pub fn frag_entry(targets: [Option<wgpu::ColorTargetState>; 1]) -> FragmentEntry<1> {
[INFO] [stdout]   147       │-        FragmentEntry {
[INFO] [stdout]   148       │-            entry_point: ENTRY_FRAG,
[INFO] [stdout]   149       │-            targets,
[INFO] [stdout]   150       │-            constants: Default::default(),
[INFO] [stdout]   151       │-        }
[INFO] [stdout]   152       │-    }
[INFO] [stdout]   153       │-    pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ;
[INFO] [stdout]   154       │-    pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]   155       │-        let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]   156       │-        device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]   157       │-            label: None,
[INFO] [stdout]   158       │-            source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]   159       │-        })
[INFO] [stdout]   160       │-    }
[INFO] [stdout]   161       │-    pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]   162       │-        device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]   163       │-            label: None,
[INFO] [stdout]   164       │-            bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)],
[INFO] [stdout]   165       │-            immediate_size: 0,
[INFO] [stdout]   166       │-        })
[INFO] [stdout]   167       │-    }
[INFO] [stdout]   168       │-    #[repr(C)]
[INFO] [stdout]   169       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   170       │-    pub struct Root {
[INFO] [stdout]   171       │-        pub c: [f32; 4],
[INFO] [stdout]   172       │-    }
[INFO] [stdout]   173       │-}
[INFO] [stdout]   174       │-pub mod shaders {
[INFO] [stdout]   175       │-    pub mod shader2 {
[INFO] [stdout]   176       │-        pub mod bind_groups {
[INFO] [stdout]   177       │-            #[derive(Debug)]
[INFO] [stdout]   178       │-            pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]   179       │-            #[derive(Debug)]
[INFO] [stdout]   180       │-            pub struct BindGroupLayout0<'a> {
[INFO] [stdout]   181       │-                pub uniforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]   182       │-            }
[INFO] [stdout]   183       │-            const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor =
[INFO] [stdout]   184       │-                wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]   185       │-                    label: Some("LayoutDescriptor0"),
[INFO] [stdout]   186       │-                    entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]   187       │-                        binding: 0,
[INFO] [stdout]   188       │-                        visibility: wgpu::ShaderStages::FRAGMENT,
[INFO] [stdout]   189       │-                        ty: wgpu::BindingType::Buffer {
[INFO] [stdout]   190       │-                            ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]   191       │-                            has_dynamic_offset: false,
[INFO] [stdout]   192       │-                            min_binding_size: None,
[INFO] [stdout]   193       │-                        },
[INFO] [stdout]   194       │-                        count: None,
[INFO] [stdout]   195       │-                    }],
[INFO] [stdout]   196       │-                };
[INFO] [stdout]   197       │-            impl BindGroup0 {
[INFO] [stdout]   198       │-                pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]   199       │-                    device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]   200       │-                }
[INFO] [stdout]   201       │-                pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]   202       │-                    let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]   203       │-                    let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]   204       │-                        layout: &bind_group_layout,
[INFO] [stdout]   205       │-                        entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]   206       │-                            binding: 0,
[INFO] [stdout]   207       │-                            resource: wgpu::BindingResource::Buffer(bindings.uniforms),
[INFO] [stdout]   208       │-                        }],
[INFO] [stdout]   209       │-                        label: Some("BindGroup0"),
[INFO] [stdout]   210       │-                    });
[INFO] [stdout]   211       │-                    Self(bind_group)
[INFO] [stdout]   212       │-                }
[INFO] [stdout]   213       │-                pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   214       │-                    pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]   215       │-                }
[INFO] [stdout]   216       │-            }
[INFO] [stdout]   217       │-            #[derive(Debug, Copy, Clone)]
[INFO] [stdout]   218       │-            pub struct BindGroups<'a> {
[INFO] [stdout]   219       │-                pub bind_group0: &'a BindGroup0,
[INFO] [stdout]   220       │-            }
[INFO] [stdout]   221       │-            impl BindGroups<'_> {
[INFO] [stdout]   222       │-                pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]   223       │-                    self.bind_group0.set(pass);
[INFO] [stdout]   224       │-                }
[INFO] [stdout]   225       │-            }
[INFO] [stdout]   226       │-            pub trait SetBindGroup {
[INFO] [stdout]   227       │-                fn set_bind_group(
[INFO] [stdout]   228       │-                    &mut self,
[INFO] [stdout]   229       │-                    index: u32,
[INFO] [stdout]   230       │-                    bind_group: &wgpu::BindGroup,
[INFO] [stdout]   231       │-                    offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   232       │-                );
[INFO] [stdout]   233       │-            }
[INFO] [stdout]   234       │-            impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]   235       │-                fn set_bind_group(
[INFO] [stdout]   236       │-                    &mut self,
[INFO] [stdout]   237       │-                    index: u32,
[INFO] [stdout]   238       │-                    bind_group: &wgpu::BindGroup,
[INFO] [stdout]   239       │-                    offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   240       │-                ) {
[INFO] [stdout]   241       │-                    self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   242       │-                }
[INFO] [stdout]   243       │-            }
[INFO] [stdout]   244       │-            impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]   245       │-                fn set_bind_group(
[INFO] [stdout]   246       │-                    &mut self,
[INFO] [stdout]   247       │-                    index: u32,
[INFO] [stdout]   248       │-                    bind_group: &wgpu::BindGroup,
[INFO] [stdout]   249       │-                    offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   250       │-                ) {
[INFO] [stdout]   251       │-                    self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   252       │-                }
[INFO] [stdout]   253       │-            }
[INFO] [stdout]   254       │-            impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]   255       │-                fn set_bind_group(
[INFO] [stdout]   256       │-                    &mut self,
[INFO] [stdout]   257       │-                    index: u32,
[INFO] [stdout]   258       │-                    bind_group: &wgpu::BindGroup,
[INFO] [stdout]   259       │-                    offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]   260       │-                ) {
[INFO] [stdout]   261       │-                    self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]   262       │-                }
[INFO] [stdout]   263       │-            }
[INFO] [stdout]   264       │-        }
[INFO] [stdout]   265       │-        pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]   266       │-            pass: &mut P,
[INFO] [stdout]   267       │-            bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]   268       │-        ) {
[INFO] [stdout]   269       │-            bind_group0.set(pass);
[INFO] [stdout]   270       │-        }
[INFO] [stdout]   271       │-        pub const ENTRY_VERT: &str = "vert";
[INFO] [stdout]   272       │-        pub const ENTRY_FRAG: &str = "frag";
[INFO] [stdout]   273       │-        #[derive(Debug)]
[INFO] [stdout]   274       │-        pub struct VertexEntry<const N: usize> {
[INFO] [stdout]   275       │-            pub entry_point: &'static str,
[INFO] [stdout]   276       │-            pub buffers: [wgpu::VertexBufferLayout<'static>; N],
[INFO] [stdout]   277       │-            pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   278       │-        }
[INFO] [stdout]   279       │-        pub fn vertex_state<'a, const N: usize>(
[INFO] [stdout]   280       │-            module: &'a wgpu::ShaderModule,
[INFO] [stdout]   281       │-            entry: &'a VertexEntry<N>,
[INFO] [stdout]   282       │-        ) -> wgpu::VertexState<'a> {
[INFO] [stdout]   283       │-            wgpu::VertexState {
[INFO] [stdout]   284       │-                module,
[INFO] [stdout]   285       │-                entry_point: Some(entry.entry_point),
[INFO] [stdout]   286       │-                buffers: &entry.buffers,
[INFO] [stdout]   287       │-                compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   288       │-                    constants: &entry.constants,
[INFO] [stdout]   289       │-                    ..Default::default()
[INFO] [stdout]   290       │-                },
[INFO] [stdout]   291       │-            }
[INFO] [stdout]   292       │-        }
[INFO] [stdout]   293       │-        pub fn vert_entry(vertex_input: wgpu::VertexStepMode) -> VertexEntry<1> {
[INFO] [stdout]   294       │-            VertexEntry {
[INFO] [stdout]   295       │-                entry_point: ENTRY_VERT,
[INFO] [stdout]   296       │-                buffers: [VertexInput::vertex_buffer_layout(vertex_input)],
[INFO] [stdout]   297       │-                constants: Default::default(),
[INFO] [stdout]   298       │-            }
[INFO] [stdout]   299       │-        }
[INFO] [stdout]   300       │-        #[derive(Debug)]
[INFO] [stdout]   301       │-        pub struct FragmentEntry<const N: usize> {
[INFO] [stdout]   302       │-            pub entry_point: &'static str,
[INFO] [stdout]   303       │-            pub targets: [Option<wgpu::ColorTargetState>; N],
[INFO] [stdout]   304       │-            pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   305       │-        }
[INFO] [stdout]   306       │-        pub fn fragment_state<'a, const N: usize>(
[INFO] [stdout]   307       │-            module: &'a wgpu::ShaderModule,
[INFO] [stdout]   308       │-            entry: &'a FragmentEntry<N>,
[INFO] [stdout]   309       │-        ) -> wgpu::FragmentState<'a> {
[INFO] [stdout]   310       │-            wgpu::FragmentState {
[INFO] [stdout]   311       │-                module,
[INFO] [stdout]   312       │-                entry_point: Some(entry.entry_point),
[INFO] [stdout]   313       │-                targets: &entry.targets,
[INFO] [stdout]   314       │-                compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   315       │-                    constants: &entry.constants,
[INFO] [stdout]   316       │-                    ..Default::default()
[INFO] [stdout]   317       │-                },
[INFO] [stdout]   318       │-            }
[INFO] [stdout]   319       │-        }
[INFO] [stdout]   320       │-        pub fn frag_entry(targets: [Option<wgpu::ColorTargetState>; 1]) -> FragmentEntry<1> {
[INFO] [stdout]   321       │-            FragmentEntry {
[INFO] [stdout]   322       │-                entry_point: ENTRY_FRAG,
[INFO] [stdout]   323       │-                targets,
[INFO] [stdout]   324       │-                constants: Default::default(),
[INFO] [stdout]   325       │-            }
[INFO] [stdout]   326       │-        }
[INFO] [stdout]   327       │-        pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ;
[INFO] [stdout]   328       │-        pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]   329       │-            let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]   330       │-            device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]   331       │-                label: None,
[INFO] [stdout]   332       │-                source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]   333       │-            })
[INFO] [stdout]   334       │-        }
[INFO] [stdout]   335       │-        pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]   336       │-            device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]   337       │-                label: None,
[INFO] [stdout]   338       │-                bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)],
[INFO] [stdout]   339       │-                immediate_size: 0,
[INFO] [stdout]   340       │-            })
[INFO] [stdout]   341       │-        }
[INFO] [stdout]   342       │-        #[repr(C)]
[INFO] [stdout]   343       │-        #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   344       │-        pub struct Root {
[INFO] [stdout]   345       │-            pub c: [f32; 4],
[INFO] [stdout]   346       │-        }
[INFO] [stdout]   347       │-    }
[INFO] [stdout]   348       │-}
[INFO] [stdout]   349       │-pub mod shared {
[INFO] [stdout]   350       │-    #[repr(C)]
[INFO] [stdout]   351       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   352       │-    pub struct Shared {
[INFO] [stdout]   353       │-        pub d: [f32; 4],
[INFO] [stdout]   354       │-    }
[INFO] [stdout]   355       │-    pub const TEST: f32 = 1f32;
[INFO] [stdout]   356       │-    #[repr(C)]
[INFO] [stdout]   357       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   358       │-    pub struct VertexInput {
[INFO] [stdout]   359       │-        pub position: [f32; 3],
[INFO] [stdout]   360       │-    }
[INFO] [stdout]   361       │-    impl VertexInput {
[INFO] [stdout]   362       │-        pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 1] = [wgpu::VertexAttribute {
[INFO] [stdout]   363       │-            format: wgpu::VertexFormat::Float32x3,
[INFO] [stdout]   364       │-            offset: std::mem::offset_of!(VertexInput, position) as u64,
[INFO] [stdout]   365       │-            shader_location: 0,
[INFO] [stdout]   366       │-        }];
[INFO] [stdout]   367       │-        pub const fn vertex_buffer_layout(
[INFO] [stdout]   368       │-            step_mode: wgpu::VertexStepMode,
[INFO] [stdout]   369       │-        ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]   370       │-            wgpu::VertexBufferLayout {
[INFO] [stdout]   371       │-                array_stride: std::mem::size_of::<VertexInput>() as u64,
[INFO] [stdout]   372       │-                step_mode,
[INFO] [stdout]   373       │-                attributes: &VertexInput::VERTEX_ATTRIBUTES,
[INFO] [stdout]   374       │-            }
[INFO] [stdout]   375       │-        }
[INFO] [stdout]   376       │-    }
[INFO] [stdout]   377       │-}
[INFO] [stdout]   378       │-pub mod uniforms {
[INFO] [stdout]   379       │-    #[repr(C)]
[INFO] [stdout]   380       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   381       │-    pub struct Uniforms {
[INFO] [stdout]   382       │-        pub a: [f32; 4],
[INFO] [stdout]   383       │-        pub b: nested::Nested,
[INFO] [stdout]   384       │-    }
[INFO] [stdout]   385       │-    pub mod nested {
[INFO] [stdout]   386       │-        #[repr(C)]
[INFO] [stdout]   387       │-        #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   388       │-        pub struct Nested {
[INFO] [stdout]   389       │-            pub a: [f32; 4],
[INFO] [stdout]   390       │-            pub b: super::super::Root,
[INFO] [stdout]   391       │-            pub c: super::super::shared::Shared,
[INFO] [stdout]   392       │-        }
[INFO] [stdout]   393       │-    }
[INFO] [stdout]   394       │-}
[INFO] [stdout]           1 │+pub mod shader1 { pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub uniforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . uniforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; } pub const ENTRY_VERT : & str = "vert" ; pub const ENTRY_FRAG : & str = "frag" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn vert_entry (vertex_input : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_VERT , buffers : [VertexInput :: vertex_buffer_layout (vertex_input)] , constants : Default :: default () } } # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn frag_entry (targets : [Option < wgpu :: ColorTargetState > ; 1] ,) -> FragmentEntry < 1 > { FragmentEntry { entry_point : ENTRY_FRAG , targets , constants : Default :: default () } } pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Root { pub c : [f32 ; 4] } } pub mod shaders { pub mod shader2 { pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub uniforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . uniforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; } pub const ENTRY_VERT : & str = "vert" ; pub const ENTRY_FRAG : & str = "frag" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn vert_entry (vertex_input : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_VERT , buffers : [VertexInput :: vertex_buffer_layout (vertex_input)] , constants : Default :: default () } } # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn frag_entry (targets : [Option < wgpu :: ColorTargetState > ; 1] ,) -> FragmentEntry < 1 > { FragmentEntry { entry_point : ENTRY_FRAG , targets , constants : Default :: default () } } pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Root { pub c : [f32 ; 4] } } } pub mod shared { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Shared { pub d : [f32 ; 4] } pub const TEST : f32 = 1f32 ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct VertexInput { pub position : [f32 ; 3] } impl VertexInput { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 1] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x3 , offset : std :: mem :: offset_of ! (VertexInput , position) as u64 , shader_location : 0 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput > () as u64 , step_mode , attributes : & VertexInput :: VERTEX_ATTRIBUTES } } } } pub mod uniforms { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Uniforms { pub a : [f32 ; 4] , pub b : nested :: Nested } pub mod nested { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Nested { pub a : [f32 ; 4] , pub b : super :: super :: Root , pub c : super :: super :: shared :: Shared } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::add_duplicate_module_different_paths' (2130) panicked at src/lib.rs:1127:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/add_duplicate_module_different_paths.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b7817fb19 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b7817fb19 - wgsl_to_wgpu[f172588ae37ccc70]::test::add_duplicate_module_different_paths::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5d2b7814760f - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::test::add_duplicate_module_different_paths::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b78184c9f - wgsl_to_wgpu[f172588ae37ccc70]::test::add_duplicate_module_different_paths
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5d2b7817cae7 - wgsl_to_wgpu[f172588ae37ccc70]::test::add_duplicate_module_different_paths::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1098:46
[INFO] [stdout]   25:     0x5d2b7813ebc6 - <wgsl_to_wgpu[f172588ae37ccc70]::test::add_duplicate_module_different_paths::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::create_shader_modules_source_rustfmt stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/create_shader_modules_source_rustfmt.snap
[INFO] [stdout] Snapshot: create_shader_modules_source_rustfmt
[INFO] [stdout] Source: src/lib.rs:824
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub const ENTRY_MAIN: &str = "main";
[INFO] [stdout]     2       │-#[derive(Debug)]
[INFO] [stdout]     3       │-pub struct FragmentEntry<const N: usize> {
[INFO] [stdout]     4       │-    pub entry_point: &'static str,
[INFO] [stdout]     5       │-    pub targets: [Option<wgpu::ColorTargetState>; N],
[INFO] [stdout]     6       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]     7       │-}
[INFO] [stdout]     8       │-pub fn fragment_state<'a, const N: usize>(
[INFO] [stdout]     9       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]    10       │-    entry: &'a FragmentEntry<N>,
[INFO] [stdout]    11       │-) -> wgpu::FragmentState<'a> {
[INFO] [stdout]    12       │-    wgpu::FragmentState {
[INFO] [stdout]    13       │-        module,
[INFO] [stdout]    14       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]    15       │-        targets: &entry.targets,
[INFO] [stdout]    16       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]    17       │-            constants: &entry.constants,
[INFO] [stdout]    18       │-            ..Default::default()
[INFO] [stdout]    19       │-        },
[INFO] [stdout]    20       │-    }
[INFO] [stdout]    21       │-}
[INFO] [stdout]    22       │-pub fn main_entry(targets: [Option<wgpu::ColorTargetState>; 0]) -> FragmentEntry<0> {
[INFO] [stdout]    23       │-    FragmentEntry {
[INFO] [stdout]    24       │-        entry_point: ENTRY_MAIN,
[INFO] [stdout]    25       │-        targets,
[INFO] [stdout]    26       │-        constants: Default::default(),
[INFO] [stdout]    27       │-    }
[INFO] [stdout]    28       │-}
[INFO] [stdout]    29       │-pub const SOURCE: &str = "@fragment fn main() {}";
[INFO] [stdout]    30       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]    31       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]    32       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]    33       │-        label: None,
[INFO] [stdout]    34       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]    35       │-    })
[INFO] [stdout]    36       │-}
[INFO] [stdout]    37       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]    38       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]    39       │-        label: None,
[INFO] [stdout]    40       │-        bind_group_layouts: &[],
[INFO] [stdout]    41       │-        immediate_size: 0,
[INFO] [stdout]    42       │-    })
[INFO] [stdout]    43       │-}
[INFO] [stdout]           1 │+pub const ENTRY_MAIN : & str = "main" ; # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn main_entry (targets : [Option < wgpu :: ColorTargetState > ; 0] ,) -> FragmentEntry < 0 > { FragmentEntry { entry_point : ENTRY_MAIN , targets , constants : Default :: default () } } pub const SOURCE : & str = "@fragment fn main() {}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , immediate_size : 0 , }) }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::create_shader_modules_source_rustfmt' (3001) panicked at src/lib.rs:824:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/create_shader_modules_source_rustfmt.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b7817ffc9 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b7817ffc9 - wgsl_to_wgpu[f172588ae37ccc70]::test::create_shader_modules_source_rustfmt::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5d2b781476af - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::test::create_shader_modules_source_rustfmt::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b78184f32 - wgsl_to_wgpu[f172588ae37ccc70]::test::create_shader_modules_source_rustfmt
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5d2b7817cb17 - wgsl_to_wgpu[f172588ae37ccc70]::test::create_shader_modules_source_rustfmt::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:813:46
[INFO] [stdout]   25:     0x5d2b7813ec06 - <wgsl_to_wgpu[f172588ae37ccc70]::test::create_shader_modules_source_rustfmt::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::mesh_shader stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/mesh_shader.snap
[INFO] [stdout] Snapshot: mesh_shader
[INFO] [stdout] Source: src/lib.rs:1175
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub const ENTRY_TS_MAIN: &str = "ts_main";
[INFO] [stdout]     2       │-pub const ENTRY_MS_MAIN: &str = "ms_main";
[INFO] [stdout]     3       │-pub const ENTRY_FS_MAIN: &str = "fs_main";
[INFO] [stdout]     4       │-#[derive(Debug)]
[INFO] [stdout]     5       │-pub struct FragmentEntry<const N: usize> {
[INFO] [stdout]     6       │-    pub entry_point: &'static str,
[INFO] [stdout]     7       │-    pub targets: [Option<wgpu::ColorTargetState>; N],
[INFO] [stdout]     8       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]     9       │-}
[INFO] [stdout]    10       │-pub fn fragment_state<'a, const N: usize>(
[INFO] [stdout]    11       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]    12       │-    entry: &'a FragmentEntry<N>,
[INFO] [stdout]    13       │-) -> wgpu::FragmentState<'a> {
[INFO] [stdout]    14       │-    wgpu::FragmentState {
[INFO] [stdout]    15       │-        module,
[INFO] [stdout]    16       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]    17       │-        targets: &entry.targets,
[INFO] [stdout]    18       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]    19       │-            constants: &entry.constants,
[INFO] [stdout]    20       │-            ..Default::default()
[INFO] [stdout]    21       │-        },
[INFO] [stdout]    22       │-    }
[INFO] [stdout]    23       │-}
[INFO] [stdout]    24       │-pub fn fs_main_entry(targets: [Option<wgpu::ColorTargetState>; 1]) -> FragmentEntry<1> {
[INFO] [stdout]    25       │-    FragmentEntry {
[INFO] [stdout]    26       │-        entry_point: ENTRY_FS_MAIN,
[INFO] [stdout]    27       │-        targets,
[INFO] [stdout]    28       │-        constants: Default::default(),
[INFO] [stdout]    29       │-    }
[INFO] [stdout]    30       │-}
[INFO] [stdout]    31       │-pub const SOURCE : & str = "enable wgpu_mesh_shader;\n\nconst positions = array(\n    vec4(0.0, 1.0, 0.0, 1.0),\n    vec4(-1.0, -1.0, 0.0, 1.0),\n    vec4(1.0, -1.0, 0.0, 1.0)\n);\nconst colors = array(\n    vec4(0.0, 1.0, 0.0, 1.0),\n    vec4(0.0, 0.0, 1.0, 1.0),\n    vec4(1.0, 0.0, 0.0, 1.0)\n);\n\nstruct TaskPayload {\n    colorMask: vec4<f32>,\n    visible: bool,\n}\nstruct VertexOutput {\n    @builtin(position) position: vec4<f32>,\n    @location(0) color: vec4<f32>,\n}\nstruct PrimitiveOutput {\n    @builtin(triangle_indices) indices: vec3<u32>,\n    @builtin(cull_primitive) cull: bool,\n    @per_primitive @location(1) colorMask: vec4<f32>,\n}\nstruct PrimitiveInput {\n    @per_primitive @location(1) colorMask: vec4<f32>,\n}\n\nvar<task_payload> taskPayload: TaskPayload;\nvar<workgroup> workgroupData: f32;\n\n@task\n@payload(taskPayload)\n@workgroup_size(1)\nfn ts_main() -> @builtin(mesh_task_size) vec3<u32> {\n    workgroupData = 1.0;\n    taskPayload.colorMask = vec4(1.0, 1.0, 0.0, 1.0);\n    taskPayload.visible = true;\n    return vec3(1, 1, 1);\n}\n\nstruct MeshOutput {\n    @builtin(vertices) vertices: array<VertexOutput, 3>,\n    @builtin(primitives) primitives: array<PrimitiveOutput, 1>,\n    @builtin(vertex_count) vertex_count: u32,\n    @builtin(primitive_count) primitive_count: u32,\n}\n\nvar<workgroup> mesh_output: MeshOutput;\n\n@mesh(mesh_output)\n@payload(taskPayload)\n@workgroup_size(1)\nfn ms_main() {\n    mesh_output.vertex_count = 3;\n    mesh_output.primitive_count = 1;\n    workgroupData = 2.0;\n\n    mesh_output.vertices[0].position = positions[0];\n    mesh_output.vertices[0].color = colors[0] * taskPayload.colorMask;\n\n    mesh_output.vertices[1].position = positions[1];\n    mesh_output.vertices[1].color = colors[1] * taskPayload.colorMask;\n\n    mesh_output.vertices[2].position = positions[2];\n    mesh_output.vertices[2].color = colors[2] * taskPayload.colorMask;\n\n    mesh_output.primitives[0].indices = vec3<u32>(0, 1, 2);\n    mesh_output.primitives[0].cull = !taskPayload.visible;\n    mesh_output.primitives[0].colorMask = vec4<f32>(1.0, 0.0, 1.0, 1.0);\n}\n\n@fragment\nfn fs_main(vertex: VertexOutput, primitive: PrimitiveInput) -> @location(0) vec4<f32> {\n    return vertex.color * primitive.colorMask;\n}\n" ;
[INFO] [stdout]    32       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]    33       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]    34       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]    35       │-        label: None,
[INFO] [stdout]    36       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]    37       │-    })
[INFO] [stdout]    38       │-}
[INFO] [stdout]    39       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]    40       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]    41       │-        label: None,
[INFO] [stdout]    42       │-        bind_group_layouts: &[],
[INFO] [stdout]    43       │-        immediate_size: 0,
[INFO] [stdout]    44       │-    })
[INFO] [stdout]    45       │-}
[INFO] [stdout]    46       │-#[repr(C)]
[INFO] [stdout]    47       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]    48       │-pub struct MeshOutput {}
[INFO] [stdout]    49       │-#[repr(C)]
[INFO] [stdout]    50       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]    51       │-pub struct PrimitiveInput {
[INFO] [stdout]    52       │-    pub colorMask: [f32; 4],
[INFO] [stdout]    53       │-}
[INFO] [stdout]    54       │-#[repr(C)]
[INFO] [stdout]    55       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]    56       │-pub struct PrimitiveOutput {
[INFO] [stdout]    57       │-    pub colorMask: [f32; 4],
[INFO] [stdout]    58       │-}
[INFO] [stdout]    59       │-#[repr(C)]
[INFO] [stdout]    60       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]    61       │-pub struct TaskPayload {
[INFO] [stdout]    62       │-    pub colorMask: [f32; 4],
[INFO] [stdout]    63       │-    pub visible: bool,
[INFO] [stdout]    64       │-}
[INFO] [stdout]    65       │-#[repr(C)]
[INFO] [stdout]    66       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]    67       │-pub struct VertexOutput {
[INFO] [stdout]    68       │-    pub color: [f32; 4],
[INFO] [stdout]    69       │-}
[INFO] [stdout]           1 │+pub const ENTRY_TS_MAIN : & str = "ts_main" ; pub const ENTRY_MS_MAIN : & str = "ms_main" ; pub const ENTRY_FS_MAIN : & str = "fs_main" ; # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn fs_main_entry (targets : [Option < wgpu :: ColorTargetState > ; 1] ,) -> FragmentEntry < 1 > { FragmentEntry { entry_point : ENTRY_FS_MAIN , targets , constants : Default :: default () } } pub const SOURCE : & str = "enable wgpu_mesh_shader;\n\nconst positions = array(\n    vec4(0.0, 1.0, 0.0, 1.0),\n    vec4(-1.0, -1.0, 0.0, 1.0),\n    vec4(1.0, -1.0, 0.0, 1.0)\n);\nconst colors = array(\n    vec4(0.0, 1.0, 0.0, 1.0),\n    vec4(0.0, 0.0, 1.0, 1.0),\n    vec4(1.0, 0.0, 0.0, 1.0)\n);\n\nstruct TaskPayload {\n    colorMask: vec4<f32>,\n    visible: bool,\n}\nstruct VertexOutput {\n    @builtin(position) position: vec4<f32>,\n    @location(0) color: vec4<f32>,\n}\nstruct PrimitiveOutput {\n    @builtin(triangle_indices) indices: vec3<u32>,\n    @builtin(cull_primitive) cull: bool,\n    @per_primitive @location(1) colorMask: vec4<f32>,\n}\nstruct PrimitiveInput {\n    @per_primitive @location(1) colorMask: vec4<f32>,\n}\n\nvar<task_payload> taskPayload: TaskPayload;\nvar<workgroup> workgroupData: f32;\n\n@task\n@payload(taskPayload)\n@workgroup_size(1)\nfn ts_main() -> @builtin(mesh_task_size) vec3<u32> {\n    workgroupData = 1.0;\n    taskPayload.colorMask = vec4(1.0, 1.0, 0.0, 1.0);\n    taskPayload.visible = true;\n    return vec3(1, 1, 1);\n}\n\nstruct MeshOutput {\n    @builtin(vertices) vertices: array<VertexOutput, 3>,\n    @builtin(primitives) primitives: array<PrimitiveOutput, 1>,\n    @builtin(vertex_count) vertex_count: u32,\n    @builtin(primitive_count) primitive_count: u32,\n}\n\nvar<workgroup> mesh_output: MeshOutput;\n\n@mesh(mesh_output)\n@payload(taskPayload)\n@workgroup_size(1)\nfn ms_main() {\n    mesh_output.vertex_count = 3;\n    mesh_output.primitive_count = 1;\n    workgroupData = 2.0;\n\n    mesh_output.vertices[0].position = positions[0];\n    mesh_output.vertices[0].color = colors[0] * taskPayload.colorMask;\n\n    mesh_output.vertices[1].position = positions[1];\n    mesh_output.vertices[1].color = colors[1] * taskPayload.colorMask;\n\n    mesh_output.vertices[2].position = positions[2];\n    mesh_output.vertices[2].color = colors[2] * taskPayload.colorMask;\n\n    mesh_output.primitives[0].indices = vec3<u32>(0, 1, 2);\n    mesh_output.primitives[0].cull = !taskPayload.visible;\n    mesh_output.primitives[0].colorMask = vec4<f32>(1.0, 0.0, 1.0, 1.0);\n}\n\n@fragment\nfn fs_main(vertex: VertexOutput, primitive: PrimitiveInput) -> @location(0) vec4<f32> {\n    return vertex.color * primitive.colorMask;\n}\n" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct MeshOutput { } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct PrimitiveInput { pub colorMask : [f32 ; 4] } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct PrimitiveOutput { pub colorMask : [f32 ; 4] } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct TaskPayload { pub colorMask : [f32 ; 4] , pub visible : bool } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct VertexOutput { pub color : [f32 ; 4] }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::mesh_shader' (3101) panicked at src/lib.rs:1175:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/mesh_shader.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b7817d0e9 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b7817d0e9 - wgsl_to_wgpu[f172588ae37ccc70]::test::mesh_shader::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5d2b7814706f - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::test::mesh_shader::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b78182c57 - wgsl_to_wgpu[f172588ae37ccc70]::test::mesh_shader
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5d2b7817c867 - wgsl_to_wgpu[f172588ae37ccc70]::test::mesh_shader::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1164:21
[INFO] [stdout]   25:     0x5d2b7813e8c6 - <wgsl_to_wgpu[f172588ae37ccc70]::test::mesh_shader::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - 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' (1416) 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:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7816d5d2 - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_skip_stage_outputs
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:681:13
[INFO] [stdout]   20:     0x5d2b781689c7 - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_skip_stage_outputs::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:375:46
[INFO] [stdout]   21:     0x5d2b7813f116 - <wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_all_structs_skip_stage_outputs::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   41:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   42:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   43:     0x7968a48d0a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::vertex_entries stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/vertex_entries.snap
[INFO] [stdout] Snapshot: vertex_entries
[INFO] [stdout] Source: src/lib.rs:1143
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub const ENTRY_VS_MAIN_NONE: &str = "vs_main_none";
[INFO] [stdout]     2       │-pub const ENTRY_VS_MAIN_SINGLE: &str = "vs_main_single";
[INFO] [stdout]     3       │-pub const ENTRY_VS_MAIN_MULTIPLE: &str = "vs_main_multiple";
[INFO] [stdout]     4       │-#[derive(Debug)]
[INFO] [stdout]     5       │-pub struct VertexEntry<const N: usize> {
[INFO] [stdout]     6       │-    pub entry_point: &'static str,
[INFO] [stdout]     7       │-    pub buffers: [wgpu::VertexBufferLayout<'static>; N],
[INFO] [stdout]     8       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]     9       │-}
[INFO] [stdout]    10       │-pub fn vertex_state<'a, const N: usize>(
[INFO] [stdout]    11       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]    12       │-    entry: &'a VertexEntry<N>,
[INFO] [stdout]    13       │-) -> wgpu::VertexState<'a> {
[INFO] [stdout]    14       │-    wgpu::VertexState {
[INFO] [stdout]    15       │-        module,
[INFO] [stdout]    16       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]    17       │-        buffers: &entry.buffers,
[INFO] [stdout]    18       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]    19       │-            constants: &entry.constants,
[INFO] [stdout]    20       │-            ..Default::default()
[INFO] [stdout]    21       │-        },
[INFO] [stdout]    22       │-    }
[INFO] [stdout]    23       │-}
[INFO] [stdout]    24       │-pub fn vs_main_none_entry() -> VertexEntry<0> {
[INFO] [stdout]    25       │-    VertexEntry {
[INFO] [stdout]    26       │-        entry_point: ENTRY_VS_MAIN_NONE,
[INFO] [stdout]    27       │-        buffers: [],
[INFO] [stdout]    28       │-        constants: Default::default(),
[INFO] [stdout]    29       │-    }
[INFO] [stdout]    30       │-}
[INFO] [stdout]    31       │-pub fn vs_main_single_entry(input0: wgpu::VertexStepMode) -> VertexEntry<1> {
[INFO] [stdout]    32       │-    VertexEntry {
[INFO] [stdout]    33       │-        entry_point: ENTRY_VS_MAIN_SINGLE,
[INFO] [stdout]    34       │-        buffers: [Input0::vertex_buffer_layout(input0)],
[INFO] [stdout]    35       │-        constants: Default::default(),
[INFO] [stdout]    36       │-    }
[INFO] [stdout]    37       │-}
[INFO] [stdout]    38       │-pub fn vs_main_multiple_entry(
[INFO] [stdout]    39       │-    input0: wgpu::VertexStepMode,
[INFO] [stdout]    40       │-    input1: wgpu::VertexStepMode,
[INFO] [stdout]    41       │-) -> VertexEntry<2> {
[INFO] [stdout]    42       │-    VertexEntry {
[INFO] [stdout]    43       │-        entry_point: ENTRY_VS_MAIN_MULTIPLE,
[INFO] [stdout]    44       │-        buffers: [
[INFO] [stdout]    45       │-            Input0::vertex_buffer_layout(input0),
[INFO] [stdout]    46       │-            Input1::vertex_buffer_layout(input1),
[INFO] [stdout]    47       │-        ],
[INFO] [stdout]    48       │-        constants: Default::default(),
[INFO] [stdout]    49       │-    }
[INFO] [stdout]    50       │-}
[INFO] [stdout]    51       │-pub const SOURCE: &str = include_str!("shader.wgsl");
[INFO] [stdout]    52       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]    53       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]    54       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]    55       │-        label: None,
[INFO] [stdout]    56       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]    57       │-    })
[INFO] [stdout]    58       │-}
[INFO] [stdout]    59       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]    60       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]    61       │-        label: None,
[INFO] [stdout]    62       │-        bind_group_layouts: &[],
[INFO] [stdout]    63       │-        immediate_size: 0,
[INFO] [stdout]    64       │-    })
[INFO] [stdout]    65       │-}
[INFO] [stdout]    66       │-#[repr(C)]
[INFO] [stdout]    67       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]    68       │-pub struct Input0 {
[INFO] [stdout]    69       │-    pub in0: [f32; 4],
[INFO] [stdout]    70       │-    pub in1: [f32; 4],
[INFO] [stdout]    71       │-    pub in2: [f32; 4],
[INFO] [stdout]    72       │-}
[INFO] [stdout]    73       │-impl Input0 {
[INFO] [stdout]    74       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 3] = [
[INFO] [stdout]    75       │-        wgpu::VertexAttribute {
[INFO] [stdout]    76       │-            format: wgpu::VertexFormat::Float32x4,
[INFO] [stdout]    77       │-            offset: std::mem::offset_of!(Input0, in0) as u64,
[INFO] [stdout]    78       │-            shader_location: 0,
[INFO] [stdout]    79       │-        },
[INFO] [stdout]    80       │-        wgpu::VertexAttribute {
[INFO] [stdout]    81       │-            format: wgpu::VertexFormat::Float32x4,
[INFO] [stdout]    82       │-            offset: std::mem::offset_of!(Input0, in1) as u64,
[INFO] [stdout]    83       │-            shader_location: 1,
[INFO] [stdout]    84       │-        },
[INFO] [stdout]    85       │-        wgpu::VertexAttribute {
[INFO] [stdout]    86       │-            format: wgpu::VertexFormat::Float32x4,
[INFO] [stdout]    87       │-            offset: std::mem::offset_of!(Input0, in2) as u64,
[INFO] [stdout]    88       │-            shader_location: 2,
[INFO] [stdout]    89       │-        },
[INFO] [stdout]    90       │-    ];
[INFO] [stdout]    91       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]    92       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]    93       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    94       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]    95       │-            array_stride: std::mem::size_of::<Input0>() as u64,
[INFO] [stdout]    96       │-            step_mode,
[INFO] [stdout]    97       │-            attributes: &Input0::VERTEX_ATTRIBUTES,
[INFO] [stdout]    98       │-        }
[INFO] [stdout]    99       │-    }
[INFO] [stdout]   100       │-}
[INFO] [stdout]   101       │-#[repr(C)]
[INFO] [stdout]   102       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   103       │-pub struct Input1 {
[INFO] [stdout]   104       │-    pub in3: [f32; 4],
[INFO] [stdout]   105       │-    pub in4: [f32; 4],
[INFO] [stdout]   106       │-    pub in5: [f32; 4],
[INFO] [stdout]   107       │-    pub in6: [u32; 4],
[INFO] [stdout]   108       │-}
[INFO] [stdout]   109       │-impl Input1 {
[INFO] [stdout]   110       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 4] = [
[INFO] [stdout]   111       │-        wgpu::VertexAttribute {
[INFO] [stdout]   112       │-            format: wgpu::VertexFormat::Float32x4,
[INFO] [stdout]   113       │-            offset: std::mem::offset_of!(Input1, in3) as u64,
[INFO] [stdout]   114       │-            shader_location: 3,
[INFO] [stdout]   115       │-        },
[INFO] [stdout]   116       │-        wgpu::VertexAttribute {
[INFO] [stdout]   117       │-            format: wgpu::VertexFormat::Float32x4,
[INFO] [stdout]   118       │-            offset: std::mem::offset_of!(Input1, in4) as u64,
[INFO] [stdout]   119       │-            shader_location: 4,
[INFO] [stdout]   120       │-        },
[INFO] [stdout]   121       │-        wgpu::VertexAttribute {
[INFO] [stdout]   122       │-            format: wgpu::VertexFormat::Float32x4,
[INFO] [stdout]   123       │-            offset: std::mem::offset_of!(Input1, in5) as u64,
[INFO] [stdout]   124       │-            shader_location: 5,
[INFO] [stdout]   125       │-        },
[INFO] [stdout]   126       │-        wgpu::VertexAttribute {
[INFO] [stdout]   127       │-            format: wgpu::VertexFormat::Uint32x4,
[INFO] [stdout]   128       │-            offset: std::mem::offset_of!(Input1, in6) as u64,
[INFO] [stdout]   129       │-            shader_location: 6,
[INFO] [stdout]   130       │-        },
[INFO] [stdout]   131       │-    ];
[INFO] [stdout]   132       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]   133       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]   134       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]   135       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]   136       │-            array_stride: std::mem::size_of::<Input1>() as u64,
[INFO] [stdout]   137       │-            step_mode,
[INFO] [stdout]   138       │-            attributes: &Input1::VERTEX_ATTRIBUTES,
[INFO] [stdout]   139       │-        }
[INFO] [stdout]   140       │-    }
[INFO] [stdout]   141       │-}
[INFO] [stdout]           1 │+pub const ENTRY_VS_MAIN_NONE : & str = "vs_main_none" ; pub const ENTRY_VS_MAIN_SINGLE : & str = "vs_main_single" ; pub const ENTRY_VS_MAIN_MULTIPLE : & str = "vs_main_multiple" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn vs_main_none_entry () -> VertexEntry < 0 > { VertexEntry { entry_point : ENTRY_VS_MAIN_NONE , buffers : [] , constants : Default :: default () } } pub fn vs_main_single_entry (input0 : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_VS_MAIN_SINGLE , buffers : [Input0 :: vertex_buffer_layout (input0)] , constants : Default :: default () } } pub fn vs_main_multiple_entry (input0 : wgpu :: VertexStepMode , input1 : wgpu :: VertexStepMode ,) -> VertexEntry < 2 > { VertexEntry { entry_point : ENTRY_VS_MAIN_MULTIPLE , buffers : [Input0 :: vertex_buffer_layout (input0) , Input1 :: vertex_buffer_layout (input1)] , constants : Default :: default () } } pub const SOURCE : & str = include_str ! ("shader.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Input0 { pub in0 : [f32 ; 4] , pub in1 : [f32 ; 4] , pub in2 : [f32 ; 4] } impl Input0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 3] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input0 , in0) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input0 , in1) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input0 , in2) as u64 , shader_location : 2 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < Input0 > () as u64 , step_mode , attributes : & Input0 :: VERTEX_ATTRIBUTES } } } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Input1 { pub in3 : [f32 ; 4] , pub in4 : [f32 ; 4] , pub in5 : [f32 ; 4] , pub in6 : [u32 ; 4] } impl Input1 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 4] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input1 , in3) as u64 , shader_location : 3 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input1 , in4) as u64 , shader_location : 4 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input1 , in5) as u64 , shader_location : 5 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Uint32x4 , offset : std :: mem :: offset_of ! (Input1 , in6) as u64 , shader_location : 6 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < Input1 > () as u64 , step_mode , attributes : & Input1 :: VERTEX_ATTRIBUTES } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::vertex_entries' (3250) panicked at src/lib.rs:1143:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/vertex_entries.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b7817d599 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b7817d599 - wgsl_to_wgpu[f172588ae37ccc70]::test::vertex_entries::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5d2b7814710f - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::test::vertex_entries::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b78182ec4 - wgsl_to_wgpu[f172588ae37ccc70]::test::vertex_entries
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5d2b7817c897 - wgsl_to_wgpu[f172588ae37ccc70]::test::vertex_entries::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1131:24
[INFO] [stdout]   25:     0x5d2b7813e906 - <wgsl_to_wgpu[f172588ae37ccc70]::test::vertex_entries::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- structs::tests::write_runtime_sized_array stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'structs::tests::write_runtime_sized_array' (1723) 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:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7816b969 - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_runtime_sized_array
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:681:13
[INFO] [stdout]   20:     0x5d2b781688d7 - wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_runtime_sized_array::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/structs.rs:542:35
[INFO] [stdout]   21:     0x5d2b7813efd6 - <wgsl_to_wgpu[f172588ae37ccc70]::structs::tests::write_runtime_sized_array::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   41:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   42:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   43:     0x7968a48d0a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::shader_stage_collection stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/shader_stage_collection.snap
[INFO] [stdout] Snapshot: shader_stage_collection
[INFO] [stdout] Source: src/lib.rs:1160
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod bind_groups {
[INFO] [stdout]     2       │-    #[derive(Debug)]
[INFO] [stdout]     3       │-    pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     4       │-    #[derive(Debug)]
[INFO] [stdout]     5       │-    pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     6       │-        pub counter: wgpu::BufferBinding<'a>,
[INFO] [stdout]     7       │-    }
[INFO] [stdout]     8       │-    const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]     9       │-        label: Some("LayoutDescriptor0"),
[INFO] [stdout]    10       │-        entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    11       │-            binding: 0,
[INFO] [stdout]    12       │-            visibility: wgpu::ShaderStages::COMPUTE,
[INFO] [stdout]    13       │-            ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    14       │-                ty: wgpu::BufferBindingType::Storage { read_only: false },
[INFO] [stdout]    15       │-                has_dynamic_offset: false,
[INFO] [stdout]    16       │-                min_binding_size: None,
[INFO] [stdout]    17       │-            },
[INFO] [stdout]    18       │-            count: None,
[INFO] [stdout]    19       │-        }],
[INFO] [stdout]    20       │-    };
[INFO] [stdout]    21       │-    impl BindGroup0 {
[INFO] [stdout]    22       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    23       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]    24       │-        }
[INFO] [stdout]    25       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]    26       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]    27       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]    28       │-                layout: &bind_group_layout,
[INFO] [stdout]    29       │-                entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]    30       │-                    binding: 0,
[INFO] [stdout]    31       │-                    resource: wgpu::BindingResource::Buffer(bindings.counter),
[INFO] [stdout]    32       │-                }],
[INFO] [stdout]    33       │-                label: Some("BindGroup0"),
[INFO] [stdout]    34       │-            });
[INFO] [stdout]    35       │-            Self(bind_group)
[INFO] [stdout]    36       │-        }
[INFO] [stdout]    37       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    38       │-            pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]    39       │-        }
[INFO] [stdout]    40       │-    }
[INFO] [stdout]    41       │-    #[derive(Debug, Copy, Clone)]
[INFO] [stdout]    42       │-    pub struct BindGroups<'a> {
[INFO] [stdout]    43       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]    44       │-    }
[INFO] [stdout]    45       │-    impl BindGroups<'_> {
[INFO] [stdout]    46       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    47       │-            self.bind_group0.set(pass);
[INFO] [stdout]    48       │-        }
[INFO] [stdout]    49       │-    }
[INFO] [stdout]    50       │-    pub trait SetBindGroup {
[INFO] [stdout]    51       │-        fn set_bind_group(
[INFO] [stdout]    52       │-            &mut self,
[INFO] [stdout]    53       │-            index: u32,
[INFO] [stdout]    54       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    55       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    56       │-        );
[INFO] [stdout]    57       │-    }
[INFO] [stdout]    58       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]    59       │-        fn set_bind_group(
[INFO] [stdout]    60       │-            &mut self,
[INFO] [stdout]    61       │-            index: u32,
[INFO] [stdout]    62       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    63       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    64       │-        ) {
[INFO] [stdout]    65       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    66       │-        }
[INFO] [stdout]    67       │-    }
[INFO] [stdout]    68       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]    69       │-        fn set_bind_group(
[INFO] [stdout]    70       │-            &mut self,
[INFO] [stdout]    71       │-            index: u32,
[INFO] [stdout]    72       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    73       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    74       │-        ) {
[INFO] [stdout]    75       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    76       │-        }
[INFO] [stdout]    77       │-    }
[INFO] [stdout]    78       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]    79       │-        fn set_bind_group(
[INFO] [stdout]    80       │-            &mut self,
[INFO] [stdout]    81       │-            index: u32,
[INFO] [stdout]    82       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    83       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    84       │-        ) {
[INFO] [stdout]    85       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    86       │-        }
[INFO] [stdout]    87       │-    }
[INFO] [stdout]    88       │-}
[INFO] [stdout]    89       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]    90       │-    pass: &mut P,
[INFO] [stdout]    91       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]    92       │-) {
[INFO] [stdout]    93       │-    bind_group0.set(pass);
[INFO] [stdout]    94       │-}
[INFO] [stdout]    95       │-pub mod compute {
[INFO] [stdout]    96       │-    pub const MAIN_WORKGROUP_SIZE: [u32; 3] = [1, 1, 1];
[INFO] [stdout]    97       │-    pub fn create_main_pipeline(device: &wgpu::Device) -> wgpu::ComputePipeline {
[INFO] [stdout]    98       │-        let module = super::create_shader_module(device);
[INFO] [stdout]    99       │-        let layout = super::create_pipeline_layout(device);
[INFO] [stdout]   100       │-        device.create_compute_pipeline(&wgpu::ComputePipelineDescriptor {
[INFO] [stdout]   101       │-            label: Some("Compute Pipeline main"),
[INFO] [stdout]   102       │-            layout: Some(&layout),
[INFO] [stdout]   103       │-            module: &module,
[INFO] [stdout]   104       │-            entry_point: Some("main"),
[INFO] [stdout]   105       │-            compilation_options: Default::default(),
[INFO] [stdout]   106       │-            cache: Default::default(),
[INFO] [stdout]   107       │-        })
[INFO] [stdout]   108       │-    }
[INFO] [stdout]   109       │-}
[INFO] [stdout]   110       │-pub const ENTRY_MAIN: &str = "main";
[INFO] [stdout]   111       │-pub const SOURCE: &str = include_str!("shader.wgsl");
[INFO] [stdout]   112       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]   113       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]   114       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]   115       │-        label: None,
[INFO] [stdout]   116       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]   117       │-    })
[INFO] [stdout]   118       │-}
[INFO] [stdout]   119       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]   120       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]   121       │-        label: None,
[INFO] [stdout]   122       │-        bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)],
[INFO] [stdout]   123       │-        immediate_size: 0,
[INFO] [stdout]   124       │-    })
[INFO] [stdout]   125       │-}
[INFO] [stdout]           1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub counter : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : false } , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . counter) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; } pub mod compute { pub const MAIN_WORKGROUP_SIZE : [u32 ; 3] = [1 , 1 , 1] ; pub fn create_main_pipeline (device : & wgpu :: Device) -> wgpu :: ComputePipeline { let module = super :: create_shader_module (device) ; let layout = super :: create_pipeline_layout (device) ; device . create_compute_pipeline (& wgpu :: ComputePipelineDescriptor { label : Some ("Compute Pipeline main") , layout : Some (& layout) , module : & module , entry_point : Some ("main") , compilation_options : Default :: default () , cache : Default :: default () , }) } } pub const ENTRY_MAIN : & str = "main" ; pub const SOURCE : & str = include_str ! ("shader.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , immediate_size : 0 , }) }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::shader_stage_collection' (3104) panicked at src/lib.rs:1160:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/shader_stage_collection.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b7817e3a9 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b7817e3a9 - wgsl_to_wgpu[f172588ae37ccc70]::test::shader_stage_collection::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5d2b781472ef - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::test::shader_stage_collection::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b7818369c - wgsl_to_wgpu[f172588ae37ccc70]::test::shader_stage_collection
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5d2b7817c967 - wgsl_to_wgpu[f172588ae37ccc70]::test::shader_stage_collection::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1147:33
[INFO] [stdout]   25:     0x5d2b7813e9c6 - <wgsl_to_wgpu[f172588ae37ccc70]::test::shader_stage_collection::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - 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:1074
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-pub mod bind_groups {
[INFO] [stdout]     2       │-    #[derive(Debug)]
[INFO] [stdout]     3       │-    pub struct BindGroup0(wgpu::BindGroup);
[INFO] [stdout]     4       │-    #[derive(Debug)]
[INFO] [stdout]     5       │-    pub struct BindGroupLayout0<'a> {
[INFO] [stdout]     6       │-        pub uniforms: wgpu::BufferBinding<'a>,
[INFO] [stdout]     7       │-    }
[INFO] [stdout]     8       │-    const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = wgpu::BindGroupLayoutDescriptor {
[INFO] [stdout]     9       │-        label: Some("LayoutDescriptor0"),
[INFO] [stdout]    10       │-        entries: &[wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    11       │-            binding: 0,
[INFO] [stdout]    12       │-            visibility: wgpu::ShaderStages::FRAGMENT,
[INFO] [stdout]    13       │-            ty: wgpu::BindingType::Buffer {
[INFO] [stdout]    14       │-                ty: wgpu::BufferBindingType::Uniform,
[INFO] [stdout]    15       │-                has_dynamic_offset: false,
[INFO] [stdout]    16       │-                min_binding_size: None,
[INFO] [stdout]    17       │-            },
[INFO] [stdout]    18       │-            count: None,
[INFO] [stdout]    19       │-        }],
[INFO] [stdout]    20       │-    };
[INFO] [stdout]    21       │-    impl BindGroup0 {
[INFO] [stdout]    22       │-        pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout {
[INFO] [stdout]    23       │-            device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0)
[INFO] [stdout]    24       │-        }
[INFO] [stdout]    25       │-        pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self {
[INFO] [stdout]    26       │-            let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0);
[INFO] [stdout]    27       │-            let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor {
[INFO] [stdout]    28       │-                layout: &bind_group_layout,
[INFO] [stdout]    29       │-                entries: &[wgpu::BindGroupEntry {
[INFO] [stdout]    30       │-                    binding: 0,
[INFO] [stdout]    31       │-                    resource: wgpu::BindingResource::Buffer(bindings.uniforms),
[INFO] [stdout]    32       │-                }],
[INFO] [stdout]    33       │-                label: Some("BindGroup0"),
[INFO] [stdout]    34       │-            });
[INFO] [stdout]    35       │-            Self(bind_group)
[INFO] [stdout]    36       │-        }
[INFO] [stdout]    37       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    38       │-            pass.set_bind_group(0, &self.0, &[]);
[INFO] [stdout]    39       │-        }
[INFO] [stdout]    40       │-    }
[INFO] [stdout]    41       │-    #[derive(Debug, Copy, Clone)]
[INFO] [stdout]    42       │-    pub struct BindGroups<'a> {
[INFO] [stdout]    43       │-        pub bind_group0: &'a BindGroup0,
[INFO] [stdout]    44       │-    }
[INFO] [stdout]    45       │-    impl BindGroups<'_> {
[INFO] [stdout]    46       │-        pub fn set<P: SetBindGroup>(&self, pass: &mut P) {
[INFO] [stdout]    47       │-            self.bind_group0.set(pass);
[INFO] [stdout]    48       │-        }
[INFO] [stdout]    49       │-    }
[INFO] [stdout]    50       │-    pub trait SetBindGroup {
[INFO] [stdout]    51       │-        fn set_bind_group(
[INFO] [stdout]    52       │-            &mut self,
[INFO] [stdout]    53       │-            index: u32,
[INFO] [stdout]    54       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    55       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    56       │-        );
[INFO] [stdout]    57       │-    }
[INFO] [stdout]    58       │-    impl SetBindGroup for wgpu::ComputePass<'_> {
[INFO] [stdout]    59       │-        fn set_bind_group(
[INFO] [stdout]    60       │-            &mut self,
[INFO] [stdout]    61       │-            index: u32,
[INFO] [stdout]    62       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    63       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    64       │-        ) {
[INFO] [stdout]    65       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    66       │-        }
[INFO] [stdout]    67       │-    }
[INFO] [stdout]    68       │-    impl SetBindGroup for wgpu::RenderPass<'_> {
[INFO] [stdout]    69       │-        fn set_bind_group(
[INFO] [stdout]    70       │-            &mut self,
[INFO] [stdout]    71       │-            index: u32,
[INFO] [stdout]    72       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    73       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    74       │-        ) {
[INFO] [stdout]    75       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    76       │-        }
[INFO] [stdout]    77       │-    }
[INFO] [stdout]    78       │-    impl SetBindGroup for wgpu::RenderBundleEncoder<'_> {
[INFO] [stdout]    79       │-        fn set_bind_group(
[INFO] [stdout]    80       │-            &mut self,
[INFO] [stdout]    81       │-            index: u32,
[INFO] [stdout]    82       │-            bind_group: &wgpu::BindGroup,
[INFO] [stdout]    83       │-            offsets: &[wgpu::DynamicOffset],
[INFO] [stdout]    84       │-        ) {
[INFO] [stdout]    85       │-            self.set_bind_group(index, bind_group, offsets);
[INFO] [stdout]    86       │-        }
[INFO] [stdout]    87       │-    }
[INFO] [stdout]    88       │-}
[INFO] [stdout]    89       │-pub fn set_bind_groups<P: bind_groups::SetBindGroup>(
[INFO] [stdout]    90       │-    pass: &mut P,
[INFO] [stdout]    91       │-    bind_group0: &bind_groups::BindGroup0,
[INFO] [stdout]    92       │-) {
[INFO] [stdout]    93       │-    bind_group0.set(pass);
[INFO] [stdout]    94       │-}
[INFO] [stdout]    95       │-pub const ENTRY_VERT: &str = "vert";
[INFO] [stdout]    96       │-pub const ENTRY_FRAG: &str = "frag";
[INFO] [stdout]    97       │-#[derive(Debug)]
[INFO] [stdout]    98       │-pub struct VertexEntry<const N: usize> {
[INFO] [stdout]    99       │-    pub entry_point: &'static str,
[INFO] [stdout]   100       │-    pub buffers: [wgpu::VertexBufferLayout<'static>; N],
[INFO] [stdout]   101       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   102       │-}
[INFO] [stdout]   103       │-pub fn vertex_state<'a, const N: usize>(
[INFO] [stdout]   104       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]   105       │-    entry: &'a VertexEntry<N>,
[INFO] [stdout]   106       │-) -> wgpu::VertexState<'a> {
[INFO] [stdout]   107       │-    wgpu::VertexState {
[INFO] [stdout]   108       │-        module,
[INFO] [stdout]   109       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]   110       │-        buffers: &entry.buffers,
[INFO] [stdout]   111       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   112       │-            constants: &entry.constants,
[INFO] [stdout]   113       │-            ..Default::default()
[INFO] [stdout]   114       │-        },
[INFO] [stdout]   115       │-    }
[INFO] [stdout]   116       │-}
[INFO] [stdout]   117       │-pub fn vert_entry(vertex_input: wgpu::VertexStepMode) -> VertexEntry<1> {
[INFO] [stdout]   118       │-    VertexEntry {
[INFO] [stdout]   119       │-        entry_point: ENTRY_VERT,
[INFO] [stdout]   120       │-        buffers: [VertexInput::vertex_buffer_layout(vertex_input)],
[INFO] [stdout]   121       │-        constants: Default::default(),
[INFO] [stdout]   122       │-    }
[INFO] [stdout]   123       │-}
[INFO] [stdout]   124       │-#[derive(Debug)]
[INFO] [stdout]   125       │-pub struct FragmentEntry<const N: usize> {
[INFO] [stdout]   126       │-    pub entry_point: &'static str,
[INFO] [stdout]   127       │-    pub targets: [Option<wgpu::ColorTargetState>; N],
[INFO] [stdout]   128       │-    pub constants: Vec<(&'static str, f64)>,
[INFO] [stdout]   129       │-}
[INFO] [stdout]   130       │-pub fn fragment_state<'a, const N: usize>(
[INFO] [stdout]   131       │-    module: &'a wgpu::ShaderModule,
[INFO] [stdout]   132       │-    entry: &'a FragmentEntry<N>,
[INFO] [stdout]   133       │-) -> wgpu::FragmentState<'a> {
[INFO] [stdout]   134       │-    wgpu::FragmentState {
[INFO] [stdout]   135       │-        module,
[INFO] [stdout]   136       │-        entry_point: Some(entry.entry_point),
[INFO] [stdout]   137       │-        targets: &entry.targets,
[INFO] [stdout]   138       │-        compilation_options: wgpu::PipelineCompilationOptions {
[INFO] [stdout]   139       │-            constants: &entry.constants,
[INFO] [stdout]   140       │-            ..Default::default()
[INFO] [stdout]   141       │-        },
[INFO] [stdout]   142       │-    }
[INFO] [stdout]   143       │-}
[INFO] [stdout]   144       │-pub fn frag_entry(targets: [Option<wgpu::ColorTargetState>; 1]) -> FragmentEntry<1> {
[INFO] [stdout]   145       │-    FragmentEntry {
[INFO] [stdout]   146       │-        entry_point: ENTRY_FRAG,
[INFO] [stdout]   147       │-        targets,
[INFO] [stdout]   148       │-        constants: Default::default(),
[INFO] [stdout]   149       │-    }
[INFO] [stdout]   150       │-}
[INFO] [stdout]   151       │-pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ;
[INFO] [stdout]   152       │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule {
[INFO] [stdout]   153       │-    let source = std::borrow::Cow::Borrowed(SOURCE);
[INFO] [stdout]   154       │-    device.create_shader_module(wgpu::ShaderModuleDescriptor {
[INFO] [stdout]   155       │-        label: None,
[INFO] [stdout]   156       │-        source: wgpu::ShaderSource::Wgsl(source),
[INFO] [stdout]   157       │-    })
[INFO] [stdout]   158       │-}
[INFO] [stdout]   159       │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout {
[INFO] [stdout]   160       │-    device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor {
[INFO] [stdout]   161       │-        label: None,
[INFO] [stdout]   162       │-        bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)],
[INFO] [stdout]   163       │-        immediate_size: 0,
[INFO] [stdout]   164       │-    })
[INFO] [stdout]   165       │-}
[INFO] [stdout]   166       │-#[repr(C)]
[INFO] [stdout]   167       │-#[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   168       │-pub struct Root {
[INFO] [stdout]   169       │-    pub c: [f32; 4],
[INFO] [stdout]   170       │-}
[INFO] [stdout]   171       │-pub mod shared {
[INFO] [stdout]   172       │-    #[repr(C)]
[INFO] [stdout]   173       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   174       │-    pub struct Shared {
[INFO] [stdout]   175       │-        pub d: [f32; 4],
[INFO] [stdout]   176       │-    }
[INFO] [stdout]   177       │-    pub const TEST: f32 = 1f32;
[INFO] [stdout]   178       │-    #[repr(C)]
[INFO] [stdout]   179       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   180       │-    pub struct VertexInput {
[INFO] [stdout]   181       │-        pub position: [f32; 3],
[INFO] [stdout]   182       │-    }
[INFO] [stdout]   183       │-    impl VertexInput {
[INFO] [stdout]   184       │-        pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 1] = [wgpu::VertexAttribute {
[INFO] [stdout]   185       │-            format: wgpu::VertexFormat::Float32x3,
[INFO] [stdout]   186       │-            offset: std::mem::offset_of!(VertexInput, position) as u64,
[INFO] [stdout]   187       │-            shader_location: 0,
[INFO] [stdout]   188       │-        }];
[INFO] [stdout]   189       │-        pub const fn vertex_buffer_layout(
[INFO] [stdout]   190       │-            step_mode: wgpu::VertexStepMode,
[INFO] [stdout]   191       │-        ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]   192       │-            wgpu::VertexBufferLayout {
[INFO] [stdout]   193       │-                array_stride: std::mem::size_of::<VertexInput>() as u64,
[INFO] [stdout]   194       │-                step_mode,
[INFO] [stdout]   195       │-                attributes: &VertexInput::VERTEX_ATTRIBUTES,
[INFO] [stdout]   196       │-            }
[INFO] [stdout]   197       │-        }
[INFO] [stdout]   198       │-    }
[INFO] [stdout]   199       │-}
[INFO] [stdout]   200       │-pub mod uniforms {
[INFO] [stdout]   201       │-    #[repr(C)]
[INFO] [stdout]   202       │-    #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   203       │-    pub struct Uniforms {
[INFO] [stdout]   204       │-        pub a: [f32; 4],
[INFO] [stdout]   205       │-        pub b: nested::Nested,
[INFO] [stdout]   206       │-    }
[INFO] [stdout]   207       │-    pub mod nested {
[INFO] [stdout]   208       │-        #[repr(C)]
[INFO] [stdout]   209       │-        #[derive(Debug, Copy, Clone, PartialEq)]
[INFO] [stdout]   210       │-        pub struct Nested {
[INFO] [stdout]   211       │-            pub a: [f32; 4],
[INFO] [stdout]   212       │-            pub b: super::super::Root,
[INFO] [stdout]   213       │-            pub c: super::super::shared::Shared,
[INFO] [stdout]   214       │-        }
[INFO] [stdout]   215       │-    }
[INFO] [stdout]   216       │-}
[INFO] [stdout]           1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub uniforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . uniforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; } pub const ENTRY_VERT : & str = "vert" ; pub const ENTRY_FRAG : & str = "frag" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn vert_entry (vertex_input : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_VERT , buffers : [VertexInput :: vertex_buffer_layout (vertex_input)] , constants : Default :: default () } } # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn frag_entry (targets : [Option < wgpu :: ColorTargetState > ; 1] ,) -> FragmentEntry < 1 > { FragmentEntry { entry_point : ENTRY_FRAG , targets , constants : Default :: default () } } pub const SOURCE : & str = "struct uniforms_Uniforms {\n    a: vec4<f32>,\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n    b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n    a: vec4<f32>,\n    b: Root,\n    c: shared_Shared\n}\n\nstruct Root {\n    c: vec4<f32>\n}\n\nstruct shared_Shared {\n    d: vec4<f32>\n}\n\nstruct shared_VertexInput {\n    @location(0) position: vec3<f32>\n}\n\nstruct shared_VertexOutput {\n    @builtin(position) clip_position: vec4<f32>,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar<uniform> bindings_uniforms: uniforms_Uniforms;\n\n@vertex\nfn vert(in: shared_VertexInput) -> shared_VertexOutput {\n    var out: shared_VertexOutput;\n    out.clip_position = vec4(in.position, shared_TEST);\n    return out;\n}\n\n@fragment\nfn frag(in: shared_VertexOutput) -> @location(0) vec4<f32> {\n    return bindings_uniforms.b.a * vec4(0.0);\n}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , immediate_size : 0 , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Root { pub c : [f32 ; 4] } pub mod shared { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Shared { pub d : [f32 ; 4] } pub const TEST : f32 = 1f32 ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct VertexInput { pub position : [f32 ; 3] } impl VertexInput { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 1] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x3 , offset : std :: mem :: offset_of ! (VertexInput , position) as u64 , shader_location : 0 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput > () as u64 , step_mode , attributes : & VertexInput :: VERTEX_ATTRIBUTES } } } } pub mod uniforms { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Uniforms { pub a : [f32 ; 4] , pub b : nested :: Nested } pub mod nested { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Nested { pub a : [f32 ; 4] , pub b : super :: super :: Root , pub c : super :: super :: shared :: Shared } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::single_root_module' (3249) panicked at src/lib.rs:1074:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/single_root_module.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b7817da49 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b7817da49 - wgsl_to_wgpu[f172588ae37ccc70]::test::single_root_module::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:709:17
[INFO] [stdout]   22:     0x5d2b781471af - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::test::single_root_module::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b78183127 - wgsl_to_wgpu[f172588ae37ccc70]::test::single_root_module
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:708:22
[INFO] [stdout]   24:     0x5d2b7817c8c7 - wgsl_to_wgpu[f172588ae37ccc70]::test::single_root_module::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:1063:28
[INFO] [stdout]   25:     0x5d2b7813e946 - <wgsl_to_wgpu[f172588ae37ccc70]::test::single_root_module::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::write_vertex_module_single_input_float32 stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_vertex_module_single_input_float32.snap
[INFO] [stdout] Snapshot: write_vertex_module_single_input_float32
[INFO] [stdout] Source: src/lib.rs:922
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-impl VertexInput0 {
[INFO] [stdout]     2       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 4] = [
[INFO] [stdout]     3       │-        wgpu::VertexAttribute {
[INFO] [stdout]     4       │-            format: wgpu::VertexFormat::Float32,
[INFO] [stdout]     5       │-            offset: std::mem::offset_of!(VertexInput0, a) as u64,
[INFO] [stdout]     6       │-            shader_location: 0,
[INFO] [stdout]     7       │-        },
[INFO] [stdout]     8       │-        wgpu::VertexAttribute {
[INFO] [stdout]     9       │-            format: wgpu::VertexFormat::Float32x2,
[INFO] [stdout]    10       │-            offset: std::mem::offset_of!(VertexInput0, b) as u64,
[INFO] [stdout]    11       │-            shader_location: 1,
[INFO] [stdout]    12       │-        },
[INFO] [stdout]    13       │-        wgpu::VertexAttribute {
[INFO] [stdout]    14       │-            format: wgpu::VertexFormat::Float32x3,
[INFO] [stdout]    15       │-            offset: std::mem::offset_of!(VertexInput0, c) as u64,
[INFO] [stdout]    16       │-            shader_location: 2,
[INFO] [stdout]    17       │-        },
[INFO] [stdout]    18       │-        wgpu::VertexAttribute {
[INFO] [stdout]    19       │-            format: wgpu::VertexFormat::Float32x4,
[INFO] [stdout]    20       │-            offset: std::mem::offset_of!(VertexInput0, d) as u64,
[INFO] [stdout]    21       │-            shader_location: 3,
[INFO] [stdout]    22       │-        },
[INFO] [stdout]    23       │-    ];
[INFO] [stdout]    24       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]    25       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]    26       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    27       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]    28       │-            array_stride: std::mem::size_of::<VertexInput0>() as u64,
[INFO] [stdout]    29       │-            step_mode,
[INFO] [stdout]    30       │-            attributes: &VertexInput0::VERTEX_ATTRIBUTES,
[INFO] [stdout]    31       │-        }
[INFO] [stdout]    32       │-    }
[INFO] [stdout]    33       │-}
[INFO] [stdout]           1 │+impl VertexInput0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 4] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32 , offset : std :: mem :: offset_of ! (VertexInput0 , a) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x2 , offset : std :: mem :: offset_of ! (VertexInput0 , b) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x3 , offset : std :: mem :: offset_of ! (VertexInput0 , c) as u64 , shader_location : 2 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (VertexInput0 , d) as u64 , shader_location : 3 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput0 > () as u64 , step_mode , attributes : & VertexInput0 :: VERTEX_ATTRIBUTES } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::write_vertex_module_single_input_float32' (3977) panicked at src/lib.rs:922:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_vertex_module_single_input_float32.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b78181dd4 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b78181dd4 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float32::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5d2b78147ae4 - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float32::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b78185fb6 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float32
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5d2b7817cc67 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float32::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:906:50
[INFO] [stdout]   25:     0x5d2b7813edc6 - <wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float32::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::write_vertex_module_single_input_float16 stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_vertex_module_single_input_float16.snap
[INFO] [stdout] Snapshot: write_vertex_module_single_input_float16
[INFO] [stdout] Source: src/lib.rs:963
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-impl VertexInput0 {
[INFO] [stdout]     2       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 3] = [
[INFO] [stdout]     3       │-        wgpu::VertexAttribute {
[INFO] [stdout]     4       │-            format: wgpu::VertexFormat::Float16,
[INFO] [stdout]     5       │-            offset: std::mem::offset_of!(VertexInput0, a) as u64,
[INFO] [stdout]     6       │-            shader_location: 0,
[INFO] [stdout]     7       │-        },
[INFO] [stdout]     8       │-        wgpu::VertexAttribute {
[INFO] [stdout]     9       │-            format: wgpu::VertexFormat::Float16x2,
[INFO] [stdout]    10       │-            offset: std::mem::offset_of!(VertexInput0, b) as u64,
[INFO] [stdout]    11       │-            shader_location: 1,
[INFO] [stdout]    12       │-        },
[INFO] [stdout]    13       │-        wgpu::VertexAttribute {
[INFO] [stdout]    14       │-            format: wgpu::VertexFormat::Float16x4,
[INFO] [stdout]    15       │-            offset: std::mem::offset_of!(VertexInput0, c) as u64,
[INFO] [stdout]    16       │-            shader_location: 2,
[INFO] [stdout]    17       │-        },
[INFO] [stdout]    18       │-    ];
[INFO] [stdout]    19       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]    20       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]    21       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    22       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]    23       │-            array_stride: std::mem::size_of::<VertexInput0>() as u64,
[INFO] [stdout]    24       │-            step_mode,
[INFO] [stdout]    25       │-            attributes: &VertexInput0::VERTEX_ATTRIBUTES,
[INFO] [stdout]    26       │-        }
[INFO] [stdout]    27       │-    }
[INFO] [stdout]    28       │-}
[INFO] [stdout]           1 │+impl VertexInput0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 3] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float16 , offset : std :: mem :: offset_of ! (VertexInput0 , a) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float16x2 , offset : std :: mem :: offset_of ! (VertexInput0 , b) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float16x4 , offset : std :: mem :: offset_of ! (VertexInput0 , c) as u64 , shader_location : 2 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput0 > () as u64 , step_mode , attributes : & VertexInput0 :: VERTEX_ATTRIBUTES } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::write_vertex_module_single_input_float16' (3855) panicked at src/lib.rs:963:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_vertex_module_single_input_float16.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b781818a4 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b781818a4 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float16::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5d2b78147a24 - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float16::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b78185ce6 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float16
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5d2b7817cc37 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float16::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:946:50
[INFO] [stdout]   25:     0x5d2b7813ed86 - <wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float16::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::write_vertex_module_single_input_float64 stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_vertex_module_single_input_float64.snap
[INFO] [stdout] Snapshot: write_vertex_module_single_input_float64
[INFO] [stdout] Source: src/lib.rs:942
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-impl VertexInput0 {
[INFO] [stdout]     2       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 4] = [
[INFO] [stdout]     3       │-        wgpu::VertexAttribute {
[INFO] [stdout]     4       │-            format: wgpu::VertexFormat::Float64,
[INFO] [stdout]     5       │-            offset: std::mem::offset_of!(VertexInput0, a) as u64,
[INFO] [stdout]     6       │-            shader_location: 0,
[INFO] [stdout]     7       │-        },
[INFO] [stdout]     8       │-        wgpu::VertexAttribute {
[INFO] [stdout]     9       │-            format: wgpu::VertexFormat::Float64x2,
[INFO] [stdout]    10       │-            offset: std::mem::offset_of!(VertexInput0, b) as u64,
[INFO] [stdout]    11       │-            shader_location: 1,
[INFO] [stdout]    12       │-        },
[INFO] [stdout]    13       │-        wgpu::VertexAttribute {
[INFO] [stdout]    14       │-            format: wgpu::VertexFormat::Float64x3,
[INFO] [stdout]    15       │-            offset: std::mem::offset_of!(VertexInput0, c) as u64,
[INFO] [stdout]    16       │-            shader_location: 2,
[INFO] [stdout]    17       │-        },
[INFO] [stdout]    18       │-        wgpu::VertexAttribute {
[INFO] [stdout]    19       │-            format: wgpu::VertexFormat::Float64x4,
[INFO] [stdout]    20       │-            offset: std::mem::offset_of!(VertexInput0, d) as u64,
[INFO] [stdout]    21       │-            shader_location: 3,
[INFO] [stdout]    22       │-        },
[INFO] [stdout]    23       │-    ];
[INFO] [stdout]    24       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]    25       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]    26       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    27       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]    28       │-            array_stride: std::mem::size_of::<VertexInput0>() as u64,
[INFO] [stdout]    29       │-            step_mode,
[INFO] [stdout]    30       │-            attributes: &VertexInput0::VERTEX_ATTRIBUTES,
[INFO] [stdout]    31       │-        }
[INFO] [stdout]    32       │-    }
[INFO] [stdout]    33       │-}
[INFO] [stdout]           1 │+impl VertexInput0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 4] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float64 , offset : std :: mem :: offset_of ! (VertexInput0 , a) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float64x2 , offset : std :: mem :: offset_of ! (VertexInput0 , b) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float64x3 , offset : std :: mem :: offset_of ! (VertexInput0 , c) as u64 , shader_location : 2 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float64x4 , offset : std :: mem :: offset_of ! (VertexInput0 , d) as u64 , shader_location : 3 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput0 > () as u64 , step_mode , attributes : & VertexInput0 :: VERTEX_ATTRIBUTES } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::write_vertex_module_single_input_float64' (4211) panicked at src/lib.rs:942:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_vertex_module_single_input_float64.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b78182304 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b78182304 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float64::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5d2b78147ba4 - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float64::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b78186286 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float64
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5d2b7817cc97 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float64::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:926:50
[INFO] [stdout]   25:     0x5d2b7813ee06 - <wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_float64::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::write_vertex_module_single_input_sint32 stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_vertex_module_single_input_sint32.snap
[INFO] [stdout] Snapshot: write_vertex_module_single_input_sint32
[INFO] [stdout] Source: src/lib.rs:984
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-impl VertexInput0 {
[INFO] [stdout]     2       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 4] = [
[INFO] [stdout]     3       │-        wgpu::VertexAttribute {
[INFO] [stdout]     4       │-            format: wgpu::VertexFormat::Sint32,
[INFO] [stdout]     5       │-            offset: std::mem::offset_of!(VertexInput0, a) as u64,
[INFO] [stdout]     6       │-            shader_location: 0,
[INFO] [stdout]     7       │-        },
[INFO] [stdout]     8       │-        wgpu::VertexAttribute {
[INFO] [stdout]     9       │-            format: wgpu::VertexFormat::Sint32x2,
[INFO] [stdout]    10       │-            offset: std::mem::offset_of!(VertexInput0, b) as u64,
[INFO] [stdout]    11       │-            shader_location: 1,
[INFO] [stdout]    12       │-        },
[INFO] [stdout]    13       │-        wgpu::VertexAttribute {
[INFO] [stdout]    14       │-            format: wgpu::VertexFormat::Sint32x3,
[INFO] [stdout]    15       │-            offset: std::mem::offset_of!(VertexInput0, c) as u64,
[INFO] [stdout]    16       │-            shader_location: 2,
[INFO] [stdout]    17       │-        },
[INFO] [stdout]    18       │-        wgpu::VertexAttribute {
[INFO] [stdout]    19       │-            format: wgpu::VertexFormat::Sint32x4,
[INFO] [stdout]    20       │-            offset: std::mem::offset_of!(VertexInput0, d) as u64,
[INFO] [stdout]    21       │-            shader_location: 3,
[INFO] [stdout]    22       │-        },
[INFO] [stdout]    23       │-    ];
[INFO] [stdout]    24       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]    25       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]    26       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    27       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]    28       │-            array_stride: std::mem::size_of::<VertexInput0>() as u64,
[INFO] [stdout]    29       │-            step_mode,
[INFO] [stdout]    30       │-            attributes: &VertexInput0::VERTEX_ATTRIBUTES,
[INFO] [stdout]    31       │-        }
[INFO] [stdout]    32       │-    }
[INFO] [stdout]    33       │-}
[INFO] [stdout]           1 │+impl VertexInput0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 4] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Sint32 , offset : std :: mem :: offset_of ! (VertexInput0 , a) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Sint32x2 , offset : std :: mem :: offset_of ! (VertexInput0 , b) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Sint32x3 , offset : std :: mem :: offset_of ! (VertexInput0 , c) as u64 , shader_location : 2 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Sint32x4 , offset : std :: mem :: offset_of ! (VertexInput0 , d) as u64 , shader_location : 3 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput0 > () as u64 , step_mode , attributes : & VertexInput0 :: VERTEX_ATTRIBUTES } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::write_vertex_module_single_input_sint32' (4341) panicked at src/lib.rs:984:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_vertex_module_single_input_sint32.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b78180e44 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b78180e44 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_sint32::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5d2b781478a4 - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_sint32::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b78185746 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_sint32
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5d2b7817cbd7 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_sint32::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:967:49
[INFO] [stdout]   25:     0x5d2b7813ed06 - <wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_sint32::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test::write_vertex_module_single_input_uint32 stdout ----
[INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[INFO] [stdout] Snapshot file: src/snapshots/write_vertex_module_single_input_uint32.snap
[INFO] [stdout] Snapshot: write_vertex_module_single_input_uint32
[INFO] [stdout] Source: src/lib.rs:1004
[INFO] [stdout] ────────────────────────────────────────────────────────────────────────────────
[INFO] [stdout] -old snapshot
[INFO] [stdout] +new results
[INFO] [stdout] ────────────┬───────────────────────────────────────────────────────────────────
[INFO] [stdout]     1       │-impl VertexInput0 {
[INFO] [stdout]     2       │-    pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 4] = [
[INFO] [stdout]     3       │-        wgpu::VertexAttribute {
[INFO] [stdout]     4       │-            format: wgpu::VertexFormat::Uint32,
[INFO] [stdout]     5       │-            offset: std::mem::offset_of!(VertexInput0, a) as u64,
[INFO] [stdout]     6       │-            shader_location: 0,
[INFO] [stdout]     7       │-        },
[INFO] [stdout]     8       │-        wgpu::VertexAttribute {
[INFO] [stdout]     9       │-            format: wgpu::VertexFormat::Uint32x2,
[INFO] [stdout]    10       │-            offset: std::mem::offset_of!(VertexInput0, b) as u64,
[INFO] [stdout]    11       │-            shader_location: 1,
[INFO] [stdout]    12       │-        },
[INFO] [stdout]    13       │-        wgpu::VertexAttribute {
[INFO] [stdout]    14       │-            format: wgpu::VertexFormat::Uint32x3,
[INFO] [stdout]    15       │-            offset: std::mem::offset_of!(VertexInput0, c) as u64,
[INFO] [stdout]    16       │-            shader_location: 2,
[INFO] [stdout]    17       │-        },
[INFO] [stdout]    18       │-        wgpu::VertexAttribute {
[INFO] [stdout]    19       │-            format: wgpu::VertexFormat::Uint32x4,
[INFO] [stdout]    20       │-            offset: std::mem::offset_of!(VertexInput0, d) as u64,
[INFO] [stdout]    21       │-            shader_location: 3,
[INFO] [stdout]    22       │-        },
[INFO] [stdout]    23       │-    ];
[INFO] [stdout]    24       │-    pub const fn vertex_buffer_layout(
[INFO] [stdout]    25       │-        step_mode: wgpu::VertexStepMode,
[INFO] [stdout]    26       │-    ) -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    27       │-        wgpu::VertexBufferLayout {
[INFO] [stdout]    28       │-            array_stride: std::mem::size_of::<VertexInput0>() as u64,
[INFO] [stdout]    29       │-            step_mode,
[INFO] [stdout]    30       │-            attributes: &VertexInput0::VERTEX_ATTRIBUTES,
[INFO] [stdout]    31       │-        }
[INFO] [stdout]    32       │-    }
[INFO] [stdout]    33       │-}
[INFO] [stdout]           1 │+impl VertexInput0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 4] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Uint32 , offset : std :: mem :: offset_of ! (VertexInput0 , a) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Uint32x2 , offset : std :: mem :: offset_of ! (VertexInput0 , b) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Uint32x3 , offset : std :: mem :: offset_of ! (VertexInput0 , c) as u64 , shader_location : 2 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Uint32x4 , offset : std :: mem :: offset_of ! (VertexInput0 , d) as u64 , shader_location : 3 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput0 > () as u64 , step_mode , attributes : & VertexInput0 :: VERTEX_ATTRIBUTES } } }
[INFO] [stdout] ────────────┴───────────────────────────────────────────────────────────────────
[INFO] [stdout] 
[INFO] [stdout] thread 'test::write_vertex_module_single_input_uint32' (4551) panicked at src/lib.rs:1004:9:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_vertex_module_single_input_uint32.snap.new")
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d2b78911d82 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d2b78911d82 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d2b78911d82 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d2b7892b03a - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d2b7892b03a - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x5d2b789170f6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5d2b789170f6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5d2b788ed72f - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d2b788ed72f - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d2b78908b69 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d2b7833f89e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5d2b7833f89e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5d2b78908dd2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5d2b78908dd2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5d2b788ed7e8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5d2b788e26c9 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d2b788ee6dd - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5d2b7892b7fc - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d2b7892b572 - core[27de1724e4349be2]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5d2b78181374 - <core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::error::Error>>>::unwrap
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5d2b78181374 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_uint32::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:696:17
[INFO] [stdout]   22:     0x5d2b78147964 - <insta[fb18e7878c56ced7]::settings::Settings>::bind::<wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_uint32::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.45.0/src/settings.rs:536:9
[INFO] [stdout]   23:     0x5d2b78185a16 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_uint32
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:695:22
[INFO] [stdout]   24:     0x5d2b7817cc07 - wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_uint32::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:988:49
[INFO] [stdout]   25:     0x5d2b7813ed46 - <wgsl_to_wgpu[f172588ae37ccc70]::test::write_vertex_module_single_input_uint32::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5d2b78333c4b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5d2b78333c4b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x5d2b783404aa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5d2b783404aa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5d2b783404aa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x5d2b783404aa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x5d2b7833ba54 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x5d2b7833ba54 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x5d2b78342fa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5d2b78342fa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5d2b78342fa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5d2b78342fa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x5d2b78342fa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5d2b78910d4f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x5d2b78910d4f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7968a4843aa4 - <unknown>
[INFO] [stdout]   47:     0x7968a48d0a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     bindgroup::tests::bind_groups_module_compute
[INFO] [stdout]     bindgroup::tests::bind_groups_module_fragment
[INFO] [stdout]     bindgroup::tests::bind_groups_module_vertex
[INFO] [stdout]     bindgroup::tests::bind_groups_module_vertex_fragment
[INFO] [stdout]     structs::tests::write_all_structs_bytemuck_f64_vec
[INFO] [stdout]     structs::tests::write_all_structs_bytemuck_input_layout_validation
[INFO] [stdout]     structs::tests::write_all_structs_bytemuck_skip_input_layout_validation
[INFO] [stdout]     structs::tests::write_all_structs_encase_bytemuck
[INFO] [stdout]     structs::tests::write_all_structs_serde_encase_bytemuck
[INFO] [stdout]     structs::tests::write_all_structs_skip_stage_outputs
[INFO] [stdout]     structs::tests::write_runtime_sized_array
[INFO] [stdout]     test::add_duplicate_module_different_paths
[INFO] [stdout]     test::add_single_root_module
[INFO] [stdout]     test::create_shader_modules_source_rustfmt
[INFO] [stdout]     test::mesh_shader
[INFO] [stdout]     test::shader_stage_collection
[INFO] [stdout]     test::single_root_module
[INFO] [stdout]     test::vertex_entries
[INFO] [stdout]     test::write_vertex_module_single_input_float16
[INFO] [stdout]     test::write_vertex_module_single_input_float32
[INFO] [stdout]     test::write_vertex_module_single_input_float64
[INFO] [stdout]     test::write_vertex_module_single_input_sint32
[INFO] [stdout]     test::write_vertex_module_single_input_uint32
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 24 passed; 23 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.55s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "016d97c4b70fd8ac59c990315c4a3b6a82fd7ab47ccd9010c2c717eaef347875", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "016d97c4b70fd8ac59c990315c4a3b6a82fd7ab47ccd9010c2c717eaef347875", kill_on_drop: false }`
[INFO] [stdout] 016d97c4b70fd8ac59c990315c4a3b6a82fd7ab47ccd9010c2c717eaef347875
